【发布时间】:2010-09-29 22:50:17
【问题描述】:
我尝试从 Cython pxd 有条件地编译(或生成)c 代码。我读到我可以 DEF 定义 aa 值和 IF 以根据其值有条件地生成,但是我怎样才能从 pxd 文件外部获取此值?
特别是这两个案例现在对我来说很有趣:
- 为 Cython 提供一些命令行定义,最好通过 Cython.Distutils setuptools 方式
- extern-ed C 头文件定义了一些值,并根据该值使用 Cython 有条件地定义(现在可能不可能?)
谢谢
【问题讨论】:
-
实际上第二点是不可行的,因为据我所知,Cython 实际上并没有解析外部头文件。
-
stackoverflow.com/questions/26225187/… 给出了类似问题的更好答案。 (当被问到这个问题时,我不知道这是否是一个可行的解决方案)
-
@DavidW 使用
compile_time_env的答案确实更容易(可能),但如果值发生变化,它不会自动重新编译。此处接受的答案中的方法将(但请参阅我的评论)。
标签: conditional cython conditional-compilation