CMake with Ninja generator fails on i486 targets

asked 2019-05-21 01:47:04 +0200

equeim gravatar image

It works fine on armv7hl target. Unix Makefile generator works for both targets. CMake output:

+ /usr/bin/cmake -DCMAKE_VERBOSE_MAKEFILE=ON -DCMAKE_INSTALL_PREFIX:PATH=/usr -DCMAKE_INSTALL_LIBDIR:PATH=/usr/lib -DINCLUDE_INSTALL_DIR:PATH=/usr/include -DLIB_INSTALL_DIR:PATH=/usr/lib -DSYSCONF_INSTALL_DIR:PATH=/etc -DSHARE_INSTALL_PREFIX:PATH=/usr/share -DCMAKE_SKIP_RPATH:BOOL=ON -DBUILD_SHARED_LIBS:BOOL=ON /home/mersdk/share/projects/unplayer/3rdparty/taglib-79bb14 -G Ninja -DCMAKE_INSTALL_PREFIX=/home/mersdk/share/projects/unplayer/build-i486-linux-3.0.2.8/3rdparty/install -DLIB_INSTALL_DIR=/home/mersdk/share/projects/unplayer/build-i486-linux-3.0.2.8/3rdparty/install/lib -DINCLUDE_INSTALL_DIR=/home/mersdk/share/projects/unplayer/build-i486-linux-3.0.2.8/3rdparty/install/include -DCMAKE_BUILD_TYPE=debug -DCMAKE_CXX_FLAGS=-fPIC -DBUILD_SHARED_LIBS=OFF -DWITH_MP4=ON
-- The C compiler identification is GNU 4.8.3
-- The CXX compiler identification is GNU 4.8.3
-- Check for working C compiler: /usr/bin/cc
-- Check for working C compiler: /usr/bin/cc -- broken
CMake Error at /usr/share/cmake/Modules/CMakeTestCCompiler.cmake:52 (message):
The C compiler

    "/usr/bin/cc"

is not able to compile a simple test program.

It fails with the following output:

    Change Dir: /home/mersdk/share/projects/unplayer/build-i486-linux-3.0.2.8/3rdparty/build-taglib/CMakeFiles/CMakeTmp

    Run Build Command:"/usr/bin/ninja" "cmTC_5f360"
    [1/2] Building C object CMakeFiles/cmTC_5f360.dir/testCCompiler.c.o
    FAILED: CMakeFiles/cmTC_5f360.dir/testCCompiler.c.o 
    /usr/bin/cc   -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -Wformat -Wformat-security -m32 -msse -msse2 -march=i686 -mfpmath=sse -mtune=generic -fno-omit-frame-pointer -fasynchronous-unwind-tables -o CMakeFiles/cmTC_5f360.dir/testCCompiler.c.o   -c testCCompiler.c
    /bin/sh: /usr/bin/cc: No such file or directory
    ninja: build stopped: subcommand failed.




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


-- Configuring incomplete, errors occurred!
See also "/home/mersdk/share/projects/unplayer/build-i486-linux-3.0.2.8/3rdparty/build-taglib/CMakeFiles/CMakeOutput.log".
See also "/home/mersdk/share/projects/unplayer/build-i486-linux-3.0.2.8/3rdparty/build-taglib/CMakeFiles/CMakeError.log".
error: Bad exit status from /var/tmp/rpm-tmp.NYgUW5 (%build)


RPM build errors:
    Bad exit status from /var/tmp/rpm-tmp.NYgUW5 (%build)
edit retag flag offensive close delete

Comments

It says "/usr/bin/cc: No such file or directory". This is strange, it should be there. At least my i486 targets have it. Maybe reinstalling the target helps.

vige ( 2019-05-21 10:45:08 +0200 )edit

It is there. If I use sb2 to chroot into target I can invoke it manually. If I switch to Make as CMake backend, it invokes it just fine. It fails only when using CMake with Ninja and only on i486 target. Reinstalling target doesn't fix it. It also reproducable both when SDK is running in VirtualBox and in chroot.

equeim ( 2019-05-21 20:13:44 +0200 )edit