[Cmake] critical/crash bug

William A. Hoffman billlist at nycap.rr.com
Thu, 25 Mar 2004 10:08:03 -0500


This should be better documented, but if you have a PROJECT command, then it MUST
be the first command in the CMakeLists.txt file.

-Bill


At 09:53 AM 3/25/2004, Marco Nolden wrote:
>I have created a test case which could be related to the crash problem:
>
>Just two lines in a CMakeLists.txt file:
>
>INCLUDE( ${CMAKE_ROOT}/Modules/FindX11.cmake )
>PROJECT(foo)
>
>gives me the following output after the first invocation of cmake:
>-- Looking for XOpenDisplay in /usr/X11R6/lib/libX11.so;/usr/X11R6/lib/libXext.so
>CMake Error: This should not have happen. If you see this message, you are probably using a broken CMakeLists.txt file or a problematic release of CMake
>CMake Error: Internal CMake error, TryCompile configure of cmake failed
>-- Looking for XOpenDisplay in /usr/X11R6/lib/libX11.so;/usr/X11R6/lib/libXext.so - not found
>-- Looking for dnet_ntoa in dnet
>CMake Error: This should not have happen. If you see this message, you are probably using a broken CMakeLists.txt file or a problematic release of CMake
>CMake Error: Internal CMake error, TryCompile configure of cmake failed
>... snipped ...
>
>If I switch the lines:
>PROJECT(foo)
>INCLUDE( ${CMAKE_ROOT}/Modules/FindX11.cmake )
>
>everything's fine.
>
>Unfortunately I'm actually using a lot of PROJECT and INCLUDE commands in our project.
>
>Any ideas?
>
>>William A. Hoffman wrote:
>>
>>>I am not sure why it is crashing, but you should
>>>figure out this problem first:
>>>
>>>CMake Error: Error in cmake code at /opt/linux-gcc3/vtk-4.2/src/CMake/vtkLoadCMakeExtensions.cmake:23: LOAD_COMMAND Attempt to load command failed from file : libcmVTK_GENERATE_JAVA_DEPENDENCIES.so CMake Error: Error in cmake code at /opt/linux-gcc3/vtk-4.2/src/UseVTK.cmake:27: A command failed during the invocation of macro "VTK_LOAD_CMAKE_EXTENSIONS".
>>>
>>>Looks like for some reason it can not load a dynamic command.
>>>What OS?  What version of CMAke?   Please post the CMakeError.log
>>>and CMakeOutput.log files as they may have some clues as to
>>>what is going on.   
>>
>>It's cmake 1.8.3 on Linux (SuSE 9.0, gcc 3.3.1, glibc 2.3.2)
>>The vtk-related error messages stopped appearing since I did a fresh VTK install. But now I also think it's something basic that doesn't work. Another indication in that direction:
>>After removing all CMake-generated files I get the following error after the first 'cmake .' invocation. CMakeLists.txt contains an INCLUDE(${CMAKE_ROOT}/Modules/Dart.cmake):
>>========================================
>>nolden at ford:~/work/ip++> cmake .
>>ford
>>-- Using Buildname: -
>>CMake Error: Error in cmake code at
>>/home/nolden/cmake-local/share/CMake/Modules/Dart.cmake:106:
>>BUILD_COMMAND called with incorrect number of arguments
>>CMake Error: Error in cmake code at
>>/home/nolden/cmake-local/share/CMake/Modules/Dart.cmake:106:
>>BUILD_COMMAND called with incorrect number of arguments
>>-- Check for working C compiler: gcc
>>CMake Error: Internal CMake error, TryCompile configure of cmake failed
>>-- Check for working C compiler: gcc -- broken
>>The C compiler "gcc" is not able to compile a simple test program.
>>It fails with the following output:
>>
>>CMake will not be able to correctly generate this project.
>>-- Configuring done
>>========================================
>>CMakeError.log contains only this:
>>========================================
>>Determining if the C compiler works failed with the following output:
>>
>>========================================
>>This problem does not occur if I remove the
>>  INCLUDE(${CMAKE_ROOT}/Modules/Dart.cmake)
>>statement.
>>
>>A second 'cmake .' finishes with no errors:
>>========================================
>>nolden at ford:~/work/ip++> cmake .
>>-- Using Buildname: -c++
>>-- Check for working C compiler: gcc
>>-- Check for working C compiler: gcc -- works
>>-- Check for working CXX compiler: c++
>>-- Check for working CXX compiler: c++ -- works
>>-- setting MBI-specific configuration
>>-- Looking for XOpenDisplay in /usr/X11R6/lib/libX11.so;/usr/X11R6/lib/libXext.so
>>-- Looking for XOpenDisplay in /usr/X11R6/lib/libX11.so;/usr/X11R6/lib/libXext.so - found
>>-- Looking for gethostbyname
>>-- Looking for gethostbyname - found
>>-- Looking for connect
>>-- Looking for connect - found
>>-- Looking for remove
>>-- Looking for remove - found
>>-- Looking for shmat
>>-- Looking for shmat - found
>>-- Looking for IceConnectionNumber in ICE
>>-- Looking for IceConnectionNumber in ICE - found
>>-- Looking for pthread.h
>>-- Looking for pthread.h - 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
>>-- Checking to see if CXX compiler acepts flag -Wno-deprecated
>>-- Checking to see if CXX compiler acepts flag -Wno-deprecated - yes
>>-- Configuring done
>>-- Generating done
>>========================================
>>After that I invoke 'make':
>>========================================
>>nolden at ford:~/work/ip++> make
>>make  cmake.depends
>>make[1]: Entering directory `/home/nolden/work/ip++'
>>Building dependencies. cmake.depends...
>>/home/nolden/cmake-local/bin/cmake -S/home/nolden/work/ip++ -O/home/nolden/work/ip++ -H/home/nolden/work/ip++ -B/home/nolden/work/ip++
>>-- Using Buildname: -c++
>>make[1]: Leaving directory `/home/nolden/work/ip++'
>>make  cmake.check_depends
>>make[1]: Entering directory `/home/nolden/work/ip++'
>>make[1]: `cmake.check_depends' is up to date.
>>make[1]: Leaving directory `/home/nolden/work/ip++'
>>make  -f cmake.check_depends
>>make[1]: Entering directory `/home/nolden/work/ip++'
>>cmake.depends is up-to-date
>>make[1]: Leaving directory `/home/nolden/work/ip++'
>>make  all
>>make[1]: Entering directory `/home/nolden/work/ip++'
>>/home/nolden/work/ip++/Build/MITK: building default_target
>>make[2]: Entering directory `/home/nolden/work/ip++/Build/MITK'
>>make  cmake.depends
>>make[3]: Entering directory `/home/nolden/work/ip++/Build/MITK'
>>Building dependencies. cmake.depends...
>>/home/nolden/cmake-local/bin/cmake -S/home/nolden/work/ip++/Build/MITK -O/home/nolden/work/ip++/Build/MITK -H/home/nolden/work/ip++ -B/home/nolden/work/ip++
>>-- setting MBI-specific configuration
>>-- Checking to see if CXX compiler acepts flag -Wno-deprecated
>>-- Checking to see if CXX compiler acepts flag -Wno-deprecated - yes
>>make[3]: Leaving directory `/home/nolden/work/ip++/Build/MITK'
>>make  cmake.check_depends
>>make[3]: Entering directory `/home/nolden/work/ip++/Build/MITK'
>>make[3]: `cmake.check_depends' is up to date.
>>make[3]: Leaving directory `/home/nolden/work/ip++/Build/MITK'
>>make  -f cmake.check_depends
>>make[3]: Entering directory `/home/nolden/work/ip++/Build/MITK'
>>make[3]: Leaving directory `/home/nolden/work/ip++/Build/MITK'
>>make  all
>>make[3]: Entering directory `/home/nolden/work/ip++/Build/MITK'
>>make[3]: Nothing to be done for `all'.
>>make[3]: Leaving directory `/home/nolden/work/ip++/Build/MITK'
>>make[2]: Leaving directory `/home/nolden/work/ip++/Build/MITK'
>>/home/nolden/work/ip++/Applications/MITKSampleApp: building default_target
>>make[2]: Entering directory `/home/nolden/work/ip++/Applications/MITKSampleApp'
>>make  cmake.depends
>>make[3]: Entering directory `/home/nolden/work/ip++/Applications/MITKSampleApp'
>>Building dependencies. cmake.depends...
>>/home/nolden/cmake-local/bin/cmake -S/home/nolden/work/ip++/Applications/MITKSampleApp -O/home/nolden/work/ip++/Applications/MITKSampleApp -H/home/nolden/work/ip++ -B/home/nolden/work/ip++
>>/home/nolden/work/ip++
>>make[3]: *** [cmake.depends] Aborted
>>make[3]: Leaving directory `/home/nolden/work/ip++/Applications/MITKSampleApp'
>>make[2]: *** [default_target] Error 2
>>make[2]: Leaving directory `/home/nolden/work/ip++/Applications/MITKSampleApp'
>>make[1]: *** [default_target_Applications_MITKSampleApp] Error 2
>>make[1]: Leaving directory `/home/nolden/work/ip++'
>>make: *** [default_target] Error 2
>>========================================
>>
>>>
>>>Also, there may be some useful information in your [..] stuff.
>>>If you could show all the output from cmake /opt/linux-gcc3/vtk-4.2/src/
>>I changed our vtk setup a bit, so right now I can't reproduce exactly the situation when I filed the bug report. Maybe you already know my problem from the information above.
>>Thanks,
>>Marco
>>
>>>
>>>-Bill
>>> 
>>>At 04:48 AM 3/15/2004, Marco Nolden wrote:
>>>
>>>>Hi,
>>>>
>>>>I've reported a bug to the bugtracker which is blocking our software release:
>>>>
>>>>http://www.cmake.org/Bug/bug.php?op=show&bugid=605&pos=0
>>>>
>>>>Unfortunately I wasn't able to create a simple example reproducing the error. I only know it's related to using the SUBDIRS command. Not using SUBDIRS works sometimes. Does anyone have an idea, what the reason may be? I'm completely stuck at this point now and any hints will be highly appreciated.
>>>>
>>>>Marco
>>>>_______________________________________________
>>>>Cmake mailing list
>>>>Cmake at www.cmake.org
>>>>http://www.cmake.org/mailman/listinfo/cmake
>>>
>>>
>>>
>
>
>-- 
>----------------------------------------------------------------------
>Dipl.-Inform. Med. Marco Nolden
>Deutsches Krebsforschungszentrum       (German Cancer Research Center)
>Div. Medical & Biological Informatics          Tel: (+49) 6221-42 2325
>Im Neuenheimer Feld 280                        Fax: (+49) 6221-42 2345
>D-69120 Heidelberg                             eMail: M.Nolden at dkfz.de
>_______________________________________________
>Cmake mailing list
>Cmake at www.cmake.org
>http://www.cmake.org/mailman/listinfo/cmake