Domanda

In sapere ho bisogno di individuare questo simbolo in libreria .. Sto cercando di compilare il codice di test basato su AVAHI per visualizzare i servizi.Ma sto ricevendo undefined reference toavahi_alternative_service_name''`. .. Non so quale libreria lo contenga, sto eseguendo Ubuntu 12.04.Ho provato ad installare diversi pacchetti ma nessun successo .. qualsiasi idea Grazie ..

Ho i seguenti pacchetti installati

dpkg --get-selections | grep avahi
avahi-autoipd                   install
avahi-daemon                    install
avahi-utils                     install
libavahi-cil-dev                install
libavahi-client-dev             install
libavahi-client3                install
libavahi-client3:i386           install
libavahi-common-data            install
libavahi-common-data:i386       install
libavahi-common-dev             install
libavahi-common3                install
libavahi-common3:i386           install
libavahi-core7                  install
libavahi-glib-dev               install
libavahi-glib1                  install
libavahi-gobject0               install
libavahi-ui-dev                 install
libavahi-ui-gtk3-0              install
libavahi-ui0                    install
libavahi1.0-cil                 install
.

Comando
gcc -fpermissive testAvahi.c -o testAvahi

È stato utile?

Soluzione

effettivamente necessario per localizzare le biblioteche e poi necessario per passarli al linker, quindi il comando follwing ha funzionato per me

gcc -fpermissive testAvahi.c -o testAvahi -L/usr/lib/x86_64-linux-gnu/ -lavahi-client -lavahi-common

Altri suggerimenti

Se si dispone di una cartella comune in cui si posiziona le tue librerie C ++ è possibile verificare la ricerca della funzione utilizzando il comando NM qualcosa come

cd /usr/lib
.

nm -AC * | grep avahi_alternative_service_name

L'utilità NM è disponibile in Binutils (sudo apt-get install binutils)

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top