0

ライブラリでこのシンボルを見つける必要があることを知っています。サービスを表示するためにavahiベースのテストコードをコンパイルしようとしています。しかし、undefined reference toavahi_alternative_service_name'`を取得しています。これが含まれているライブラリがわかりません。UBUNTU12.04を実行しています。いくつかのパッケージをインストールしようとしましたが、成功しませんでした。

次のパッケージをインストールしています

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

指図
gcc -fpermissive testAvahi.c -o testAvahi

4

2 に答える 2

2

実際にはライブラリを見つける必要があり、次にそれらをリンカーに渡す必要があったので、次のコマンドは私のために機能しました

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

于 2012-10-04T10:39:34.247 に答える
1

C ++ライブラリを配置する共通フォルダがある場合は、nmコマンドを使用して関数の検索を確認できます。

cd /usr/lib

nm -AC * | grep avahi_alternative_service_name

nmユーティリティはbinutils(sudo apt-get install binutils)で利用できます

于 2012-10-03T17:18:12.963 に答える