Newsgroup: it.comp.os.linux.iniziare
Titolo: Pacchetti ubuntu 8.04

Salve,devo sostituire un pacchetto software su Ubuntu 8.04 che si chiama 
libusb-0.1-4 con libusb-0.1.8. .
Non posso forzare la versione del pacchetto perchï¿œ in Synaptic ï¿œ l'unico.
Volevo disinstallare libusb-0.1-4 ma ho notato che mi toglie una decina 
di programmi che mi servono.
Come posso fare ?
Posso installare la versione nuova compilandola e poi togliere quella 
vecchia o possono lavorare assieme ?
Riporto (un pezzo) di quanto mi scrive compilando li programma 
libptp21.1.10.
checking for libusb-config... no
./configure: line 22453: test: : integer expression expected
configure: error:
*** You need the 0 line of libusb which is at least 0.1.8.
*** Higher versions might not be compatible! Download and istall
*** libusb version 0.X.X from 
http://sourceforge.net/projects/libusb/
 or
*** use --disable-ptpcam option to build without ptpcam tool.
Mi confermate che vuole la versione 0.1.8 e non la 0.1-4 che ho giï¿œ ?
La mia esperienza fino ad ora si limitava ad installare programmi giï¿œ 
compilati ....
Grazie a tutti.

 Non posso forzare la versione del pacchetto perchè in Synaptic è l'unico.
]zac[
Sarebbe meglio che utilizzassi un repository per la tua distribuzione che
contenga quel pacchetto.
Altrimenti puoi installarlo manualmente utilizzando apt (o programma
simile), se ci sono dipendenze dovrai risolverle trovando manualmente i
pacchetti che ti servono.
I pacchetti li puoi trovare utilizzando google o uno dei vari siti che
cercano i pacchetti o andando sul sito della tua distribuzione e cercando
la sezione download.

 contenga quel pacchetto.
magari ma non so come sapere che dentro i repository c'è quello giusto..
Forse però c'è qualche altra soluzione , nel senso che non sono sicuro 
del mio operato.
Posto qui sotto quello che mi scrive nel terminale quando vado a 
iniziare la compilazione della libreria libptp2-1.1.10 .
pippo@pippo-desktop:~$ cd /home/pippo/Canon/libptp2-1.1.10
pippo@pippo-desktop:~/Canon/libptp2-1.1.10$ ./configure
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking build system type... i686-pc-linux-gnu
checking host system type... i686-pc-linux-gnu
checking for style of include used by make... GNU
checking for gcc... gcc
checking for C compiler default output file name... a.out
checking whether the C compiler works... yes
checking whether we are cross compiling... no
checking for suffix of executables...
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ANSI C... none needed
checking dependency style of gcc... gcc3
checking for a sed that does not truncate output... /bin/sed
checking for egrep... grep -E
checking for ld used by gcc... /usr/bin/ld
checking if the linker (/usr/bin/ld) is GNU ld... yes
checking for /usr/bin/ld option to reload object files... -r
checking for BSD-compatible nm... /usr/bin/nm -B
checking whether ln -s works... yes
checking how to recognise dependent libraries... pass_all
checking how to run the C preprocessor... gcc -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking dlfcn.h usability... yes
checking dlfcn.h presence... yes
checking for dlfcn.h... yes
checking for g++... g++
checking whether we are using the GNU C++ compiler... yes
checking whether g++ accepts -g... yes
checking dependency style of g++... gcc3
checking how to run the C++ preprocessor... g++ -E
checking for g77... no
checking for f77... no
checking for xlf... no
checking for frt... no
checking for pgf77... no
checking for fort77... no
checking for fl32... no
checking for af77... no
checking for f90... no
checking for xlf90... no
checking for pgf90... no
checking for epcf90... no
checking for f95... no
checking for fort... no
checking for xlf95... no
checking for ifc... no
checking for efc... no
checking for pgf95... no
checking for lf95... no
checking for gfortran... no
checking whether we are using the GNU Fortran 77 compiler... no
checking whether  accepts -g... no
checking the maximum length of command line arguments... 32768
checking command to parse /usr/bin/nm -B output from gcc object... ok
checking for objdir... .libs
checking for ar... ar
checking for ranlib... ranlib
checking for strip... strip
checking if gcc static flag  works... yes
checking if gcc supports -fno-rtti -fno-exceptions... no
checking for gcc option to produce PIC... -fPIC
checking if gcc PIC flag -fPIC works... yes
checking if gcc supports -c -o file.o... yes
checking whether the gcc linker (/usr/bin/ld) supports shared 
libraries... yes
checking whether -lc should be explicitly linked in... no
checking dynamic linker characteristics... GNU/Linux ld.so
checking how to hardcode library paths into programs... immediate
checking whether stripping libraries is possible... yes
checking if libtool supports shared libraries... yes
checking whether to build shared libraries... yes
checking whether to build static libraries... yes
configure: creating libtool
appending configuration tag "CXX" to libtool
checking for ld used by g++... /usr/bin/ld
checking if the linker (/usr/bin/ld) is GNU ld... yes
checking whether the g++ linker (/usr/bin/ld) supports shared 
libraries... yes
checking for g++ option to produce PIC... -fPIC
checking if g++ PIC flag -fPIC works... yes
checking if g++ supports -c -o file.o... yes
checking whether the g++ linker (/usr/bin/ld) supports shared 
libraries... yes
checking dynamic linker characteristics... GNU/Linux ld.so
checking how to hardcode library paths into programs... immediate
checking whether stripping libraries is possible... yes
appending configuration tag "F77" to libtool
checking for gcc... (cached) gcc
checking whether we are using the GNU C compiler... (cached) yes
checking whether gcc accepts -g... (cached) yes
checking for gcc option to accept ANSI C... (cached) none needed
checking dependency style of gcc... (cached) gcc3
checking for ANSI C header files... (cached) yes
checking libintl.h usability... yes
checking libintl.h presence... yes
checking for libintl.h... yes
checking for stdlib.h... (cached) yes
checking for string.h... (cached) yes
checking for an ANSI C-conforming const... yes
checking for inline... inline
checking whether struct tm is in sys/time.h or time.h... time.h
checking for error_at_line... yes
checking for stdlib.h... (cached) yes
checking for GNU libc compatible malloc... yes
checking whether time.h and sys/time.h may both be included... yes
checking for stdlib.h... (cached) yes
checking sys/time.h usability... yes
checking sys/time.h presence... yes
checking for sys/time.h... yes
checking for unistd.h... (cached) yes
checking for alarm... yes
checking for working mktime... yes
checking for vprintf... yes
checking for _doprnt... no
checking for memset... yes
checking for strchr... yes
checking for strdup... yes
checking for strtol... yes
checking for getopt_long... yes
checking for libusb-config... no
./configure: line 22453: test: : integer expression expected
configure: error:
*** You need the 0 line of libusb which is at least 0.1.8.
*** Higher versions might not be compatible! Download and istall
*** libusb version 0.X.X from 
http://sourceforge.net/projects/libusb/
 or
*** use --disable-ptpcam option to build without ptpcam tool.
 
pippo@pippo-desktop:~/Canon/libptp2-1.1.10$
Prima di fare altre richieste qualcuno mi può dare una dritta su quanto 
riportato sopra?
Nota :Nei repository ho trovato il nome  pacchetto libusb-0.1-4 la 
versione è 2:0.1.12-8
Grazie a tutti.

 *** use --disable-ptpcam option to build without ptpcam tool.
Nell'errore del ./configure ti dice chiaramente che la libreria libusb 
è mancante o non aggiornata alla versione richiesta per il compiler, 
richiesta sarebbe la *libusb*.
Si deve verificare (se eventualmente installata), che versione sia e 
nel caso installare quella richiesta e provare finchè ./configure non 
dà più errori.
A mio avviso è probabile che dovrai scaricare altre dipendenze, ma a 
questo pensa ./configure che ad ogni errore ti segnala al termine, 
cosa ti manca.
-- 
nn

 nel caso installare quella richiesta e provare finchè ./configure non
]zac[
Mi fai venire un dubbio, non è che è che manca semplicemente il pacchetto
XYZ-devel-xyz della libreria mancante?
P.S. Bisogna sempre tenere a mente che per compilare serve spesso anche il
pacchetto -devel-, non solo il pacchetto della libreria/programma
richiesto.

 richiesto.
Ho omesso i dev pensando che fosse una cosa risaputa, per qualsiasi 
compilazione i develop devono essere considerati per primi. ;-)
-- 
nn

