Python和SWIG
SWIG
目标是简化工作流程,但是
一个example在Mac上跑就遇到了一堆兼容性问题(每个OS对应的编译方式都不一样)
对应的Python好像也还是停留在2.x(当然也是支持Py3的,只是有Py2的历史包袱)
需要用到python-config,这个东西用venv没法控制(这个太难受了)
第一次见到用反引号的命令(echo `python-config –cflags`,现代的写法应该是 $(命令) )
接口文件是独立格式(*.i),不优雅(代码编辑器没有任何提示,函数还要声明两遍)
一个module,需要写 cpp / h / i 文件,会生成wrap.cpp和py,编译出两个o(module.o和wrap.o),最后打包一个so,文件太多了
总结:不太推荐,至少不太推荐用于Python和C++的绑定,本篇内容估计到此为止了
Misc:[2024/12] SWIG 5.8k Stars; pybind11 15.9k Stars