在Windows7上,当尝试编译pygraphviz时,我运行
python setup.py build -c mingw32
我得到了
C:\MinGW\bin\gcc.exe -mno-cygwin -mdll -o -Wall "-IC:\Program Files (x86)\Graphv iz 2.28\include\graphviz“-Ic:\Python27\include -Ic:\Python27\PC -c pygraphviz/g raphviz_wrap.c -O graphviz cc1.exe:错误:无法识别命令行选项'-mno-cygwin‘错误:命令'gcc’失败,退出状态为1
“-mno-cygwin”是从哪里来的?遍历pygraphviz 1.1目录,没有显示" no -cygwin“。
发布于 2012-12-13 00:14:34
请看这个答案:https://stackoverflow.com/a/6035864/1516291
简而言之,您可能需要修改python安装目录中的distutils\cygwinccompiler.py
以删除-mno-cygwin
的痕迹。
发布于 2014-01-24 18:11:12
我遇到了同样的问题,通过在C:\Python27\Lib\distutils\cygwinccompiler.py
中将字符串"-mno-cygwin“的实例替换为"”,修复了这个问题
即原始代码:
self.set_executables(compiler='gcc -mno-cygwin -O -Wall',
compiler_so='gcc -mno-cygwin -mdll -O -Wall',
compiler_cxx='g++ -mno-cygwin -O -Wall',
linker_exe='gcc -mno-cygwin',
linker_so='%s -mno-cygwin %s %s'
% (self.linker_dll, shared_option,
entry_point))
更新代码:
self.set_executables(compiler='gcc "" -O -Wall',
compiler_so='gcc "" -mdll -O -Wall',
compiler_cxx='g++ "" -O -Wall',
linker_exe='gcc ""',
linker_so='%s "" %s %s'
% (self.linker_dll, shared_option,
entry_point))
您使用的是什么版本的GCC编译器?如果您使用的是GCC 3.4.4,则不会出现此问题,否则您需要将"-mno-cygwin“字符串替换为上面提到的空引号,特别是对于GCC 4.3.7。
https://stackoverflow.com/questions/13592192
复制相似问题