2017-02-10 1 views
0

링커 스크립트 :[SCons는] [링커] 찾을 수 없습니다 나는 사용자 정의 링커 스크립트를 읽어 명시 적으로 링커 플래그를 설정, 간단한 인사 세계 프로젝트를 빌드 할 SCons는를 사용하기 위해 노력하고있어

env.Append(LINKFLAGS = [ 
    '-T script/linker_script.ld' 
    ]) 

문제를 이 실행될 때, SCons는이 같은 것을 결과 -T 옵션, 주위에 ""큰 따옴표를두고 있다는 것입니다 :

arm-none-eabi-ld -o bareMetalStartupScons.elf "-T script/linker_script.ld" src/main.o asm/startup.o 
arm-none-eabi-ld: cannot open linker script file script/linker_script.ld: No such file or directory 

스크립트가, 난 그냥 따옴표를 제거하고 명령을 실행하는 경우 수동으로 오류없이 완료합니다.

arm-none-eabi-ld -T script/linker_script.ld src/main.o asm/startup.o 

이 문제에 대한 해결책이나 이런 일이 발생하는 이유는 무엇입니까?

답변

0

실제로이 문제에 대한 해결책을 찾았습니다.이 문제는 -T와 같은 공백없이 링커 스크립트의 경로를 지정하는 것입니다.

env.Append(LINKFLAGS = [ 
    '-Tscript/linker_script.ld' 
    ]) 

이 경우 SCons는 실행 파일에 전달할 때 "문자열로"인수 주위에 큰 따옴표를 넣지 않습니다.

+0

예 인수에 (흰색) 공백이 있으면 SCons가이를 인용합니다. LINKFLAGS = [ '- T', 'script/linker_script.ld']를 수행 할 수도 있습니다. – bdbaddog