[alsa-devel] Problem configuring alsa-lib for cross-compilation

Simon Brenner simon.brenner at mobotix.com
Fri Oct 8 13:00:16 CEST 2010


I'm building and installing the alsa libs for an embedded system.
My current process runs as follows:

 1) the alsa-lib package is crosscompiled on my PC host system (x86);
 2) the alsa-lib package is installed on a special prefix (say '/tmp/dest') on the host system;
 3) some installed files are copied from the dir. '/tmp/dest' to the final target root filesystem
   tree (say '/tmp/emb_root');

Now there are a couple of details that do not work with this process:

in point 1) I configure the alsa-lib package with the option --prefix=/tmp/dest because I want
to install the package there and use it later to compile other packages against it (alsa-utils for
example); at the same time I want also to use the alsa libs in my target system but it is not
possible because, at runtime, the init functions in the libasound.so looks for its configuration
file under '/tmp/dest/share/alsa/alsa.conf'!
The same problem happens with the plugins dir.

I tracked back this problems to the fact that, in the configure.in, the variable ALSA_CONFIG_DIR is
used both to be substituted in the Makefile.am's (AC_SUBST(ALSA_CONFIG_DIR)) and to define the
preprocessor constant in the 'include/config.h' (C_DEFINE_UNQUOTED(ALSA_CONFIG_DIR,...)). There is
currently no way to have two independent values for the two cases.

My current 'best' solution is to patch the header 'include/config.h' after running the configure script.

Is there any standard solution to this without patching the configure results ?


More information about the Alsa-devel mailing list