当前位置: 首页 > 面试题库 >

您如何告诉pyximport使用cython --cplus选项?

庾远航
2023-03-14
问题内容

pyximport非常方便,但是我不知道如何让它参与Cython的C ++语言选项。从命令行运行cython --cplus foo.pyx。你如何用pyximport达到等效?谢谢!


问题答案:

使Cython创建C ++文件的一种方法是使用pyxbld文件。例如,创建foo.pyxbld包含以下内容:

def make_ext(modname, pyxfilename):
    from distutils.extension import Extension
    return Extension(name=modname,
                     sources=[pyxfilename],
                     language='c++')


 类似资料:
  • 问题内容: 我想用Cython包装一个包含C ++和OpenMP代码的测试项目,并通过文件与distutils一起构建它。我文件的内容如下所示: 该标志与gcc一起用于针对OpenMP进行编译和链接。但是,如果我只是调用 由于编译器是clang,因此无法识别此标志: 我尝试指定gcc失败: 如何告诉distutils使用gcc? 问题答案: 尝试使用os.environ从setup.py内部设置“

  • 我想用Cython包装一个包含C和OpenMP代码的测试项目,并通过一个文件用distutils构建它。我的文件内容是这样的: 标志与gcc一起用于编译和链接OpenMP。然而,如果我只是调用 无法识别此标志,因为编译器为clang: 我尝试指定gcc失败: 如何告诉distutils使用gcc?

  • 问题内容: 我正在使用带有selenium的自定义firefox二进制文件,它依赖于特定的命令行参数。 在执行firefox二进制文件时,如何告诉selenium使用这些参数? 问题答案: 糟糕,似乎有一种方法:FirefoxBinary.addCommandLineOptions() 那可能就是答案…

  • 问题内容: 如果我使用JPA(EclipseLink)创建表,则String类型将导致varchar2(255)。我如何告诉JPA(通过注释)创建varchar2(20)属性。 如果我有一个列表,JPA将创建一个BLOB(4000),但我想要一个varchar2(我的序列化对象的字符串很短) 这怎么可能?我需要手工做吗? 问题答案: 您需要使用@Column批注的columnDefinition属

  • 问题内容: 我正在使用cython为数学模型生成更快的代码。我很难编译代码,但是以某种方式设法使用.bat做到了: 运行正常… 我的问题是关于pyximport。我有其他人使用pyximport.install()编写的旧代码。我无法弄清楚它的作用以及为什么要使用它,因为我已经在自己编译代码了。因此,有人可以以非常简单的方式(对于虚拟对象)向我解释pyximport的作用吗? 附加信息:我有一个使

  • 问题内容: 我想编写一个函数,该函数接收 几种 类型的结构并从JSON解组。为此,我有另一组带有预定义签名的函数,这些函数返回struct实例,但是由于每个函数都返回不同类型的struct,因此函数签名具有的返回类型。 当我发送json.Unmarshal一个具体的结构时,它可以按照我的预期工作,但是当我发送相同的结构时,它将其转换为地图。 这是描述问题的简化示例代码: https://play.