win10 rcnn-tensorflow-python3.6 遇到的问题

代码位置:

https://github.com/dBeker/Faster-RCNN-TensorFlow-Python3

 

1.  找不到cl.exe

path问题,
    1. x64位系统,在环境变量中添加C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\amd64
    2. x86位系统,在环境变量中添加C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin
测试:
    1. 打开新的Dos窗口,输入path,查看当前path是否添加
    2. 执行‘echo %PATH%’, 立即刷新环境变量
    3. 执行 cl ,查看是否报错

 

2. 使用python setup.py build_ext --inplace命令编译cython代码, 出现以下错误:

python36.lib(python36.dll) : fatal error LNK1112: module machine type 'x64' conflicts with target machine type 'X86'
error: command 'C:\\Program Files (x86)\\Microsoft Visual Studio 14.0\\VC\\bin\\link.exe' failed with exit status 1112


原因:
  一般是因为系统为x64,但安装的c的编译工具时x86(这里只link.exe为32位)
解决:
  1. 找到windows的系统环境变量path:
    将"C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\amd64;" 加在path最前面,这样就可以优先使用64位的link.exe。

  2. 新建一个Dos窗口, 执行 "echo %PATH%" ,使环境变量立即生效。(在前面建好的DOS窗口下执行没有用)

  3. 如果是在pycharm的Terminal中执行的 python setup.py build_ext --inplace命令,还需要先重启pycharm,再在其中执行编译命令才会有效。

 

3. 上边问题解决后还有可能碰到下边问题

LINK : fatal error LNK1158: cannot run 'rc.exe'
error: command 'C:\\Program Files (x86)\\Microsoft Visual Studio 14.0\\VC\\bin\\amd64\\link.exe' failed with exit status 1158 

解决:
  错误是缺少rc.exe文件,这个文件在C:\Program Files (x86)\Windows Kits\8.1\bin\x64下,只需要将该目录下的 rc.exe 和 rcdll.dll拷贝一份粘贴到link.exe所在目录
  C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\amd64下即可。

  如果是32位系统,则是将C:\Program Files (x86)\Windows Kits\8.1\bin\x86下的rc.exe和rcdll.dll粘贴到
  C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin下

 

 

 
posted @ 2021-01-26 15:03  黑无常  阅读(198)  评论(0)    收藏  举报