Pagina 1 di 1

aiuto programma nmm per tesi [RISOLTO]

Inviato: mer 14 lug 2010, 17:30
da red
Ciao a tutti,
per la tesi devo lavorare con un software che si chiama NMM:
http://www.networkmultimedia.org/
scaricato qui:
http://www.motama.com/nmmdownload.html
dove ho preso l'ultima versione, la 2.2.0.

Seguendo la loro guida di installazione (che altro non è che la solita procedura "configure make make install") però mi fallisce la compilazione.

L'unica cosa che specifico è il configure, perché tra le altre cose mi vorrei fare il pacchetto txz, dato anche che il programma in questione non ha dipendenze.
Quindi:

Codice: Seleziona tutto

CFLAGS="-O2 -march=i486 -mcpu=i686" ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var --program-suffix=red --disable-debug --disable-static
Poi il make con questo esito:

Codice: Seleziona tutto

Making all in png
make[4]: Entering directory `/tmp/pkg/nmm-2.2.0/nmm/utils/png'
make[5]: Entering directory `/tmp/pkg/nmm-2.2.0/nmm/utils/png'
/bin/sh ../../../libtool --tag=CXX --tag=CXX  --tag=asm --mode=compile g++ -DHAVE_CONFIG_H -I. -I../../..      -O2 -Wall -W -Wpointer-arith -Wwrite-strings -fno-check-new -fexceptions -MT PNGUtils.lo -MD -MP -MF .deps/PNGUtils.Tpo -c -o PNGUtils.lo PNGUtils.cpp
libtool: ignoring unknown tag asm
mkdir .libs
 g++ -DHAVE_CONFIG_H -I. -I../../.. -O2 -Wall -W -Wpointer-arith -Wwrite-strings -fno-check-new -fexceptions -MT PNGUtils.lo -MD -MP -MF .deps/PNGUtils.Tpo -c PNGUtils.cpp  -fPIC -DPIC -o .libs/PNGUtils.o
