我在自定义目标外壳上无法获取环境

问题描述:

我无法在自定义目标外壳上获取环境。我在自定义目标外壳上无法获取环境

CMakeList.txt

set(ENV{TEST_VAR} "Hello") 
add_custom_target(test 
    COMMAND ./test.sh 
    WORKING_DIRECTORY ${CMAKE_SOURCE_DIR} ) 

test.sh

echo test:${TEST_VAR} 

时尝试 “做试验”,shell不能得到$ {} TEST_VAR。

谢谢。

你必须使用一个技巧,因为在的CMakeLists.txt设置环境变量只以cmake的本身的效果,所以你不能用这个方法来设置环境变量的自定义命令可能需要:

测试。 cmake的

set(ENV{TEST_VAR} "Hello") 
execute_process(
    COMMAND ./test.sh 
    WORKING_DIRECTORY ${CMAKE_SOURCE_DIR} ) 

的CMakeLists.txt

add_custom_target(test 
    COMMAND ${CMAKE_COMMAND} -P test.cmake) 
+0

非常感谢你。 – 2012-03-21 14:32:39