[Sound-open-firmware] help with unit tests

kalamara at ceid.upatras.gr kalamara at ceid.upatras.gr
Fri Feb 8 19:36:59 CET 2019


Hello, this is the first post from a newb user so first of all kudos to 
everyone for this amazing project.

I have followed the build from scratch instructions and built 
successfully the apl firmware (from branch master),
but am having trouble building the unit tests:


:~/lara/sof/sof/build_ut$ cmake -DTOOLCHAIN=xtensa-apl-elf 
-DROOT_DIR=`pwd`/../../xtensa-root/xtensa-apl-elf  -DBUILD_UNIT_TESTS=ON 
..
-- Preparing Xtensa toolchain
-- Configuring done
-- Generating done
-- Build files have been written to: /home/antonis/lara/sof/sof/build_ut

:~/lara/sof/sof/build_ut$ make apollolake_defconfig
[100%] Applying olddefconfig with apollolake_defconfig
Using existing configuration '.config' as base
Configuration written to '.config'
[100%] Built target apollolake_defconfig

:~/lara/sof/sof/build_ut$ make -j4
-- Preparing Xtensa toolchain
-- Configuring done
-- Generating done
-- Build files have been written to: /home/antonis/lara/sof/sof/build_ut
[  0%] Built target ld_script_memory_mock
[  0%] Performing update step for 'cmocka_git'
[  0%] Generating 
/home/antonis/lara/sof/sof/build_ut/generated/include/config.h
[  0%] Built target genconfig
Scanning dependencies of target audio_for_volume
[  0%] Building C object 
test/cmocka/src/audio/volume/CMakeFiles/audio_for_volume.dir/__/__/__/__/__/src/audio/volume_generic.c.o
[  2%] Building C object 
test/cmocka/src/audio/volume/CMakeFiles/audio_for_volume.dir/__/__/__/__/__/src/audio/volume.c.o
[  2%] Building C object 
test/cmocka/src/audio/volume/CMakeFiles/audio_for_volume.dir/__/__/__/__/__/src/audio/volume_hifi3.c.o
[  3%] Linking C static library libaudio_for_volume.a
[  3%] Built target audio_for_volume
Current branch master is up to date.
[  4%] Performing configure step for 'cmocka_git'
-- The C compiler identification is GNU 8.1.0
-- Check for working C compiler: 
/home/antonis/lara/sof/xtensa-apl-elf/bin/xtensa-apl-elf-gcc
-- Check for working C compiler: 
/home/antonis/lara/sof/xtensa-apl-elf/bin/xtensa-apl-elf-gcc -- broken
CMake Error at /usr/share/cmake-3.10/Modules/CMakeTestCCompiler.cmake:52 
(message):
   The C compiler

     "/home/antonis/lara/sof/xtensa-apl-elf/bin/xtensa-apl-elf-gcc"

   is not able to compile a simple test program.

   It fails with the following output:

     Change Dir: 
/home/antonis/lara/sof/sof/build_ut/cmocka_git/build/CMakeFiles/CMakeTmp

     Run Build Command:"/usr/bin/make" "cmTC_809b9/fast"
     make[3]: Entering directory 
'/home/antonis/lara/sof/sof/build_ut/cmocka_git/build/CMakeFiles/CMakeTmp'
     /usr/bin/make -f CMakeFiles/cmTC_809b9.dir/build.make 
CMakeFiles/cmTC_809b9.dir/build
     make[4]: Entering directory 
'/home/antonis/lara/sof/sof/build_ut/cmocka_git/build/CMakeFiles/CMakeTmp'
     Building C object CMakeFiles/cmTC_809b9.dir/testCCompiler.c.o
     /home/antonis/lara/sof/xtensa-apl-elf/bin/xtensa-apl-elf-gcc    -o 
CMakeFiles/cmTC_809b9.dir/testCCompiler.c.o   -c 
/home/antonis/lara/sof/sof/build_ut/cmocka_git/build/CMakeFiles/CMakeTmp/testCCompiler.c
     Linking C executable cmTC_809b9
     /usr/bin/cmake -E cmake_link_script 