noname_ wrote:

A questo c'è solo una domanda da fare al domandante in capo (....), Jack!!!!
è risaputa la cosa????
P.S. :)

 P.S. :)
Se un tar.gz o un bz2 vuoi compilar i dev devi installar (a meno che 
non siano già compresi nella distribuzione). :-)
A questo punto è risaputo, nel momento in cui al ./configure ti genera 
errori, possono mancare le dipendenze oppure mancare i moduli per 
compilare i sorgenti. 
-- 
nn

 
Ho il dubbio che la battuta non sia stata capita.
La battuta intendeva chiedere a Jack, che ha il problema di compilazione, se
conosce questa cosa (magari il suo non è un problema di versione ma solo di
una assenza del devel).
Uffa, se faccio il serio JohnnyNewbie mi riprende, se faccio lo spiritoso mi
riprende noname ... e che diamine ... un po' di rispetto per i dinosa...
ehm per quelli con qualche giorno in più di esperienza .....

 XYZ-devel-xyz della libreria mancante?
Dove o come trovo il nome del pacchetto che mi serve così verifico se mi 
manca .
Grazie.

Jack wrote:

Beh presumo (non uso Xbuntu), che il programma con cui installi i pacchetti
possa anche dire quali sono quelli installati e quelli da installare, basta
cercare libusb e vedere in che stato è il pacchetto libusb-devel-XYZ (o
simile).

 Grazie.
