The following issue has been SUBMITTED. ====================================================================== http://public.kitware.com/Bug/view.php?id=15251 ====================================================================== Reported By: Maxim Mikityanskiy Assigned To: ====================================================================== Project: CMake Issue ID: 15251 Category: CMake Reproducibility: always Severity: major Priority: normal Status: new ====================================================================== Date Submitted: 2014-11-13 15:58 EST Last Modified: 2014-11-13 15:58 EST ====================================================================== Summary: "The CMAKE_C_COMPILER … is not a full path and was not found in the PATH" if using CMakeDetermineSystem and toolchain file Description: There is an issue that prevents any version of freerdp to build on Gentoo using CMake 3.0.2.
At first, Gentoo's portage passes -DCMAKE_TOOLCHAIN_FILE=gentoo_toolchain.cmake to cmake command line; gentoo_toolchain.cmake contains following: SET (CMAKE_C_COMPILER x86_64-pc-linux-gnu-gcc) SET (CMAKE_CXX_COMPILER x86_64-pc-linux-gnu-g++) And when I try to build freerdp, the following message from CMake appears: cmake --no-warn-unused-cli -C /build/tmp/portage/net-misc/freerdp-1.1.0_beta1_p20130710-r2/work/freerdp-1.1.0_beta1_p20130710_build/gentoo_common_config.cmake -G Unix Makefiles -DCMAKE_INSTALL_PREFIX=/usr -DWITH_ALSA=ON -DWITH_CLIENT=ON -DWITH_CUPS=OFF -DWITH_DEBUG_ALL=OFF -DWITH_MANPAGES=OFF -DWITH_DIRECTFB=OFF -DWITH_FFMPEG=OFF -DWITH_GSTREAMER=OFF -DWITH_JPEG=ON -DWITH_PULSE=ON -DWITH_SERVER=OFF -DWITH_PCSC=OFF -DWITH_SSE2=ON -DCHANNEL_URBDRC=ON -DWITH_X11=ON -DWITH_XINERAMA=ON -DWITH_XV=ON -DBUILD_TESTING=OFF -DCMAKE_BUILD_TYPE=Gentoo -DCMAKE_INSTALL_DO_STRIP=OFF -DCMAKE_USER_MAKE_RULES_OVERRIDE=/build/tmp/portage/net-misc/freerdp-1.1.0_beta1_p20130710-r2/work/freerdp-1.1.0_beta1_p20130710_build/gentoo_rules.cmake -DCMAKE_TOOLCHAIN_FILE=/build/tmp/portage/net-misc/freerdp-1.1.0_beta1_p20130710-r2/work/freerdp-1.1.0_beta1_p20130710_build/gentoo_toolchain.cmake /build/tmp/portage/net-misc/freerdp-1.1.0_beta1_p20130710-r2/work/freerdp-1.1.0_beta1_p20130710 Not searching for unused variables given on the command line. loading initial cache file /build/tmp/portage/net-misc/freerdp-1.1.0_beta1_p20130710-r2/work/freerdp-1.1.0_beta1_p20130710_build/gentoo_common_config.cmake -- The C compiler identification is GNU 4.9.2 -- Check for working C compiler: /usr/lib64/ccache/bin/x86_64-pc-linux-gnu-gcc -- Check for working C compiler: /usr/lib64/ccache/bin/x86_64-pc-linux-gnu-gcc -- works -- Detecting C compiler ABI info -- Detecting C compiler ABI info - done -- Found PkgConfig: /usr/bin/x86_64-pc-linux-gnu-pkg-config (found version "0.28") -- FreeRDP GIT -- Git Revision n/a -- Performing Test Wno-unused-result -- Performing Test Wno-unused-result - Success -- Performing Test Wno-unused-but-set-variable -- Performing Test Wno-unused-but-set-variable - Success -- Performing Test Wno-deprecated-declarations -- Performing Test Wno-deprecated-declarations - Success -- Looking for include file fcntl.h -- Looking for include file fcntl.h - found -- Looking for include file unistd.h -- Looking for include file unistd.h - found -- Looking for include file stdint.h -- Looking for include file stdint.h - found -- Looking for include file inttypes.h -- Looking for include file inttypes.h - found -- Looking for include file sys/modem.h -- Looking for include file sys/modem.h - not found -- Looking for include file sys/filio.h -- Looking for include file sys/filio.h - not found -- Looking for include file sys/strtio.h -- Looking for include file sys/strtio.h - not found -- Looking for include file sys/select.h -- Looking for include file sys/select.h - found -- Performing Test HAVE_TM_GMTOFF -- Performing Test HAVE_TM_GMTOFF - Success -- Looking for include file pthread.h -- Looking for include file pthread.h - found -- Looking for pthread_create -- Looking for pthread_create - not found -- Looking for pthread_create in pthreads -- Looking for pthread_create in pthreads - not found -- Looking for pthread_create in pthread -- Looking for pthread_create in pthread - found -- Found Threads: TRUE -- Looking for include file sys/eventfd.h -- Looking for include file sys/eventfd.h - found -- Finding recommended feature X11 for X11 (X11 client and server) -- Disable feature X11 using "-DWITH_X11=OFF" -- Found X11: /usr/lib64/libX11.so -- Skipping optional feature DirectFB for DirectFB (DirectFB client) -- Enable feature DirectFB using "-DWITH_DIRECTFB=ON" -- Finding required feature ZLIB for compression (data compression) -- Found ZLIB: /usr/lib64/libz.so (found version "1.2.8") -- Finding required feature OpenSSL for cryptography (encryption, certificate validation, hashing functions) -- Found OpenSSL: /usr/lib64/libssl.so;/usr/lib64/libcrypto.so (found version "1.0.1j") -- Finding recommended feature ALSA for sound (audio input, audio output and multimedia redirection) -- Disable feature ALSA using "-DWITH_ALSA=OFF" -- Found ALSA: /usr/lib64/libasound.so (found version "1.0.28") -- Finding optional feature Pulse for sound (audio input, audio output and multimedia redirection) -- checking for module 'libpulse' -- found libpulse, version 5.0 -- Found Pulse: /usr/include -- Skipping optional feature Cups for printing (printer device redirection) -- Enable feature Cups using "-DWITH_CUPS=ON" -- Skipping optional feature PCSC for smart card (smart card device redirection) -- Enable feature PCSC using "-DWITH_PCSC=ON" -- Skipping recommended feature FFmpeg for multimedia (multimedia redirection, audio and video playback) -- Skipping recommended feature Gstreamer for multimedia (multimedia redirection, audio and video playback) -- Skipping optional feature IPP for performance (Intel Integrated Performance Primitives library) -- Enable feature IPP using "-DWITH_IPP=ON" -- Skipping optional feature NPP for performance (NVIDIA Performance Primitives library) -- Enable feature NPP using "-DWITH_NPP=ON" CMake Error at winpr/CMakeLists.txt:20 (project): The CMAKE_C_COMPILER: x86_64-pc-linux-gnu-gcc is not a full path and was not found in the PATH. Tell CMake where to find the compiler by setting either the environment variable "CC" or the CMake cache entry CMAKE_C_COMPILER to the full path to the compiler, or to the compiler name if it is in the PATH. I tried to reproduce the bug with minimal CMakeLists.txt. The bug can be reproduced with the following script: mkdir src cat > CMakeLists.txt << "EOF" cmake_minimum_required(VERSION 3.0.2) project(test C) include(CMakeDetermineSystem) add_subdirectory(src) EOF cat > src/CMakeLists.txt << "EOF" cmake_minimum_required(VERSION 3.0.2) project(src C) EOF cat > toolchain.cmake << "EOF" set(CMAKE_C_COMPILER x86_64-pc-linux-gnu-gcc) EOF cmake . -DCMAKE_TOOLCHAIN_FILE=toolchain.cmake You will see the following output: -- The C compiler identification is GNU 4.9.2 -- Check for working C compiler: /usr/bin/x86_64-pc-linux-gnu-gcc -- Check for working C compiler: /usr/bin/x86_64-pc-linux-gnu-gcc -- works -- Detecting C compiler ABI info -- Detecting C compiler ABI info - done CMake Error at src/CMakeLists.txt:2 (project): The CMAKE_C_COMPILER: x86_64-pc-linux-gnu-gcc is not a full path and was not found in the PATH. Tell CMake where to find the compiler by setting either the environment variable "CC" or the CMake cache entry CMAKE_C_COMPILER to the full path to the compiler, or to the compiler name if it is in the PATH. -- Configuring incomplete, errors occurred! See also "/tmp/test/CMakeFiles/CMakeOutput.log". I think that the reason of the bug is that CMake sets CMAKE_C_COMPILER=/usr/bin/x86_64-pc-linux-gnu-gcc after parsing toolchain file, but CMakeDetermineSystem module includes toolchain file again, and now CMAKE_C_COMPILER=x86_64-pc-linux-gnu-gcc, which leads to failure. Steps to Reproduce: Look at script above. ====================================================================== Issue History Date Modified Username Field Change ====================================================================== 2014-11-13 15:58 Maxim MikityanskiyNew Issue ====================================================================== -- Powered by www.kitware.com Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ Kitware offers various services to support the CMake community. For more information on each offering, please visit: CMake Support: http://cmake.org/cmake/help/support.html CMake Consulting: http://cmake.org/cmake/help/consulting.html CMake Training Courses: http://cmake.org/cmake/help/training.html Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html Follow this link to subscribe/unsubscribe: http://public.kitware.com/mailman/listinfo/cmake-developers