Opened 5 years ago

Closed 2 months ago

#52362 closed defect (fixed)

mpd @0.19.19: uses avahi but declares no dependency

Reported by: ryandesign (Ryan Schmidt) Owned by: macports-tickets@…
Priority: Normal Milestone:
Component: ports Version:
Keywords: Cc: kurthindenburg (Kurt Hindenburg)
Port: mpd

Description

ccache /usr/bin/clang++ -std=gnu++0x -D_THREAD_SAFE -pthread -pipe -Os -stdlib=libc++ -arch x86_64 -arch i386 -fvisibility=hidden -fno-threadsafe-statics -fmerge-all-constants -fno-exceptions -fno-rtti -ffast-math -ftree-vectorize -ffunction-sections -fdata-sections -Wall -Wextra -Wmissing-declarations -Wshadow -Wpointer-arith -Wcast-qual -Wwrite-strings -Wsign-compare  -L/opt/local/lib -Wl,-headerpad_max_install_names -arch x86_64 -arch i386 -o src/mpd src/Main.o libmpd.a  libdb_plugins.a   libstorage.a   libplaylist_plugins.a -L/opt/local/lib -lexpat -L/opt/local/lib -lFLAC -L/opt/local/lib -lyajl -L/opt/local/lib -lavahi-common -lavahi-client -ldbus-1 -lwrap -L/opt/local/lib -lsqlite3 libdecoder.a -L/opt/local/lib -lvorbisfile -lvorbis -logg  -L/opt/local/lib -lFLAC -L/opt/local/lib -lsndfile -L/opt/local/lib -laudiofile    -L/opt/local/lib -lfluidsynth  -L/opt/local/lib -lwavpack -L/opt/local/lib -lmad -lm  -L/opt/local/lib -lopus -logg    -lfaad libmodplug_decoder_plugin.a -L/opt/local/lib -lmodplug libinput.a -L/opt/local/lib -lcurl     -L/opt/local/lib -lmms -lm -lglib-2.0 -lintl  libarchive.a -lbz2   libtag.a -L/opt/local/lib -lid3tag liboutput_plugins.a -lwrap -L/opt/local/lib -lao    -framework OpenAL -L/opt/local/lib -lpulse -L/opt/local/lib -lshout  libfilter_plugins.a libpcm.a -L/opt/local/lib -lsoxr -L/opt/local/lib -lsamplerate libencoder_plugins.a -lmp3lame -L/opt/local/lib -ltwolame -L/opt/local/lib -lFLAC -L/opt/local/lib -lopus -logg  -L/opt/local/lib -lvorbisenc -lvorbis -logg libmixer_plugins.a  -L/opt/local/lib -lpulse libconf.a libevent.a libthread.a libsystem.a libicu.a -L/opt/local/lib -licui18n -licuuc -licudata libutil.a libfs.a -L/opt/local/lib -lz  -L/opt/local/lib -lgthread-2.0 -lglib-2.0 -lintl
clang: warning: argument unused during compilation: '-pthread'
ld: warning: ignoring file /opt/local/lib/libavahi-common.dylib, file was built for x86_64 which is not the architecture being linked (i386): /opt/local/lib/libavahi-common.dylib
ld: warning: ignoring file /opt/local/lib/libavahi-client.dylib, file was built for x86_64 which is not the architecture being linked (i386): /opt/local/lib/libavahi-client.dylib
Undefined symbols for architecture i386:
  "_avahi_alternative_service_name", referenced from:
      AvahiGroupCallback(AvahiEntryGroup*, AvahiEntryGroupState, void*) in libmpd.a(libmpd_a-ZeroconfAvahi.o)
  "_avahi_client_errno", referenced from:
      MyAvahiClientCallback(AvahiClient*, AvahiClientState, void*) in libmpd.a(libmpd_a-ZeroconfAvahi.o)
      AvahiRegisterService(AvahiClient*) in libmpd.a(libmpd_a-ZeroconfAvahi.o)
      AvahiGroupCallback(AvahiEntryGroup*, AvahiEntryGroupState, void*) in libmpd.a(libmpd_a-ZeroconfAvahi.o)
  "_avahi_client_free", referenced from:
      MyAvahiClientCallback(AvahiClient*, AvahiClientState, void*) in libmpd.a(libmpd_a-ZeroconfAvahi.o)
      AvahiDeinit() in libmpd.a(libmpd_a-ZeroconfAvahi.o)
  "_avahi_client_new", referenced from:
      AvahiInit(EventLoop&, char const*) in libmpd.a(libmpd_a-ZeroconfAvahi.o)
      MyAvahiClientCallback(AvahiClient*, AvahiClientState, void*) in libmpd.a(libmpd_a-ZeroconfAvahi.o)
  "_avahi_entry_group_add_service", referenced from:
      AvahiRegisterService(AvahiClient*) in libmpd.a(libmpd_a-ZeroconfAvahi.o)
  "_avahi_entry_group_commit", referenced from:
      AvahiRegisterService(AvahiClient*) in libmpd.a(libmpd_a-ZeroconfAvahi.o)
  "_avahi_entry_group_free", referenced from:
      MyAvahiClientCallback(AvahiClient*, AvahiClientState, void*) in libmpd.a(libmpd_a-ZeroconfAvahi.o)
      AvahiDeinit() in libmpd.a(libmpd_a-ZeroconfAvahi.o)
  "_avahi_entry_group_get_client", referenced from:
      AvahiGroupCallback(AvahiEntryGroup*, AvahiEntryGroupState, void*) in libmpd.a(libmpd_a-ZeroconfAvahi.o)
  "_avahi_entry_group_new", referenced from:
      AvahiRegisterService(AvahiClient*) in libmpd.a(libmpd_a-ZeroconfAvahi.o)
  "_avahi_entry_group_reset", referenced from:
      MyAvahiClientCallback(AvahiClient*, AvahiClientState, void*) in libmpd.a(libmpd_a-ZeroconfAvahi.o)
  "_avahi_free", referenced from:
      AvahiDeinit() in libmpd.a(libmpd_a-ZeroconfAvahi.o)
      AvahiGroupCallback(AvahiEntryGroup*, AvahiEntryGroupState, void*) in libmpd.a(libmpd_a-ZeroconfAvahi.o)
  "_avahi_is_valid_service_name", referenced from:
      AvahiInit(EventLoop&, char const*) in libmpd.a(libmpd_a-ZeroconfAvahi.o)
  "_avahi_strdup", referenced from:
      AvahiInit(EventLoop&, char const*) in libmpd.a(libmpd_a-ZeroconfAvahi.o)
  "_avahi_strerror", referenced from:
      AvahiInit(EventLoop&, char const*) in libmpd.a(libmpd_a-ZeroconfAvahi.o)
      MyAvahiClientCallback(AvahiClient*, AvahiClientState, void*) in libmpd.a(libmpd_a-ZeroconfAvahi.o)
      AvahiRegisterService(AvahiClient*) in libmpd.a(libmpd_a-ZeroconfAvahi.o)
      AvahiGroupCallback(AvahiEntryGroup*, AvahiEntryGroupState, void*) in libmpd.a(libmpd_a-ZeroconfAvahi.o)
ld: symbol(s) not found for architecture i386
clang: error: linker command failed with exit code 1 (use -v to see invocation)

(I happen to be building mpd +universal and avahi is installed non-universal.)

mpd either needs a dependency on avahi, or needs to be told not to use avahi.

Change History (3)

comment:1 Changed 5 years ago by kurthindenburg (Kurt Hindenburg)

Cc: kurthindenburg added
Version: 2.3.4

I can't reproduce this on 0.20.5 - can you update and reply if you still have this issue?

comment:2 Changed 4 years ago by ryandesign (Ryan Schmidt)

The issue remains.

comment:3 Changed 2 months ago by catap (Kirill A. Korinsky)

Resolution: fixed
Status: newclosed

In ca59a3c5a7d795f7c9c1deca024886620a87597c/macports-ports (master):

mpd: update to 0.23.4

Fixes: #52362

Note: See TracTickets for help on using tickets.