Prima guarderei cosa ti dice synaptic quando cerchi la libreria che ti 
interessa.
Se non c'è oppure non è quella richiesta, allora a questo punto esiste 
google e da qui al limite puoi consultare i forum della tua 
distribuzione cercando di individuare se altri hanno avuto lo stesso 
problema sperando di riuscire a risolvere.
Molto spesso grazie a questo genere di ricerca molti problemi vengono 
superati con successo.
-- 
nn

 nel caso installare quella richiesta 
Nei repositori ho trovato il pacchetto in questione:libusb-0.1-4 la 
versione è 2:0.1.12-8
Qui faccio un po di confusione.
La dicitura :
 >> *** You need the 0 line of libusb which is at least 0.1.8.
..si riferisce al nome del pacchetto (libusb-0.1-4) oppure alla versione
(2:0.1.12-8)
Posso aggiornare il pacchetto tramite compilazione (visto che non c'è 
nei repo)senza disinstallare il pacchetto vecchio da sinaptic ? 
eliminandolo in un secondo momento ?
Disinstallando il pacchetto libusb-0.1-4 mi sono accorto che mi elimina 
molti programmi e ho paura di combinare qualche guaio....
Grazie

 noname_ ha scritto:
Ho cercato ed installato il pacchetto libusb-dev che mancava.
Poi ho lanciato da terminale ./configure e non ci sono stati errori !!
Qui sotto riporto il lancio di make e poi make install .
Ci sono però qualche errore penso.
Approfitto della vostra disponibilità per chiedervi ancora un'aiuto .
Purtroppo non ho mai compilato dei programmi ma ho sempre usato sinaptic  .
Grazie
pippo@pippo-desktop:~/Canon/libusb-0.1.8$ make
make  all-recursive
make[1]: Entering directory `/home/pippo/Canon/libusb-0.1.8'
Making all in .
make[2]: Entering directory `/home/pippo/Canon/libusb-0.1.8'
if /bin/bash ./libtool --mode=compile gcc -DHAVE_CONFIG_H -I. -I. -I. 
    -MT usb.lo -MD -MP -MF ".deps/usb.Tpo" \
	  -c -o usb.lo `test -f 'usb.c' || echo './'`usb.c; \
	then mv -f ".deps/usb.Tpo" ".deps/usb.Plo"; \
	else rm -f ".deps/usb.Tpo"; exit 1; \
	fi
mkdir .libs
gcc -DHAVE_CONFIG_H -I. -I. -I. -MT usb.lo -MD -MP -MF .deps/usb.Tpo -c 
usb.c  -fPIC -DPIC -DPIC -o usb.o
mv -f usb.o .libs/usb.lo
gcc -DHAVE_CONFIG_H -I. -I. -I. -MT usb.lo -MD -MP -MF .deps/usb.Tpo -c 
usb.c -o usb.o >/dev/null 2>&1
mv -f .libs/usb.lo usb.lo
if /bin/bash ./libtool --mode=compile gcc -DHAVE_CONFIG_H -I. -I. -I. 
    -MT error.lo -MD -MP -MF ".deps/error.Tpo" \
	  -c -o error.lo `test -f 'error.c' || echo './'`error.c; \
	then mv -f ".deps/error.Tpo" ".deps/error.Plo"; \
	else rm -f ".deps/error.Tpo"; exit 1; \
	fi
