我们有一个庞大的Cython项目,在编译时会生成许多动态.so库。我们希望有一个静态的.a库,而不是可以链接到独立可执行文件中的库。但是我不知道在运行cythonize模块时如何到达gcc命令行选项。我已经研究过编译选项here,但是,即使在构建过程中甚至将命令行本身打印到控制台上,对gcc调整的任何支持也似乎完全消失了。
我想到的其中一项工作是用bash之类的东西围绕gcc命令编写包装器,并在命令行中将其假装为“ gcc”。它可以拦截所有呼叫并以自己的方式驱动gcc。
但是,即使Cython会选择这种诱饵,看起来也相当肮脏。我想要的只是一个大型.so或.a库,而不是很多。我该如何实现?