Я смог успешно создать avahi в соответствии с инструкциями, но следующий шаг в быстром запуске "ant test-browse" приводит к ошибке поиска символа, и я смущен тем, как продолжить устранение этой проблемы. Я нашел следующую публикацию, которая показала аналогичную проблему, но не смогла добиться какого-либо прогресса (кажется, нить никогда не публично разрешалась). Вот результат ошибки, который я вижу:
myUser@ubuntu:~/Downloads/avahi4j-0.1$ ant test-browse
Buildfile: /home/myUser/Downloads/avahi4j-0.1/build.xml
init:
compile:
[javac] /home/myUser/Downloads/avahi4j-0.1/build.xml:109: warning: 'includeantruntime' was not set, defaulting to build.sysclasspath=last; set to false for repeatable builds
jar:
jnilib:
[exec] make: Entering directory '/home/myUser/Downloads/avahi4j-0.1/src'
[exec] make: Nothing to be done for 'all'.
[exec] make: Leaving directory '/home/myUser/Downloads/avahi4j-0.1/src'
test-browse:
[java] Avahi4J v0.1-0
[java] /usr/lib/jvm/java-7-oracle/jre/bin/java: symbol lookup error: /home/myUser/Downloads/avahi4j-0.1/libavahi4j.so: undefined symbol: avahi_malloc
BUILD FAILED
/home/myUser/Downloads/avahi4j-0.1/build.xml:185: Java returned: 127
Total time: 0 seconds
Наконец нашел обходной путь: export LD_PRELOAD=/usr/lib/x86_64-linux-gnu/libavahi-common.so: /usr/lib/x86_64-linux-gnu/libavahi-client.so
Если кто-то может пролить свет на то, почему требуется ручная хакерская атака, мне бы понравились предложения о том, почему стандартный процесс сборки не работал для меня (это на Ubuntu).