This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

Cannot open shared library /usr/lib/alsa-lib/libasound_module_pcm_jack.so

Dear Ti E2E community

After installing the jack plugins am facing the below errors:

root@lifeline:/# vi etc/asound.conf
pcm.rawjack {
type jack
playback_ports {
0 system:playback_1
1 system:playback_2
}
capture_ports {
0 system:capture_1
1 system:capture_2
}
}

pcm.jack {
type plug
slave { pcm "rawjack" }
hint {
description "JACK Audio Connection Kit"
}
}

pcm.!default {
type plug
slave { pcm "rawjack" }
}

root@lifeline:/opt/tunstall/audio# aplay -D pcm.jack TangoForTajMusic11.wav
ALSA lib /home/jenkins/amsdk-nightly-build/build-CORTEX_1/arago-tmp-external-linaro-toolchain/work/cortexa8t2hf-vfp-neon-oe-linux-gnueabi/alsa-lib/1.0.27.2-r0/alsa-lib-1.0.27.2/src/dlmisc.c:252:(snd1_dlobj_cache_get) Cannot open shared library /usr/lib/alsa-lib/libasound_module_pcm_jack.so
aplay: main:722: audio open error: No such device or address
root@lifeline:/opt/tunstall/audio#

Could you please help me out in resolving this issue

 

Thanks,