rm -f .libs/error.lo
gcc -DHAVE_CONFIG_H -I. -I. -I. -MT error.lo -MD -MP -MF .deps/error.Tpo 
-c error.c  -fPIC -DPIC -DPIC -o error.o
mv -f error.o .libs/error.lo
gcc -DHAVE_CONFIG_H -I. -I. -I. -MT error.lo -MD -MP -MF .deps/error.Tpo 
-c error.c -o error.o >/dev/null 2>&1
mv -f .libs/error.lo error.lo
if /bin/bash ./libtool --mode=compile gcc -DHAVE_CONFIG_H -I. -I. -I. 
    -MT descriptors.lo -MD -MP -MF ".deps/descriptors.Tpo" \
	  -c -o descriptors.lo `test -f 'descriptors.c' || echo 
'./'`descriptors.c; \
	then mv -f ".deps/descriptors.Tpo" ".deps/descriptors.Plo"; \
	else rm -f ".deps/descriptors.Tpo"; exit 1; \
	fi
rm -f .libs/descriptors.lo
gcc -DHAVE_CONFIG_H -I. -I. -I. -MT descriptors.lo -MD -MP -MF 
.deps/descriptors.Tpo -c descriptors.c  -fPIC -DPIC -DPIC -o descriptors.o
descriptors.c: In function 'usb_get_descriptor_by_endpoint':
descriptors.c:15: warning: incompatible implicit declaration of built-in 
function 'memset'
descriptors.c: In function 'usb_get_descriptor':
descriptors.c:24: warning: incompatible implicit declaration of built-in 
function 'memset'
descriptors.c: In function 'usb_parse_endpoint':
descriptors.c:58: warning: incompatible implicit declaration of built-in 
function 'memcpy'
descriptors.c: In function 'usb_parse_interface':
descriptors.c:144: warning: incompatible implicit declaration of 
built-in function 'memcpy'
descriptors.c:221: warning: incompatible implicit declaration of 
built-in function 'memset'
descriptors.c: In function 'usb_parse_configuration':
descriptors.c:258: warning: incompatible implicit declaration of 
built-in function 'memcpy'
descriptors.c:277: warning: incompatible implicit declaration of 
built-in function 'memset'
descriptors.c: In function 'usb_fetch_and_parse_descriptors':
descriptors.c:418: warning: incompatible implicit declaration of 
built-in function 'memset'
mv -f descriptors.o .libs/descriptors.lo
gcc -DHAVE_CONFIG_H -I. -I. -I. -MT descriptors.lo -MD -MP -MF 
.deps/descriptors.Tpo -c descriptors.c -o descriptors.o >/dev/null 2>&1
mv -f .libs/descriptors.lo descriptors.lo
if /bin/bash ./libtool --mode=compile gcc -DHAVE_CONFIG_H -I. -I. -I. 
    -MT linux.lo -MD -MP -MF ".deps/linux.Tpo" \
	  -c -o linux.lo `test -f 'linux.c' || echo './'`linux.c; \
	then mv -f ".deps/linux.Tpo" ".deps/linux.Plo"; \
	else rm -f ".deps/linux.Tpo"; exit 1; \
	fi
rm -f .libs/linux.lo
gcc -DHAVE_CONFIG_H -I. -I. -I. -MT linux.lo -MD -MP -MF .deps/linux.Tpo 
-c linux.c  -fPIC -DPIC -DPIC -o linux.o
mv -f linux.o .libs/linux.lo
gcc -DHAVE_CONFIG_H -I. -I. -I. -MT linux.lo -MD -MP -MF .deps/linux.Tpo 
-c linux.c -o linux.o >/dev/null 2>&1
mv -f .libs/linux.lo linux.lo
/bin/bash ./libtool --mode=link gcc     -o 
libusb.la
 -rpath 
/usr/local/lib -version-info 8:0:4 -release 0.1 -export-dynamic  usb.lo 
error.lo descriptors.lo linux.lo
rm -fr .libs/
libusb.la
 .libs/libusb.* .libs/libusb-0.1.*
