2017-10-29 17 views
0

저는 cmake와 외부 프로젝트의 구성 단계에 문제가 있습니다. 그것은 어떻게 든 내가 지정한 것보다 다른 경로를 사용합니까?externalproject_add가 올바른 디렉토리에서 보이지 않습니까?

INCLUDE(ExternalProject) 
ExternalProject_Add(project_portaudio 
    GIT_REPOSITORY  https://git.assembla.com/portaudio.git 
    PREFIX    lib/portaudio 
    CONFIGURE_COMMAND ${SOURCE_DIR}/configure 
    BUILD_IN_SOURCE  0 
    BUILD_COMMAND  make 
    INSTALL_COMMAND  sudo make install 
) 
ExternalProject_Get_Property(project_portaudio BINARY_DIR) 
ExternalProject_Get_Property(project_portaudio SOURCE_DIR) 

하지만 난 할 때

make 
[ 11%] Built target record 
[ 22%] Built target spectogram 
[ 33%] Built target database 
[ 44%] Built target match 
[ 55%] Built target cmakeDemo 
[ 61%] Performing update step for 'project_portaudio' 
Current branch master is up to date. 
[ 66%] Performing configure step for 'project_portaudio' 
/bin/sh: /configure: No such file or directory 
make[2]: *** [src/include/record/lib/portaudio/src/project_portaudio-stamp/project_portaudio-configure] Error 127 
make[1]: *** [src/include/record/CMakeFiles/project_portaudio.dir/all] Error 2 
make: *** [all] Error 2 

그것은 여기에서 볼 수 있듯이 .. 구성 단계는

어떻게 $ {SOURCE_DIR}가 아닌 $ {stamp_dir}에 있어야합니다 왔다?

답변

1

${SOURCE_DIR} 대신 <SOURCE_DIR>을 사용하고 싶을 것입니다.

후자는 거의 존재하지 CMake 변수를 의미하지만, 전 하나 SOURCE ExternalProject의에 대한 하나로 할당, 디렉토리에 확대 될 것입니다.