cmake
에 execute_process()
함수를 사용하고 있습니다. 이 cmake
를 구문 분석하는 동안 실행될 때cmake 파일의 execute_process 명령에서 cmake 변수 사용
message(" FLAGS = ${FLAGS}")
message(" SCATTERFILE = ${SCATTERFILE}")
set (EXECUTE_COMMAND "arm-none-eabi-gcc ${FLAGS} -E -P -x c-header ${SCATTERFILE} -o ~/ttt.ld")
message("EXECUTE_COMMAND = ${EXECUTE_COMMAND}")
execute_process(COMMAND ${EXECUTE_COMMAND} RESULT_VARIABLE rv)
모든 것은 message()
명령의 결과로 완벽하게 표시하지만 오류가 발생합니다. 나는 FLAGS
변수가 파싱하는 동안 예상대로 확장되지 않는다고 생각한다. 터미널에서 message
명령의 결과로 표시되는 동일한 EXECUTE_COMMAND
을 실행하면 완벽하게 실행됩니다. 무슨 문제가 될 수 있니?
편집 : 내가 출력은
set (EXECUTE_COMMAND "arm-none-eabi-gcc -E -P -x c-header ${SCATTERFILE} ")
을 사용하고 지금
set (EXECUTE_COMMAND "arm-none-eabi-gcc ${FLAGS} -E -P -x c-header ${SCATTERFILE} -o ~/ttt.ld")`
에서 ${FLAGS}
을 제거한 :
EXECUTE_COMMAND arm-none-eabi-gcc -E -P -x c-header ~/scatterFile.scatter rv: No such File or directory.
단순히 터미널에서이 명령을 입력하면 ,
아암 그럼에도 EABI -E-GCC -P -x C 헤더 ~/scatterFile.scatter가 실행하고, 예상 결과를 제공
.
오류를 신고하는 사람은 누구입니까? CMake 또는 실행 된 프로세스? CMake의 출력을 제공하십시오 –
실행 된 프로세스 – theadnangondal
CMake 출력의 관련 부분을 제공하십시오 ('MESSAGE' 출력 및 오류 메시지 포함) –