这可能是一个简单的问题,但我在将_splitter.pyx构建为_splitter.so方面遇到了一些困难(因此我可以尝试进行一些更改)。现在,我正在使用命令构建原始文件:
囊藻-a _splitter.pyx
它会产生以下错误:
编译Cython文件时出错: ..。self.index_to_samples,self.feature_values,end_negative,start_positive) cdef int compare_SIZE_t(const * a,constvoid* b) nogil: ^ _splitter.pyx:1008:34: Expected‘),找到'*’
我尝试了一些改变,比如:
Cython-3 _splitter.pyx
或
cython -a _splitter.pyx _splitter.pxd
但它只会产生更多的错误。我做错了什么吗?
当它被修复时,我计划使用以下命令:
gcc -shared -pthread -fPIC -fwrapv -O2 -Wall -fno-严格混叠-I/usr/include/python2.7 -o _splitter.so _splitter.c
这是正确的做法吗?
非常感谢你的帮助
编辑:将我的Cython升级到0.24版本。现在,我在几行中得到了以下错误:
编译Cython文件时出错: ..。featuresf_i,featuresf_j = featuresf_j,featuresf_iDraw a随机阈值current.threshold = rand_uniform(min_feature_value,max_feature_value,random_state) ^ _splitter.pyx:1547:65:在没有gil的情况下不允许转换为Python
发布于 2016-07-26 04:37:50
尝试升级您的Cython安装。旧版本(< 0.18)不支持const关键字。
请参阅我如何使用康斯特?
答:从Cython 0.18开始,您可以在代码和声明中使用它。 早期版本的Cython不直接支持const,需要使用以下黑客将其编译成C源代码:
https://stackoverflow.com/questions/38574516
复制相似问题