At Tue, 21 Nov 2006 18:18:24 +0100, I wrote: > > At Tue, 21 Nov 2006 09:58:01 -0600, > r10 kindsofpeople wrote: > > > > I'm further along on my goal, but now even more confused. > > > > Benoit's comment about 'plug-ins' sparked the thought that, since my > > interest is in midi, not audio, I could try --disable-pcm. This turned out > > to be insufficient, but combined with --disable-mixer, alsa-lib now builds > > without the -ldl errors. > > > > This turned out to be a small victory, however. When I try to link my > > application with the resulting asound library, I'm back to having pthread > > and dl undefined references, and also snd_pcm_async among others. The > > application only makes 'snd_seq*' calls, but I haven't tried tracing them to > > see what they call. > > Does the patch below fix the references? In addition, the following patch may work for you. The configure checks libdl and libpthread. Together with --with-softfloat option, all three libs will be disabled. Give it a try. Takashi diff -r 1c84c4d3c803 configure.in --- a/configure.in Thu Nov 16 07:49:24 2006 +0100 +++ b/configure.in Tue Nov 21 18:44:28 2006 +0100 @@ -147,6 +147,23 @@ else else AC_MSG_RESULT(no) fi + +AC_CHECK_LIB([dl], [dlsym], [HAVE_LIBDL="yes"]) +AC_CHECK_LIB([pthread], [pthread_join], [HAVE_LIBPTHREAD="yes"]) + +ALSA_DEPLIBS="" +if test "$softfloat" != "yes"; then + ALSA_DEPLIBS="-lm" +fi +if test "$HAVE_LIBDL" = "yes"; then + ALSA_DEPLIBS="$ALSA_DEPLIBS -ldl" + AC_DEFINE([HAVE_LIBDL], 1, [Have libdl]) +fi +if test "$HAVE_LIBPTHREAD" = "yes"; then + ALSA_DEPLIBS="$ALSA_DEPLIBS -lpthread" + AC_DEFINE([HAVE_LIBPTHREAD], 1, [Have libpthread]) +fi +AC_SUBST(ALSA_DEPLIBS) dnl Check for architecture AC_MSG_CHECKING(for architecture) diff -r 1c84c4d3c803 src/Makefile.am --- a/src/Makefile.am Thu Nov 16 07:49:24 2006 +0100 +++ b/src/Makefile.am Tue Nov 21 18:24:07 2006 +0100 @@ -41,7 +41,7 @@ libasound_la_LIBADD += alisp/libalisp.la libasound_la_LIBADD += alisp/libalisp.la endif SUBDIRS += compat conf -libasound_la_LIBADD += compat/libcompat.la -lm -ldl -lpthread +libasound_la_LIBADD += compat/libcompat.la @ALSA_DEPLIBS@ libasound_la_LDFLAGS = -version-info $(COMPATNUM) $(VSYMS) diff -r 1c84c4d3c803 src/dlmisc.c --- a/src/dlmisc.c Thu Nov 16 07:49:24 2006 +0100 +++ b/src/dlmisc.c Tue Nov 21 18:42:40 2006 +0100 @@ -53,13 +53,19 @@ void *snd_dlopen(const char *name, int m if (name == NULL) return &snd_dlsym_start; #else +#ifdef HAVE_LIBDL if (name == NULL) { Dl_info dlinfo; if (dladdr(snd_dlopen, &dlinfo) > 0) name = dlinfo.dli_fname; } #endif +#endif +#ifdef HAVE_LIBDL return dlopen(name, mode); +#else + return NULL; +#endif } /** @@ -76,7 +82,11 @@ int snd_dlclose(void *handle) if (handle == &snd_dlsym_start) return 0; #endif +#ifdef HAVE_LIBDL return dlclose(handle); +#else + return 0; +#endif } /** @@ -91,6 +101,7 @@ int snd_dlclose(void *handle) */ static int snd_dlsym_verify(void *handle, const char *name, const char *version) { +#ifdef HAVE_LIBDL int res; char *vname; @@ -107,6 +118,9 @@ static int snd_dlsym_verify(void *handle if (res < 0) SNDERR("unable to verify version for symbol %s", name); return res; +#else + return 0; +#endif } /** @@ -139,10 +153,14 @@ void *snd_dlsym(void *handle, const char return NULL; } #endif +#ifdef HAVE_LIBDL err = snd_dlsym_verify(handle, name, version); if (err < 0) return NULL; return dlsym(handle, name); +#else + return NULL; +#endif } /* diff -r 1c84c4d3c803 utils/alsa.pc.in --- a/utils/alsa.pc.in Thu Nov 16 07:49:24 2006 +0100 +++ b/utils/alsa.pc.in Tue Nov 21 18:30:07 2006 +0100 @@ -8,7 +8,7 @@ Version: @VERSION@ Version: @VERSION@ Requires: Libs: -L${libdir} -lasound -Libs.private: -lm -ldl -lpthread +Libs.private: @ALSA_DEPLIBS@ # -I${includedir}/alsa below is just for backward compatibility # (it was set so mistakely in the older version) Cflags: -I${includedir} -I${includedir}/alsa ------------------------------------------------------------------------- Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT & business topics through brief surveys - and earn cash http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV _______________________________________________ Alsa-user mailing list Alsa-user@xxxxxxxxxxxxxxxxxxxxx https://lists.sourceforge.net/lists/listinfo/alsa-user