Я использую CMake для создания некоторых python привязок для моего кода с использованием Pybind11. Это работает хорошо, но они компилируются в основном каталоге build
. Я хотел бы, чтобы они были построены на директории build\python
. Я пытаюсь сделать следующее:
pybind11_add_module(myModule src/main.cpp)
set_target_properties(myModule PROPERTIES RUNTIME_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/python")
Но он не работает должным образом, myModule
все еще построен в каталоге build
, как если бы set_target_properties
не вызывался.
В официальной документации pybind11_add_module
написано:
Эта функция очень похожа на встроенную в CMake add_library (на самом деле это функция-оболочка для этой команды). Он добавит цель библиотеки, которая будет создана из перечисленных исходных файлов. Кроме того, он позаботится обо всех флагах компилятора и компоновщика Python -specifi c, а также о расширении файла c для OS и Python -version-Speci. Полученной целью можно далее управлять с помощью обычных команд CMake.
Поэтому я предположил, что set_target_properties
может использоваться для указания другого выходного каталога после него, не так ли? Если нет, то как это можно сделать?
Заранее спасибо!