PNGUtils.cpp: In member function 'void NMM::PNGUtils::writePNG(const std::string&, unsigned char*, unsigned int, unsigned int)':
PNGUtils.cpp:107: warning: 'png_struct_def::jmpbuf' is deprecated (declared at /usr/include/png.h:1093)
PNGUtils.cpp:107: warning: 'png_struct_def::jmpbuf' is deprecated (declared at /usr/include/png.h:1093)
PNGUtils.cpp:109: error: 'png_write_destroy' was not declared in this scope
PNGUtils.cpp:161: warning: 'png_info_struct::palette' is deprecated (declared at /usr/include/png.h:642)
PNGUtils.cpp:161: warning: 'png_info_struct::palette' is deprecated (declared at /usr/include/png.h:642)
PNGUtils.cpp:161: warning: 'png_info_struct::palette' is deprecated (declared at /usr/include/png.h:642)
PNGUtils.cpp:161: warning: 'png_info_struct::palette' is deprecated (declared at /usr/include/png.h:642)
make[5]: *** [PNGUtils.lo] Error 1
make[5]: Leaving directory `/tmp/pkg/nmm-2.2.0/nmm/utils/png'
make[4]: *** [all-recursive] Error 1
make[4]: Leaving directory `/tmp/pkg/nmm-2.2.0/nmm/utils/png'
make[3]: *** [all-recursive] Error 1
make[3]: Leaving directory `/tmp/pkg/nmm-2.2.0/nmm/utils'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/tmp/pkg/nmm-2.2.0/nmm'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/tmp/pkg/nmm-2.2.0'
make: *** [all] Error 2
Questa è ovviamente l'ultima parte dell'output del make... dovesse essere utile potrei postare tutto.

Ecco, se qualcuno ha qualche suggerimento da darmi in merito, gliene sarei davvero grato!

Re: aiuto programma nmm per tesi

Inviato: mer 14 lug 2010, 18:00
da Blallo
su che slackware sei?

Re: aiuto programma nmm per tesi

Inviato: mer 14 lug 2010, 18:04
da red
robert_plant_89 ha scritto:su che slackware sei?
13.1

Re: aiuto programma nmm per tesi

Inviato: mer 14 lug 2010, 18:46
da Blallo
se cerchi in un mirror, sezione patches, è stata aggiornata libpng
ad una prima occhiata l'errore è dovuto proprio a loro
aggiorna e poi riprova

Re: aiuto programma nmm per tesi

Inviato: gio 15 lug 2010, 10:56
da red
robert_plant_89 ha scritto:se cerchi in un mirror, sezione patches, è stata aggiornata libpng
ad una prima occhiata l'errore è dovuto proprio a loro
aggiorna e poi riprova
Avevo anche io questo sospetto e quindi avevo in realtà provato un downgrade.
Ora ora provato anche l'upgrade come da te suggerito, ma purtroppo il problema resta :(.

Edit: finalmente mi hanno accreditato sul loro forum ufficiale... provo a chiedere là direttamente e speriamo di uscirne!

Re: aiuto programma nmm per tesi

Inviato: ven 23 lug 2010, 11:12
da red
Eccomi ancora sul problema.
Dal forum ufficiale mi hanno risposto così:
It seems you are missing the png-devel package or are using another, incompatible version of it.

Please refer to http://www.motama.com/nmmdocs_installation-linux.html and http://www.networkmultimedia.org/Downlo ... /index.htm

If png support is not required for your application, you could also disable it using configure, or - as a crude work-around - run "make -k" to continue the build process.
Ora in Slackware non esiste il pack "png-devel", ma soltanto "libpng".
Non sono riuscito a capire bene se quest'ultimo ingloba anche png-devel... infatti ho trovato un changelog così:

Codice: Seleziona tutto

patches/packages/libpng-1.4.3-i486-1_slack13.1.txz: Upgraded.
       Upgraded to libpng-1.2.44 and libpng-1.4.3.
       This fixes out-of-bounds memory write bugs that could lead to crashes
       or the execution of arbitrary code, and a memory leak bug which could
       lead to application crashes.
       For more information, see:
       http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2010-1205
       http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2010-2249
       (* Security fix *)
dove 1.4.3 è la versione che tutti abbiamo installato di libpng, mentre il "libpng-1.2.44" ho il sospetto che si riferisca proprio a png-devel. Questo perché i pacchetti rpm che si chiamano png-devel hanno proprio quella versione.

Ora proverò a compilare escludendo il supporto per png come suggerito, tuttavia mi par strano mi dia errore, se le librerie sono installate!

Suggerimenti?

Re: aiuto programma nmm per tesi

Inviato: ven 23 lug 2010, 12:43
da gohanz
Red le libpng 1.4 della Slackware 13.1 non sono retrocompatibili.

Prova a modificare il codice in /utils/png
dalla riga 106 alla riga 110 in questa maniera
http://www.libpng.org/pub/png/src/libpn ... ummary.txt

Codice: Seleziona tutto

    /* set error handling */
    if ( setjmp(png_jmpbuf(png_ptr)) ) {
#ifndef WIN32
		
#endif

Re: aiuto programma nmm per tesi

Inviato: ven 23 lug 2010, 13:27
da red
Grazie gohanz... proverò assolutamente la tua soluzione, anche se non nutro molta fiducia perché anche con diverse prove di downgrade non ho ottenuto grossi risultati... ma chissà!

Intanto diabilitando il supporto a png e anche ad un'altra cosa che si chiama XDisplayNode sono riuscito a compilare... uff! Già qualcosa :).

Re: aiuto programma nmm per tesi

Inviato: ven 23 lug 2010, 14:08
da gohanz
Ho testato la modifica sulla 13.1 e funziona. Devi usare le libpng della 13.1. Io ho testato con le libpng-1.4.3-i486-1_slack1.
Insomma con la piu' recente bugfix delle libpng per la 13.1.

Codice: Seleziona tutto

libtool: ignoring unknown tag asm
g++ -O2 -Wall -W -Wpointer-arith -Wwrite-strings -fno-check-new -fexceptions -o .libs/cronjobclient_add cronjobclient_add.o  ../../nmm/utils/xml/.libs/libnmmxml.so ../../nmm/utils/time/.libs/libnmmtime.so ../../nmm/utils/net/.libs/libnmmnet.so ../../nmm/comm/netserialize/.libs/libnmmnetserialize.so ../../nmm/multimedia/.libs/libnmmmultimedia.so /root/nmm/nmm-2.2.0/nmm/multimedia/interfaces/.libs/libnmmmultimediainterfaces.so /root/nmm/nmm-2.2.0/nmm/comm/format/.libs/libnmmformat.so ../../nmm/multimedia/interfaces/.libs/libnmmmultimediainterfaces.so ../../nmm/multimedia/sync/.libs/libnmmsync.so ../../nmm/multimedia/sync/interfaces/.libs/libnmmsyncinterfaces.so ../../nmm/services/cpumanager/.libs/libnmmcpumanager.so ../../nmm/utils/cpuinfo/.libs/libnmmcpuinfo.so ../../nmm/services/registry/.libs/libnmmregistry.so /root/nmm/nmm-2.2.0/nmm/services/cpumanager/.libs/libnmmcpumanager.so /root/nmm/nmm-2.2.0/nmm/utils/cpuinfo/.libs/libnmmcpuinfo.so /root/nmm/nmm-2.2.0/nmm/utils/thread/.libs/libnmmthread.so /usr/lib/libltdl.so ../../nmm/services/cronjob/.libs/libnmmCronjob.so ../../nmm/utils/.libs/libnmmutils.so ../../nmm/comm/.libs/libnmmcomm.so ../../nmm/comm/serialize/.libs/libnmmserialize.so ../../nmm/comm/messaging/.libs/libnmmmessaging.so ../../nmm/utils/thread/.libs/libnmmthread.so -lpthread ../../nmm/comm/format/.libs/libnmmformat.so ../../nmm/comm/netstrategy/.libs/libnmmnetstrategy.so /root/nmm/nmm-2.2.0/nmm/comm/messaging/.libs/libnmmmessaging.so /root/nmm/nmm-2.2.0/nmm/comm/serialize/.libs/libnmmserialize.so /root/nmm/nmm-2.2.0/nmm/utils/xml/.libs/libnmmxml.so /usr/lib/libxml2.so -ldl -lz /root/nmm/nmm-2.2.0/nmm/utils/time/.libs/libnmmtime.so /root/nmm/nmm-2.2.0/nmm/comm/.libs/libnmmcomm.so /root/nmm/nmm-2.2.0/nmm/comm/netserialize/.libs/libnmmnetserialize.so /root/nmm/nmm-2.2.0/nmm/utils/net/.libs/libnmmnet.so /usr/lib/libstdc++.so  -Wl,--rpath -Wl,/usr/local/lib/nmm
creating cronjobclient_add
make[4]: Leaving directory `/root/nmm/nmm-2.2.0/apps/cronjob'
make[3]: Leaving directory `/root/nmm/nmm-2.2.0/apps/cronjob'
Making all in scriptplay
make[3]: Entering directory `/root/nmm/nmm-2.2.0/apps/scriptplay'
make[4]: Entering directory `/root/nmm/nmm-2.2.0/apps/scriptplay'
make[4]: Nothing to be done for `all-am'.
make[4]: Leaving directory `/root/nmm/nmm-2.2.0/apps/scriptplay'
make[3]: Leaving directory `/root/nmm/nmm-2.2.0/apps/scriptplay'
make[3]: Entering directory `/root/nmm/nmm-2.2.0/apps'
make[3]: Nothing to be done for `all-am'.
make[3]: Leaving directory `/root/nmm/nmm-2.2.0/apps'
make[2]: Leaving directory `/root/nmm/nmm-2.2.0/apps'
Making all in resources
make[2]: Entering directory `/root/nmm/nmm-2.2.0/resources'
Making all in dvb
make[3]: Entering directory `/root/nmm/nmm-2.2.0/resources/dvb'
Making all in initial_tuning_files
make[4]: Entering directory `/root/nmm/nmm-2.2.0/resources/dvb/initial_tuning_files'
Making all in DVB-S2
make[5]: Entering directory `/root/nmm/nmm-2.2.0/resources/dvb/initial_tuning_files/DVB-S2'
make[6]: Entering directory `/root/nmm/nmm-2.2.0/resources/dvb/initial_tuning_files/DVB-S2'
make[6]: Nothing to be done for `all-am'.
make[6]: Leaving directory `/root/nmm/nmm-2.2.0/resources/dvb/initial_tuning_files/DVB-S2'
make[5]: Leaving directory `/root/nmm/nmm-2.2.0/resources/dvb/initial_tuning_files/DVB-S2'
make[5]: Entering directory `/root/nmm/nmm-2.2.0/resources/dvb/initial_tuning_files'
make[5]: Nothing to be done for `all-am'.
make[5]: Leaving directory `/root/nmm/nmm-2.2.0/resources/dvb/initial_tuning_files'
make[4]: Leaving directory `/root/nmm/nmm-2.2.0/resources/dvb/initial_tuning_files'
make[4]: Entering directory `/root/nmm/nmm-2.2.0/resources/dvb'
make[4]: Nothing to be done for `all-am'.
make[4]: Leaving directory `/root/nmm/nmm-2.2.0/resources/dvb'
make[3]: Leaving directory `/root/nmm/nmm-2.2.0/resources/dvb'
Making all in ivtv
make[3]: Entering directory `/root/nmm/nmm-2.2.0/resources/ivtv'
make[3]: Nothing to be done for `all'.
make[3]: Leaving directory `/root/nmm/nmm-2.2.0/resources/ivtv'
Making all in font
make[3]: Entering directory `/root/nmm/nmm-2.2.0/resources/font'
make[3]: Nothing to be done for `all'.
make[3]: Leaving directory `/root/nmm/nmm-2.2.0/resources/font'
make[3]: Entering directory `/root/nmm/nmm-2.2.0/resources'
make[3]: Nothing to be done for `all-am'.
make[3]: Leaving directory `/root/nmm/nmm-2.2.0/resources'
make[2]: Leaving directory `/root/nmm/nmm-2.2.0/resources'
Making all in docs
make[2]: Entering directory `/root/nmm/nmm-2.2.0/docs'
make[3]: Entering directory `/root/nmm/nmm-2.2.0/docs'
make[3]: Nothing to be done for `all-am'.
make[3]: Leaving directory `/root/nmm/nmm-2.2.0/docs'
make[2]: Leaving directory `/root/nmm/nmm-2.2.0/docs'
make[1]: Leaving directory `/root/nmm/nmm-2.2.0'
root@argo:~/nmm/nmm-2.2.0# 
 