gcc -shared  usb.lo error.lo descriptors.lo linux.lo   -Wl,-soname 
-Wl,libusb-0.1.4 -o .libs/libusb-0.1.4.4.0
(cd .libs && rm -f libusb-0.1.4 && ln -s libusb-0.1.4.4.0 libusb-0.1.4)
(cd .libs && rm -f libusb && ln -s libusb-0.1.4.4.0 libusb)
ar cru .libs/libusb.a  usb.o error.o descriptors.o linux.o
ranlib .libs/libusb.a
creating 
libusb.la
(cd .libs && rm -f 
libusb.la
 && ln -s ../
libusb.la
 
libusb.la
)
make[2]: Leaving directory `/home/pippo/Canon/libusb-0.1.8'
Making all in tests
make[2]: Entering directory `/home/pippo/Canon/libusb-0.1.8/tests'
if gcc -DHAVE_CONFIG_H -I. -I. -I.. -I..    -g -O2 -g -Wall -MT 
testlibusb.o -MD -MP -MF ".deps/testlibusb.Tpo" \
	  -c -o testlibusb.o `test -f 'testlibusb.c' || echo './'`testlibusb.c; \
	then mv -f ".deps/testlibusb.Tpo" ".deps/testlibusb.Po"; \
	else rm -f ".deps/testlibusb.Tpo"; exit 1; \
	fi
/bin/bash ../libtool --mode=link gcc  -g -O2 -g -Wall   -o testlibusb 
testlibusb.o ../
libusb.la
mkdir .libs
gcc -g -O2 -g -Wall -o .libs/testlibusb testlibusb.o  ../.libs/libusb 
-Wl,--rpath -Wl,/usr/local/lib
creating testlibusb
make[2]: Leaving directory `/home/pippo/Canon/libusb-0.1.8/tests'
Making all in doc
make[2]: Entering directory `/home/pippo/Canon/libusb-0.1.8/doc'
make[2]: Nothing to be done for `all'.
make[2]: Leaving directory `/home/pippo/Canon/libusb-0.1.8/doc'
make[1]: Leaving directory `/home/pippo/Canon/libusb-0.1.8'
pippo@pippo-desktop:~/Canon/libusb-0.1.8$ make install
Making install in .
make[1]: Entering directory `/home/pippo/Canon/libusb-0.1.8'
make[2]: Entering directory `/home/pippo/Canon/libusb-0.1.8'
/bin/bash ./mkinstalldirs /usr/local/bin
  /usr/bin/install -c libusb-config /usr/local/bin/libusb-config
/usr/bin/install: impossibile creare il file normale 
`/usr/local/bin/libusb-config': Permesso negato
make[2]: *** [install-binSCRIPTS] Error 1
make[2]: Leaving directory `/home/pippo/Canon/libusb-0.1.8'
make[1]: *** [install-am] Error 2
make[1]: Leaving directory `/home/pippo/Canon/libusb-0.1.8'
make: *** [install-recursive] Error 1
pippo@pippo-desktop:~/Canon/libusb-0.1.8$

Jack wrote:

Riprova a fare in questo modo con lo stesso pacchetto:
da utente lanci il ./configure, poi dai il make (sempre da utente), 
alla fine da su o sudo lanci il make install.
L'errore che ti genera alla fine ti dice che non hai permessi 
necessari per completare l'installazione.
Quindi desumo che il problema sia nel make install che hai lanciato da 
utente invece che da su o sudo.
-- 
nn

 L'errore che ti genera alla fine ti dice che non hai permessi 
OK !! rifatto tutto il passaggio e
l'errore è sparito con Sudo ..
posto qui il risultato :
pippo@pippo-desktop:~/Canon/libusb-0.1.8$ sudo make install
[sudo] password for pippo:
Making install in .
make[1]: Entering directory `/home/pippo/Canon/libusb-0.1.8'
make[2]: Entering directory `/home/pippo/Canon/libusb-0.1.8'
/bin/bash ./mkinstalldirs /usr/local/bin
  /usr/bin/install -c libusb-config /usr/local/bin/libusb-config
/bin/bash ./mkinstalldirs /usr/local/lib
  /bin/bash ./libtool --mode=install /usr/bin/install -c  
libusb.la
/usr/local/lib/
libusb.la
/usr/bin/install -c .libs/libusb-0.1.4.4.0 /usr/local/lib/libusb-0.1.4.4.0
(cd /usr/local/lib && rm -f libusb-0.1.4 && ln -s libusb-0.1.4.4.0
libusb-0.1.4)
(cd /usr/local/lib && rm -f libusb && ln -s libusb-0.1.4.4.0 libusb)
/usr/bin/install -c .libs/libusb.lai /usr/local/lib/
libusb.la
/usr/bin/install -c .libs/libusb.a /usr/local/lib/libusb.a
ranlib /usr/local/lib/libusb.a
chmod 644 /usr/local/lib/libusb.a
PATH="$PATH:/sbin" ldconfig -n /usr/local/lib
----------------------------------------------------------------------
Libraries have been installed in:
    /usr/local/lib
