[CMake] cmake exception

Alexander Ivash alexander.ivash at psa-software.com
Fri Mar 16 04:21:50 EST 2007


> What do you mean by termination?  Does cmake crash?
Yes. Here some exception deatails:
     AppName: cmake.exe       AppVer: 0.0.0.0         ModName: msvcr80d.dll
     ModVer: 8.0.50727.762    Offset: 0003b130
     
> I tried your
> command line and it did not crash.
The problem was not in command line. After changed the sample a bit -
exception disappeared! Here is working variant:

#if(DEFINED CROSSCOMPILE)
        set(ENV{PATH} "$ENV{PATH};${WIND_RIVER_DIAB_DIR}")
        set(ENV{PATH} "$ENV{PATH};${WIND_RIVER_DIR}/vxworks-6.1/host/x86-win32/bin")

        set(CMAKE_MAKE_PROGRAM "make" CACHE STRING "")
        set(CMAKE_CXX_COMPILER "dcc" CACHE STRING "")
        #set(CMAKE_COMPILER_IS_GNUCXX 1 CACHE STRING "")
        set(CMAKE_C_COMPILER "dcc" CACHE STRING "")
        set(CMAKE_AR "ar" CACHE STRING "")
#elseif(DEFINED CROSSCOMPILE)

> However, the set(ENV) stuff you 
> have may not be exactly what you want.  It will only set environment 
> variables at CMake time, and not at make time. 
I just need to set custom tool chain if CROSSCOMPILE defined. I
thought that in such a way I can define compiler, linker etc and at
the compile time they will be used with a full absolute path. If I
wrong how to acquire what I want ?

> Alexander Ivash wrote:
>> Hello, cmake.
>>
>> The following sample from cmakelists.txt causes termination of cmake
>> on win32. I run "cmake -D "CROSSCOMPILE=TRUE" -D "TOOL=diab" -D
>> "CPU=SimNT" -D "UGL_INCLUDE=D:/WindRiver/components/windml-4.0/h" -D "VXWORKS_INCLUDE=D:/WindRiver/vxworks-6.1/target/h" -G "Unix Makefiles" ../../../"
>>
>> if(DEFINED CROSSCOMPILE)
>>         set(ENV{PATH} "$ENV{PATH};${WIND_RIVER_DIAB_DIR}")
>>         set(ENV{PATH} "$ENV{PATH};${WIND_RIVER_DIR}/vxworks-6.1/host/x86-win32/bin")
>>
>>         set(CMAKE_MAKE_PROGRAM "make")
>>         set(CMAKE_CXX_COMPILER "dcc")
>>         #set(CMAKE_COMPILER_IS_GNUCXX 1)
>>         set(CMAKE_C_COMPILER "dcc")
>>         set(CMAKE_AR "ar")
>> elseif(DEFINED CROSSCOMPILE)
>>
>> endif(DEFINED CROSSCOMPILE)
>>
>> What I'm doing wrong?
>>   
> What do you mean by termination?  Does cmake crash?  I tried your 
> command line and it did not crash.   However, the set(ENV) stuff you 
> have may not be exactly what you want.  It will only set environment 
> variables at CMake time, and not at make time. 

> -Bill



-- 
Best regards,
 Alexander                          mailto:alexander.ivash at psa-software.com



More information about the CMake mailing list