gpt4 book ai didi

cmake - 如何在 Release模式下强制 CMAKE 构建 SWIG 模块

转载 作者:行者123 更新时间:2023-12-02 02:20:08 26 4
gpt4 key购买 nike

有没有办法在cmake中强制设置swig模块的 Release模式,无论实际构建类型是什么,都以 Release模式构建?

我正在尝试使用 swig 自动生成的代码构建一个 python 模块,当我在 Debug模式下构建我的应用程序时,它会提示 python 调试库。

我对调试 python 模块相关代码不感兴趣,所以我可以不在 Debug模式下构建 swig 自动生成的 python 模块。

这是我的 cmakelists.txt 文件中的内容:

set_source_files_properties(abstract.i PROPERTIES CPLUSPLUS on)
swig_add_module(${PROJECT_NAME} python abstract.i)
swig_link_libraries(${PROJECT_NAME} ${PROJECT_NAME} ${PYTHON_LIBRARIES})

最佳答案

我想真正的问题是 MSVC 产生链接错误,因为缺少“python_d.lib”只需插入 SWIG 接口(interface)(您的 *.i)文件的标题:

%begin %{
#ifdef _MSC_VER
#define SWIG_PYTHON_INTERPRETER_NO_DEBUG
#endif
%}

...并删除

#ifdef _MSC_VER 
...
#endif

当问题是一般性的,而不是仅与 MSVC 相关时

关于cmake - 如何在 Release模式下强制 CMAKE 构建 SWIG 模块,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8633174/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com