CMakeFiles/cmTC_809b9.dir/link.txt --verbose=1
     /home/antonis/lara/sof/xtensa-apl-elf/bin/xtensa-apl-elf-gcc      
CMakeFiles/cmTC_809b9.dir/testCCompiler.c.o  -o cmTC_809b9
     
/home/antonis/lara/sof/xtensa-apl-elf/bin/../lib/gcc/xtensa-apl-elf/8.1.0/../../../../xtensa-apl-elf/bin/ld: 
cannot find crt1-sim.o: No such file or directory
     
/home/antonis/lara/sof/xtensa-apl-elf/bin/../lib/gcc/xtensa-apl-elf/8.1.0/../../../../xtensa-apl-elf/bin/ld: 
cannot find crt0.o: No such file or directory
     
/home/antonis/lara/sof/xtensa-apl-elf/bin/../lib/gcc/xtensa-apl-elf/8.1.0/../../../../xtensa-apl-elf/bin/ld: 
cannot find _vectors.o: No such file or directory
     
/home/antonis/lara/sof/xtensa-apl-elf/bin/../lib/gcc/xtensa-apl-elf/8.1.0/../../../../xtensa-apl-elf/bin/ld: 
cannot find -lc
     
/home/antonis/lara/sof/xtensa-apl-elf/bin/../lib/gcc/xtensa-apl-elf/8.1.0/../../../../xtensa-apl-elf/bin/ld: 
cannot find -lsim
     
/home/antonis/lara/sof/xtensa-apl-elf/bin/../lib/gcc/xtensa-apl-elf/8.1.0/../../../../xtensa-apl-elf/bin/ld: 
cannot find -lc
     
/home/antonis/lara/sof/xtensa-apl-elf/bin/../lib/gcc/xtensa-apl-elf/8.1.0/../../../../xtensa-apl-elf/bin/ld: 
cannot find -lhandlers-sim
     
/home/antonis/lara/sof/xtensa-apl-elf/bin/../lib/gcc/xtensa-apl-elf/8.1.0/../../../../xtensa-apl-elf/bin/ld: 
cannot find -lhal
     collect2: error: ld returned 1 exit status
     CMakeFiles/cmTC_809b9.dir/build.make:97: recipe for target 
'cmTC_809b9' failed
     make[4]: *** [cmTC_809b9] Error 1
     make[4]: Leaving directory 
'/home/antonis/lara/sof/sof/build_ut/cmocka_git/build/CMakeFiles/CMakeTmp'
     Makefile:126: recipe for target 'cmTC_809b9/fast' failed
     make[3]: *** [cmTC_809b9/fast] Error 2
     make[3]: Leaving directory 
'/home/antonis/lara/sof/sof/build_ut/cmocka_git/build/CMakeFiles/CMakeTmp'




   CMake will not be able to correctly generate this project.
Call Stack (most recent call first):
   CMakeLists.txt:18 (project)


-- Configuring incomplete, errors occurred!
See also 
"/home/antonis/lara/sof/sof/build_ut/cmocka_git/build/CMakeFiles/CMakeOutput.log".
See also 
"/home/antonis/lara/sof/sof/build_ut/cmocka_git/build/CMakeFiles/CMakeError.log".
test/cmocka/CMakeFiles/cmocka_git.dir/build.make:105: recipe for target 
'cmocka_git/src/cmocka_git-stamp/cmocka_git-configure' failed
make[2]: *** [cmocka_git/src/cmocka_git-stamp/cmocka_git-configure] 
Error 1
CMakeFiles/Makefile2:572: recipe for target 
'test/cmocka/CMakeFiles/cmocka_git.dir/all' failed
make[1]: *** [test/cmocka/CMakeFiles/cmocka_git.dir/all] Error 2
Makefile:94: recipe for target 'all' failed
make: *** [all] Error 2

It seems something that should be obvious is missing from my setup, even 
though i am able to build SOF binaries?
Can you please advise?

my environment is

Ubuntu 18.04.1 LTS
cmake version 3.10.2

regards and thanks

antonis



More information about the Sound-open-firmware mailing list