Srinivasan S 

  • Forwarding this to the SW team.

  • Thanks a lot Biser

    Kemal if you are free, could you pls do the needful from SW team in resolving this issue as early as possible

    Many Thanks in advance

  • Hi Srini,

    1. Can you run the aplay command with verbose output? It may give additional info to the log.

    2. Do you actually have the libasound_module_pcm_jack.so in the usr/lib/alsa-lib directory?
    You could try to cross compile it from its source and use the built libriary:
    install libasound2-dev package
    get the alsa-plugins tarball from http://www.alsa-project.org
    extract the tarball somewhere
    configure --prefix=/usr and make (you can even try make only in the jack subdir if the whole build fails)
    manually copy the libasound_module_pcm_jack.la to /usr/lib/alsa-lib/
    You can write to alsa community for support on cross-compiling the lib.

    Best Regards,
    Yordan
  • Dear Yordan,

    Thanks a lot for your quick responses

    1. Should I install libasound2-dev in linux host PC or in Am335x target??, If I need to install libasound2-dev in am3335x, could you please let me know how this can be installed

    2. I have downloaded alsa-plugins-1.0.29 plugins, could you please provide the full command for cross compiling ie., configure --prefix=/usr & make, 

    Could you please try to cross compile using configure --prefix=/usr once from your end & let me know, meanwhile I have posted to alsa community as well

    Sorry to push you hard Yordan

    Kindly do the needful as early as possible

    Many Thanks in advance

  • Dear Yordan,

    Could you please provide any inputs w.r.t the above query


    Kindly do the needful as early as possible,

    Many Thanks in advance
  • Dear Yordan,

    Am facing some configuration issue as shown below

    srinivasan@tata-HP-Elite-7100-Microtower-PC:~/alsa-plugins-1.0.29$ ./configure --host=arm-linux CC=/opt/ti-sdk-am335x-evm-07.00.00.00/linux-devkit/sysroots/i686-arago-linux/usr/bin/arm-linux-gnueabihf-gcc --prefix=/home/srinivasan/alsa-plugins-1.0.29/
    checking for a BSD-compatible install... /usr/bin/install -c
    checking whether build environment is sane... yes
    checking for arm-linux-strip... no
    checking for strip... strip
    checking for a thread-safe mkdir -p... /bin/mkdir -p
    checking for gawk... gawk
    checking whether make sets $(MAKE)... yes
    checking whether to enable maintainer-specific portions of Makefiles... yes
    checking for arm-linux-gcc... /opt/ti-sdk-am335x-evm-07.00.00.00/linux-devkit/sysroots/i686-arago-linux/usr/bin/arm-linux-gnueabihf-gcc
    checking whether the C compiler works... yes
    checking for C compiler default output file name... a.out
    checking for suffix of executables...
    checking whether we are cross compiling... yes
    checking for suffix of object files... o
    checking whether we are using the GNU C compiler... yes
    checking whether /opt/ti-sdk-am335x-evm-07.00.00.00/linux-devkit/sysroots/i686-arago-linux/usr/bin/arm-linux-gnueabihf-gcc accepts -g... yes
    checking for /opt/ti-sdk-am335x-evm-07.00.00.00/linux-devkit/sysroots/i686-arago-linux/usr/bin/arm-linux-gnueabihf-gcc option to accept ISO C89... none needed
    checking for style of include used by make... GNU
    checking dependency style of /opt/ti-sdk-am335x-evm-07.00.00.00/linux-devkit/sysroots/i686-arago-linux/usr/bin/arm-linux-gnueabihf-gcc... gcc3
    checking build system type... x86_64-unknown-linux-gnu
    checking host system type... arm-unknown-linux-gnu
    checking how to print strings... printf
    checking for a sed that does not truncate output... /bin/sed
    checking for grep that handles long lines and -e... /bin/grep
    checking for egrep... /bin/grep -E
    checking for fgrep... /bin/grep -F
    checking for ld used by /opt/ti-sdk-am335x-evm-07.00.00.00/linux-devkit/sysroots/i686-arago-linux/usr/bin/arm-linux-gnueabihf-gcc... /opt/ti-sdk-am335x-evm-07.00.00.00/linux-devkit/sysroots/i686-arago-linux/usr/arm-linux-gnueabihf/bin/ld
    checking if the linker (/opt/ti-sdk-am335x-evm-07.00.00.00/linux-devkit/sysroots/i686-arago-linux/usr/arm-linux-gnueabihf/bin/ld) is GNU ld... yes
    checking for BSD- or MS-compatible name lister (nm)... no
    checking for arm-linux-dumpbin... no
    checking for arm-linux-link... no
    checking for dumpbin... no
    checking for link... link -dump
    configure: WARNING: using cross tools not prefixed with host triplet
    checking the name lister (nm) interface... BSD nm
    checking whether ln -s works... yes
    checking the maximum length of command line arguments... 1572864
    checking whether the shell understands some XSI constructs... yes
    checking whether the shell understands "+="... yes
    checking how to convert x86_64-unknown-linux-gnu file names to arm-unknown-linux-gnu format... func_convert_file_noop
    checking how to convert x86_64-unknown-linux-gnu file names to toolchain format... func_convert_file_noop
    checking for /opt/ti-sdk-am335x-evm-07.00.00.00/linux-devkit/sysroots/i686-arago-linux/usr/arm-linux-gnueabihf/bin/ld option to reload object files... -r
    checking for arm-linux-objdump... no
    checking for objdump... objdump
    checking how to recognize dependent libraries... pass_all
    checking for arm-linux-dlltool... no
    checking for dlltool... no
    checking how to associate runtime and link libraries... printf %s\n
    checking for arm-linux-ar... no
    checking for ar... ar
    checking for archiver @FILE support... @
    checking for arm-linux-strip... strip
    checking for arm-linux-ranlib... no
    checking for ranlib... ranlib
    checking command to parse nm output from /opt/ti-sdk-am335x-evm-07.00.00.00/linux-devkit/sysroots/i686-arago-linux/usr/bin/arm-linux-gnueabihf-gcc object... ok
    checking for sysroot... no
    checking for arm-linux-mt... no
    checking for mt... mt
    checking if mt is a manifest tool... no
    checking how to run the C preprocessor... /opt/ti-sdk-am335x-evm-07.00.00.00/linux-devkit/sysroots/i686-arago-linux/usr/bin/arm-linux-gnueabihf-gcc -E
    checking for ANSI C header files... yes
    checking for sys/types.h... yes
    checking for sys/stat.h... yes
    checking for stdlib.h... yes
    checking for string.h... yes
    checking for memory.h... yes
    checking for strings.h... yes
    checking for inttypes.h... yes
    checking for stdint.h... yes
    checking for unistd.h... yes
    checking for dlfcn.h... yes
    checking for objdir... .libs
    checking if /opt/ti-sdk-am335x-evm-07.00.00.00/linux-devkit/sysroots/i686-arago-linux/usr/bin/arm-linux-gnueabihf-gcc supports -fno-rtti -fno-exceptions... no
    checking for /opt/ti-sdk-am335x-evm-07.00.00.00/linux-devkit/sysroots/i686-arago-linux/usr/bin/arm-linux-gnueabihf-gcc option to produce PIC... -fPIC -DPIC
    checking if /opt/ti-sdk-am335x-evm-07.00.00.00/linux-devkit/sysroots/i686-arago-linux/usr/bin/arm-linux-gnueabihf-gcc PIC flag -fPIC -DPIC works... yes
    checking if /opt/ti-sdk-am335x-evm-07.00.00.00/linux-devkit/sysroots/i686-arago-linux/usr/bin/arm-linux-gnueabihf-gcc static flag -static works... yes
    checking if /opt/ti-sdk-am335x-evm-07.00.00.00/linux-devkit/sysroots/i686-arago-linux/usr/bin/arm-linux-gnueabihf-gcc supports -c -o file.o... yes
    checking if /opt/ti-sdk-am335x-evm-07.00.00.00/linux-devkit/sysroots/i686-arago-linux/usr/bin/arm-linux-gnueabihf-gcc supports -c -o file.o... (cached) yes
    checking whether the /opt/ti-sdk-am335x-evm-07.00.00.00/linux-devkit/sysroots/i686-arago-linux/usr/bin/arm-linux-gnueabihf-gcc linker (/opt/ti-sdk-am335x-evm-07.00.00.00/linux-devkit/sysroots/i686-arago-linux/usr/arm-linux-gnueabihf/bin/ld) supports shared libraries... yes
    checking whether -lc should be explicitly linked in... no
    checking dynamic linker characteristics... GNU/Linux ld.so
    checking how to hardcode library paths into programs... immediate
    checking whether stripping libraries is possible... yes
    checking if libtool supports shared libraries... yes
    checking whether to build shared libraries... yes
    checking whether to build static libraries... no
    checking for ANSI C header files... (cached) yes
    ./configure: line 11534: CC_NOUNDEFINED: command not found
    checking for arm-linux-pkg-config... no
    checking for pkg-config... /opt/ti-sdk-am335x-evm-07.00.00.00/linux-devkit/sysroots/i686-arago-linux/usr/bin//pkg-config
    checking pkg-config is at least version 0.9.0... yes
    checking for ALSA... no
    configure: error: Package requirements (alsa >= 1.0.11) were not met:

    No package 'alsa' found

    Consider adjusting the PKG_CONFIG_PATH environment variable if you
    installed software in a non-standard prefix.

    Alternatively, you may set the environment variables ALSA_CFLAGS
    and ALSA_LIBS to avoid the need to call pkg-config.
    See the pkg-config man page for more details.
    srinivasan@tata-HP-Elite-7100-Microtower-PC:~/alsa-plugins-1.0.29$

    Thanks
    Srini
  • Dear Yordan,

    Could you please help me out first how do I cross_compile any alsa-lib

    Awaiting for your replies,

    Thanks in advance
  • Hi Srini,

    Sorry for the delay.

    The procedure is:
    1. cd /my/path/where/i/keep/my/source/code/
    2. download and extract alsa sources
    3. cd alsa-lib-VERSION/
    4. ./configure --host=arm-unknown-linux-gnueabi --prefix=/my/path/were/i/keep/built/arm/stuff
    5. make
    6. make install

    In step 4 you can use also --host & --target options, i.e.: -target=arm-linux --host=i686-linux

    Hope this helps.

    Best Regards,
    Yordan
  • Dear Yordan,

    Thanks a lot for all your responses & appreciate the same for your support w.r.t this thread

    Similarly could you please help me in cross-compiling alsa-plugins-1.0.29 which I downloaded from http://www.alsa-project.org, when I tried to cross_compile still am facing the same issue as posted earlier

    checking whether to build static libraries... no
    checking for ANSI C header files... (cached) yes
    ./configure: line 11534: CC_NOUNDEFINED: command not found
    checking for i686-linux-pkg-config... no
    checking for pkg-config... /opt/ti-sdk-am335x-evm-07.00.00.00/linux-devkit/sysroots/i686-arago-linux/usr/bin//pkg-config
    checking pkg-config is at least version 0.9.0... yes
    checking for ALSA... no
    configure: error: Package requirements (alsa >= 1.0.11) were not met:

    No package 'alsa' found

    Consider adjusting the PKG_CONFIG_PATH environment variable if you
    installed software in a non-standard prefix.

    Alternatively, you may set the environment variables ALSA_CFLAGS
    and ALSA_LIBS to avoid the need to call pkg-config.
    See the pkg-config man page for more details.
    srinivasan@tata-HP-Elite-7100-Microtower-PC:~/alsa-plugins-1.0.29$


    Kindly do the needful as early as possible

    Many Thanks in advance
  • Dear Yordan

    I got the replies from alsa community

    I didn't understand the highlighted points could you please try from your end & let me know now how this plugins can be cross_compiled

     

    ALSA lib /home/jenkins/amsdk-nightly-build/build-CORTEX_1/arago-tmp-external-linaro-toolchain/work/cortexa8t2hf-vfp-neon-oe-linux-gnueabi/alsa-lib/1.0.27.2-r0/alsa-lib-1.0.27.2/src/dlmisc.c:252:(snd1_dlobj_cache_get) Cannot open shared library /usr/lib/alsa-lib/libasound_module_pcm_jack.so

    aplay: main:722: audio open error: No such device or address

    root@lifeline:/opt/tunstall/audio#

    Even I installed libasound2-dev in my linux host machine still the same issue

    srinivasan@tata-HP-Elite-7100-Microtower-PC:~/alsa-plugins-1.0.29$ ./configure --prefix=/home/srinivasan/alsa-plugins-1.0.29/exes --host=arm-arago-linux-gnueabi

    checking for a BSD-compatible install... /usr/bin/install -c

    checking if libtool supports shared libraries... yes

    checking whether to build shared libraries... yes

    checking whether to build static libraries... no

    checking for ANSI C header files... (cached) yes

    ./configure: line 11534: CC_NOUNDEFINED: command not found

    checking for arm-arago-linux-gnueabi-pkg-config... no

    checking for pkg-config... /opt/ti-sdk-am335x-evm-07.00.00.00/linux-devkit/sysroots/i686-arago-linux/usr/bin//pkg-config

    checking pkg-config is at least version 0.9.0... yes

    checking for ALSA... no

    configure: error: Package requirements (alsa >= 1.0.11) were not met:

    No package 'alsa' found

    Consider adjusting the PKG_CONFIG_PATH environment variable if you

    installed software in a non-standard prefix.

    Alternatively, you may set the environment variables ALSA_CFLAGS

    and ALSA_LIBS to avoid the need to call pkg-config.

    See the pkg-config man page for more details.

    Kindly do the needful as early as possible

    Awaiting for your replies

    Many Thanks in advance..

  • Dear Yordan,

    I got some more inputs from alsa community, could you please help me out in resolving this issue,

    Could you please retry cross compiling alsa-lib & let me know, meanwhile even I will try cross compiling & will keep you updated


    >>> checking for pkg-config... /opt/ti-sdk-am335x-evm-07.00.00.00/linux-devkit/sysroots/i686-arago-linux/usr/bin//pkg-config
    >>> checking pkg-config is at least version 0.9.0... yes
    >>> checking for ALSA... no
    >>> configure: error: Package requirements (alsa >= 1.0.11) were not met:
    >>
    >> Well, did you cross-compile alsa-lib?
    >
    > I have never cross_compiled alsa-lib 1.0.27.2-r0 am using the alsa-lib version which is provided in ti sdk 8 BSP's

    That pkg-config does not know about "alsa". Apparently, TI's SDK did
    not install alsa.pc together with the rest of alsa-lib.

    Report this bug to TI.

    As a workaround, try cross-compiling alsa-lib yourself.

    Kindly do the needful as early as possible

    Awaiting for your replies

    Many Thanks in advance,
    Srini
  • Have you tried compiling with bitbake?
    Check the aragowiki & open-embedded layers for alsa:
    arago-project.org/.../Main_Page
    layers.openembedded.org/.../5554
    layers.openembedded.org/.../33490

    Best Regards,
    Yordan