If you ever happen to want to link against installed libraries
in a given directory, LIBDIR, you must either use libtool, and
specify the full pathname of the library, or use the `-LLIBDIR'
flag during linking and do at least one of the following:
    - add LIBDIR to the `LD_LIBRARY_PATH' environment variable
      during execution
    - add LIBDIR to the `LD_RUN_PATH' environment variable
      during linking
    - use the `-Wl,--rpath -Wl,LIBDIR' linker flag
    - have your system administrator add LIBDIR to `/etc/ld.so.conf'
See any operating system documentation about shared libraries for
more information, such as the ld(1) and ld.so(8) manual pages.
----------------------------------------------------------------------
/bin/bash ./mkinstalldirs /usr/local/include
  /usr/bin/install -c -m 644 usb.h /usr/local/include/usb.h
make[2]: Leaving directory `/home/pippo/Canon/libusb-0.1.8'
make[1]: Leaving directory `/home/pippo/Canon/libusb-0.1.8'
Making install in tests
make[1]: Entering directory `/home/pippo/Canon/libusb-0.1.8/tests'
make[2]: Entering directory `/home/pippo/Canon/libusb-0.1.8/tests'
make[2]: Nothing to be done for `install-exec-am'.
make[2]: Nothing to be done for `install-data-am'.
make[2]: Leaving directory `/home/pippo/Canon/libusb-0.1.8/tests'
make[1]: Leaving directory `/home/pippo/Canon/libusb-0.1.8/tests'
Making install in doc
make[1]: Entering directory `/home/pippo/Canon/libusb-0.1.8/doc'
make[2]: Entering directory `/home/pippo/Canon/libusb-0.1.8/doc'
make[2]: Nothing to be done for `install-exec-am'.
make[2]: Nothing to be done for `install-data-am'.
make[2]: Leaving directory `/home/pippo/Canon/libusb-0.1.8/doc'
make[1]: Leaving directory `/home/pippo/Canon/libusb-0.1.8/doc'
pippo@pippo-desktop:~/Canon/libusb-0.1.8$
A questo punto in /usr/local/lib mi ritrovo un file di libreria che si
chiama libusb-0.1.4.4.0  ..veramente avevo scaricato libusb-0.1.8 Boh
forse la presenza della vecchia versione (libusb-0.1.4) ha combinato 
qualcosa o forse va bene così ...
Fino a quì l'installazione dovrebbe essere terminata no ?
Domanda : a questo punto nel caso dovessi eliminare la libreria appena 
installata c'è qualche comando specifico o si può sovrascrivere con 
un'altra ?
Comunque grazie a tutti.

> Jack wrote:
Ultimo problema.Lo spero...
Nel lanciare il comando make per installare capture-1.0.4-cvs-20071123 
come da istruzioni ne esce questo:
pippo@pippo-desktop:~$ cd /home/pippo/Canon/capture-1.0.4-cvs-20071123
pippo@pippo-desktop:~/Canon/capture-1.0.4-cvs-20071123$ make
gcc -pedantic -pedantic-errors -Wall -ggdb -O0  -DHAVE_GTK 
-DHAVE_READLINE `pkg-config --cflags gtk+-2.0`  -c capture.c
gcc -pedantic -pedantic-errors -Wall -ggdb -O0  -DHAVE_GTK 
-DHAVE_READLINE `pkg-config --cflags gtk+-2.0`  -c ptp-utils.c
gcc -pedantic -pedantic-errors -Wall -ggdb -O0  -DHAVE_GTK 
-DHAVE_READLINE `pkg-config --cflags gtk+-2.0`  -c server.c
gcc -pedantic -pedantic-errors -Wall -ggdb -O0  -DHAVE_GTK 
-DHAVE_READLINE `pkg-config --cflags gtk+-2.0`  -c client.c
client.c:20:33: error: readline/readline.h: Nessun file o directory
client.c:21:32: error: readline/history.h: Nessun file o directory
client.c: In function ‘run_client’:
client.c:152: warning: implicit declaration of function ‘using_history’
client.c:159: warning: implicit declaration of function ‘readline’
client.c:159: error: assignment makes pointer from integer without a cast
client.c:166: warning: implicit declaration of function ‘add_history’
make: *** [client.o] Error 1
pippo@pippo-desktop:~/Canon/capture-1.0.4-cvs-20071123$
Su google ho trovato un'altro che chiedeva aiuto ma invano...
Nel readme c'è :
===========
* INSTALL *
===========
1) Download libptp2-1.0.1 library from 
http://sf.net/projects/libptp
and install it. Note: most Linux distributions will have a package for this.
PRIMO PUNTO ESEGUITO.
2) Optionaly comment out
       HAVE_GTK      = -DHAVE_GTK
       HAVE_READLINE = -DHAVE_READLINE
if you don't have GTK-devel or readline-devel installed.
QUESTO NON LO CAPISCO.
HO INSTALLATO LIBGTK2.0-DEV
The perl script `job' included with the distribution uses perl module
ParseDate.pm. You need to install it if you want to use the `job' script.
(For your convenience, it is included with the capture distribution - copy
it to your PERL_PATH/Time path.)
3) Type `make' to compile `capture'
A QUESTO PUNTO ESCE LA PRIMA PARTE DEL MESSAGGIO
4) Run ./example.sh, ./job or ./capture and see what happens.
5) Type `su -c "make install"' to install
Grazie

 HO INSTALLATO LIBGTK2.0-DEV
]zac[
opzionalmente commenta
        HAVE_GTK      = -DHAVE_GTK
        HAVE_READLINE = -DHAVE_READLIN
se non hai gtk-devel e readline-devel installato
P.S. mmmm ... mi sento usato come un traduttore on-line ...
Non è che ci sia molto da capire, se non hai quei pacchetti commenta le
righe nel file (sottointeso in modo che la compilazione non li usi).

 righe nel file 
ah ecco peccato che non dicano nelle istruzioni in quale file. Ce ne 
sono solo 28 nella cartella che ho scaricato ...sicuramente uno di 
questi sarà quello giusto.
Grazie

 questi sarà quello giusto.
Eheheh, strano che non lo dicano, probabilmente sarà in un file Makefile o
configure o qualcosa di simile, o sarà scritto in un alto punto della
documentazione.
P.S. Presumo che la compilazione sia andata a buon fine.

 P.S. Presumo che la compilazione sia andata a buon fine.
Mi sono perso l'ultimo passaggio ma è solo il finale ...dovevo andare 
via e è rimasto in coda .
Domani ci riprovo.
Intanto ti ringrazio .
Ciao

> P.S. Presumo che la compilazione sia andata a buon fine.
E anche questa è fatta !!
..però c'è purtroppo un'altro scoglio.
Stò compilando capture-1.0.4-cvs-20071123  e come prima cosa mancava
ncurses .Lo ho aggiunto e adesso però mi da :
pippo@pippo-desktop:~$ cd /home/pippo/Canon/capture-1.0.4-cvs-20071123
pippo@pippo-desktop:~/Canon/capture-1.0.4-cvs-20071123$ make
gcc capture.o ptp-utils.o server.o client.o properties.o commands.o
-pedantic -pedantic-errors -Wall -ggdb -O0   -DHAVE_READLINE  -lusb
-lptp2 -lreadline -lhistory -lncurses -o capture
server.o: In function `ssigterm_handler':
/home/pippo/Canon/capture-1.0.4-cvs-20071123/server.c:70: undefined
reference to `viewfinder_off'
server.o: In function `run_server':
/home/pippo/Canon/capture-1.0.4-cvs-20071123/server.c:131: undefined
reference to `gtk_main_iteration_do'
/home/pippo/Canon/capture-1.0.4-cvs-20071123/server.c:149: undefined
reference to `gtk_main_iteration_do'
collect2: ld returned 1 exit status
make: *** [capture] Error 1
pippo@pippo-desktop:~/Canon/capture-1.0.4-cvs-20071123$
Ho cercato su google  ma non ho trovato la soluzione valida .
Mi date una dritta per rimediare ...?

 make: *** [capture] Error 1
