Frage

Ich weiß, dass ich dieses Symbol in der Bibliothek finden muss.Ich versuche, Avahi-basierten Testcode zu kompilieren, um Dienste anzuzeigen.Aber ich bekomme undefined reference toavahi_alternative_service_name''..Ich weiß nicht, welche Bibliothek das enthält, ich verwende UBUNTU 12.04.Ich habe versucht, mehrere Pakete zu installieren, aber ohne Erfolg.Jede Idee danke ..

Ich habe folgende Pakete installiert

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

Befehl
gcc -fpermissive testAvahi.c -o testAvahi

War es hilfreich?

Lösung

Eigentlich mussten Bibliotheken gefunden und dann an den Linker übergeben werden. Der folgende Befehl hat also für mich funktioniert

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

Andere Tipps

Wenn Sie einen gemeinsamen Ordner haben, in dem Sie Ihre C ++ - Bibliotheken platzieren

cd /usr/lib

nm -AC * | grep avahi_alternative_service_name

Das nm-Dienstprogramm ist in binutils verfügbar (sudo apt-get install binutils).

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top