Как двоичный / исполняемый каталог указан в SCons?Это легко сделать следующим образом:
Program( target = 'bin/helloworld', source = 'src/helloworld.cc' )
Проблема с этим подходом заключается в попытке сделать кроссплатформенную сборку.Вот пример, который работает:
StaticLibrary( target = 'helloworld', source = 'src/helloworldlib.cc' )
Результатом этого в системе Unix является библиотека с именем libhelloworld.a.Ниже приведен пример, где это не работает:
StaticLibrary( target = 'lib/helloworld', source = 'src/helloworldlib.cc' )
Выводом этой системы в Unix является файл helloworld.a в каталоге lib.Это вызывает проблемы, когда LIBS указан как ['helloworld'], что является кроссплатформенным способом сделать это.
Какое имя параметра нужно передать в StaticLibrary, SharedLibrary и Program для вывода двоичных файлов в каталогкроме базового каталога?