Re: aiuto programma nmm per tesi

Inviato: ven 23 lug 2010, 15:52
da red
Wow! Grazie... hai anche anticipato la mia prova :).
Ottimo allora, intanto ne ho approfittato per creare il mio primo pacchetto per Slackware con questo programma.
(Superfelice come dopo la scrittura del primo codice che compilava... eh eh!)

Si è installato e mi pare la maggior parte delle cose abbiamo funzionato.

Approfitto della tua esperienza solo per altre 2 cose (una un po' OT):
1. hai dovuto anche tu mettere l'opzione "--disable-XDisplayNode"? (Se no, forse è legata al supporto png);
2. ho seguito l'how-to qui sul wiki per la creazione del pacchetto. Sono arrivato ad avere in una directory, "install" con dentro solo lo "slac-desc" e "usr" dove sta il programma dopo il "make" e "make install". Lì ho lanciato "makepkg" dando come destinazione un'altra directory (sennò non va). A questo punto in quest'ultima directory ho trovato il mio txz. Installato sembra andare, ma in fase di installazione non è comparsa la descrizione che avevo scritto nello slac-desc. Perché?

Grazie di nuovo :).

Re: aiuto programma nmm per tesi

Inviato: ven 23 lug 2010, 21:36
da gohanz
Meno male che hai risolto! :thumbright: Io ho usato un semplice ./configure senza opzioni. Ho visto che richiede tante librerie multimediali, l'unica che non mi prende e' la dipendenza verso ffmpeg. Comunque non ho indigato piu' di tanto, ho cercato solo di portare a termine la compilazione.
Per il problema dello slack-desc, controlla il contenuto dello slack-desc contenuto in install. Insomma controlla che il l'intestazione del nome sia giusto. Per eseperienza controlla anche che il nome del pacchetto contega solo 3 trattini il segno - per intenderci. Quindi nomepacchetto-versione-build-arch.txz.

Re: aiuto programma nmm per tesi

Inviato: sab 24 lug 2010, 10:28
da red
Ok, ricevuto... grazie di tutto a tutti ;)...
penso di poter chiudere qui e considerare risolto!

Re: aiuto programma nmm per tesi [RISOLTO]

Inviato: sab 24 lug 2010, 14:53
da red
Anche se ho già messo il tag "risolto", aggiungo solo che con la modifica proposta da gohanz tutto compila perfettamente senza bisogno di disabilitare nulla.