필자가 작성한 SCons 스크립트에 플랫폼 별 빌드 변수를 추가해야하고, 내가 아는 한 건설 환경을 생성해야합니다. 변수를 사용하여 실제로 플랫폼을 확인할 수 있습니다 (env['PLATFORM']
등). 이렇게하면 변수를 나중에 추가해야하지만 어떤 이유로 작동하지 않습니다.건설 환경에 '변수'추가하기
env = Environment()
vars = Variables()
if env['PLATFORM'] == 'win32':
default_prefix = 'C:\Program Files\Example'
elif env['PLATFORM'] == 'posix':
default_prefix = '/usr/local/example'
vars.Add(PathVariable('prefix', 'installation path', default_prefix))
env.Append(variables = vars)
print env['prefix'] # error
내가 해결 그냥 다시
env = Environment(variables = var)
환경을 만드는 것입니다 것으로 나타났습니다하지만 난 더 나은 방법이 있는지 궁금 해서요, 그리고 왜를 추가하는 첫 번째 장소에서 작동하지 않습니다 .
'vars.Update (env)'가 저에게 효과적입니다. 추가 빌드 변수의 두 번째 매개 변수는 무엇입니까? 다시 한 번 감사드립니다! – someguy
두 번째 변수는 자유 함수 용입니다. – daramarak