C'è qualcuno che può dare un'aiuto a risolvere questi errori ?  se di 
errori si trattano....
Mi manca solo questo e dopo potrei comandare la mia fotocamera Canon con 
Ubuntu ....ma ...

> reference to `gtk_main_iteration_do'
-cut-
Secondo me ti manca un pacchetto di librerie di sviluppo gtk.
Probabilmente gtk+2-devel
-- 
           |Save our planet!
    Ciao   |Save wildlife!
   roberto |For your E-MAIL use ONLY recycled Bytes  !!
           |roberto poggi   
rpo...@softhome.net

 
Ciao ,il pacchetto gtk+2-devel non c'è nella mia lista in synaptic ne in 
quelli installati ne da installare.
Con un nome simile ho installato
gtk2-engines
gtk2-engines-murrine
gtk2-engines-pixbuf
gtk2-engines-ubuntulooks
gtk2-ex-formfactory-peerl
Vado alla ricerca ...
grazie

 quelli installati ne da installare.
Non uso ubuntu, io punterei su libgtk2.0-dev


 
..è già installato ,questi sono i pacchetti:
libgtk2.0-0
libgtk2.0-bin
libgtk2.0-cil
libgtk2.0-common
libgtk2.0-dev
libgtk2.0-perl
ci sono anche :
libgtk1.2
libgtk1.2-common
libgtk1.2-dev
boh non me ne intendo proprio ..adesso ho capito quando consigliano di 
installare i pacchetti da synaptic o con apt..
Provo a cercare quello che mi hai suggerito nel post precedente magari 
trovo qualche repo.

> make: *** [capture] Error 1
Ho aperto il file server.c e riporto un pezzo di listato che è compreso 
nelle linee 70 131 e 149.
C'è un pezzo che è commentato ma qualche linea tra idue commenti è non 
commentata .
E' giusta questa dicitura ?
#ifdef HAVE_GTK	
	    if ( settings.viewfinder )
		  viewfinder_off(&settings);    questa è la linea 70
#endif
.....
.....
#ifdef HAVE_GTK		
		  if ( settings.gtk )
	          gtk_main_iteration_do(0);       questa è la lina 131
#endif
.....
.....
#ifdef HAVE_GTK
			if ( settings.gtk )
			gtk_main_iteration_do(0);  questa è la linea 149
#endif

 Jack ha scritto:
Ho provato a cancellare gli asterischi dalle precedenti righe .
Rifatto la procedura make però mi dava un sacco di errori.
Allora sono ritornato indietro rimettendoli e adesso rifacendo make 
sembra funzionare tutto nel senso che non più segnalazioni alle righe 70 
131 ecc.
pippo@pippo-desktop:~/Canon/capture-1.0.4-cvs-20071123$ sudo make install
[sudo] password for pippo:
install -d /bin
cp -a capture /bin
pippo@pippo-desktop:~/Canon/capture-1.0.4-cvs-20071123$
Sembra tutto installato ? Finora a questo punto non ci ero mai arrivato.

 Sembra tutto installato ? Finora a questo punto non ci ero mai arrivato.
Adesso riscarica il sorgente GIUSTO e riprova, se adesso non dà più
errore, hai sbagliato a rimettere a posto il sorgente.
Hai letto qui?
http://www.assembla.com/wiki/show/a39hIUFdCr3OJxeJe5afGb


 reference to `gtk_main_iteration_do'
]zac[
Qui è evidente che manca qualcosa di gtk, a questo punto, come faresti
cercando una frase in un documento, non ha nessun senso cercare gtk2 o
libgtk2 o altro, perché è evidente che non puoi sapere il nome esatto del
pacchetto, quindi bisogna cercare solo gtk e non solo all'inizio del nome
del pacchetto, ma anche all'interno (SOLO PER ESEMPIO, una ricerca tipo
*gtk* ).
Cosi a occhio potrebbe mancare sia la gtk-devel che la gtk2-devel (o altro
nome che la distribuzione ha deciso per il pacchetto).
P.S. Cercando gtk_main_iteration_do + ubuntu (magari + devel e/o + package)
su google non credo che sia impossibile trovare il pacchetto che contiene
la funzione gtk_main_iteration_do .

 compilazione.
OK cercherò su Google se per cancellare la compilazione e il sorgente 
basta un semplice Canc o se ci vogliono qualche altri comandi.
Ciao e grazie .

 basta un semplice Canc o se ci vogliono qualche altri comandi.
In questo caso cerca gli how-to per la compilazione e installazione dei
programmi.
Comunque, quello che hai installato o va rimosso con make uninstall
(generalmente è cosi, in alternariva si fa a mano (ma spesso conviene
lasciarli installati)), mentre la directory che contiene la compilazione
può essere cancellata (naturalmente non è più disponibile il make
uninstall) 
O puoi anche semplicemente creare una nuova directory e usarla per una nuova
compilazione.