编译成功了,运行为什么会失败_cython编译python

编译成功了,运行为什么会失败_cython编译python编译caffe2遇到的坑最新的caffe2已经移到pytorch中去了,直接下载其中的代码然后按照官方教程就可以了。这里会遇到新的问题:make[3]:Enteringdirectory‘/home/ubuntu/caffe2-master/build’make[3]:Leavingdirectory‘/home/ubuntu/caffe2-master/build’…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全家桶1年46,售后保障稳定

编译caffe2源码遇到的坑


最新的caffe2 已经移到pytorch中去了,直接下载其中的代码然后按照官方教程就可以了。

编译遇到的问题:

make[3]: Entering directory '/home/ubuntu/caffe2-master/build'
make[3]: Leaving directory '/home/ubuntu/caffe2-master/build'
make[3]: Entering directory '/home/ubuntu/caffe2-master/build'
[ 92%] Linking CXX executable ../bin/mpi_test
/usr/bin/ld: CMakeFiles/mpi_test.dir/mpi/mpi_test.cc.o: undefined reference to symbol '_ZN3MPI8Datatype4FreeEv'
//usr/lib/libmpi_cxx.so.1: error adding symbols: DSO missing from command line
collect2: error: ld returned 1 exit status
caffe2/CMakeFiles/mpi_test.dir/build.make? recipe for target 'bin/mpi_test' failed
make[3]: *** [bin/mpi_test] Error 1
make[3]: Leaving directory '/home/ubuntu/caffe2-master/build'
CMakeFiles/Makefile2:2654: recipe for target 'caffe2/CMakeFiles/mpi_test.dir/all' failed
make[2]: *** [caffe2/CMakeFiles/mpi_test.dir/all] Error 2
make[2]: Leaving directory '/home/ubuntu/caffe2-master/build'
Makefile:140: recipe for target 'all' failed
make[1]: *** [all] Error 2
make[1]: Leaving directory '/home/ubuntu/caffe2-master/build'
Makefile:4: recipe for target 'all' failed
make: *** [all] Error 2

Jetbrains全家桶1年46,售后保障稳定

问题出在MPI的链接问题中。

因此你需要修改的文件如下:
pytorch->caffe2->CMakefiles.txt
添加如下到最后行就可以了:

SET(CMAKE_C_COMPILER mpicc)
SET(CMAKE_CXX_COMPILER mpicxx)
include_directories(MPI_INCLUDE_PATH)
target_link_libraries(mpi_test ${MPI_LIBRARIES})

测试遇到的问题

再输入测试时候会遇到问题:
python -c 'from caffe2.python import core'
发现不能import caffe2_pb,这一步其实是因为路径存在问题。
如果你位于PATH_TO/pytorch/build
你就会发现,可以解决了,因此你需要把这个目录加载到PYTHONPATH中去。
具体方法:
echo 'export PYTHONPATH=$PYTHONPATH:PATH_TO/pytorch/build' >> ~/.bashrc
中去。然后
source ~/.bashrc
就可以了。

其中PATH_TO需要根据你自己的电脑上的目录操作。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/226862.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Pytest(1)安装与入门「建议收藏」

    Pytest(1)安装与入门「建议收藏」pytest介绍pytest是python的一种单元测试框架,与python自带的unittest测试框架类似,但是比unittest框架使用起来更简洁,效率更高。根据pytest的官方网站介绍,它

    2022年7月31日
    7
  • TTL与RS-232电平转换芯片MAX232/MAX3232「建议收藏」

    TTL与RS-232电平转换芯片MAX232/MAX3232「建议收藏」TTL电平标准:输出L:2.4V             输入L:2.0V RS-232标准:逻辑1的电平为-3~-15V,逻辑0的电平为+3~+15V    MAX232供电电压只能是5V的,也就是说对于3.3V的系统,最好采用宽电压的MAX3232,电压范围3V~5V,而管脚是兼容的,只是电容的选取有所不同。 电容的选取如下:

    2022年8月10日
    10
  • win10+cuda11.0+vs2019安装教程[通俗易懂]

    转自:https://www.jianshu.com/p/1fd15d2408bf?utm_campaign=hugo第一步:检查显卡支持的cuda版本1.第一种方法:win+R打开cmd,输入nvidia-smi,我的显卡是nvidia2070super,支持的cuda版本是11.0图1cmd查看显卡支持的cuda版本2.第二种方法:搜索框输入nvidia,出现nvidia控制面板,打开帮助中的系统信息,选择组件,出现cuda版本信息。第二步:安装vs2019.

    2022年4月12日
    586
  • 常用电容分类_电容电阻

    常用电容分类_电容电阻一、瓷介电容器(CC)1.结构用陶瓷材料作介质,在陶瓷表面涂覆一层金属(银)薄膜,再经高温烧结后作为电极而成。瓷介电容器又分1类电介质(NPO、CCG));2类电介质(X7R、2X1)和3类电介质(Y5V、2F4)瓷介电容器。2.特点1类瓷介电容器具有温度系数小、稳定性高、损耗低、耐压高等优点。最大容量不超过1000pF,常用的有CC1、…

    2022年8月22日
    10
  • SAP与金税连接有两种方式:组件接口及文本接口。

    SAP与金税连接有两种方式:组件接口及文本接口。SAP与金税连接有两种方式:组件接口及文本接口。文本接口为例:1、SAP取发票数据,主要来自合同,销售订单,交货单,发票,客户供应商主数据等2、SAP处理:合并,拆分,折扣等3、导出TXT文本4、金税开票机读取文本:通过参数传递数据,注意1分钱误差问题(参数传递导致)5、回写收票方名称出具发票地址的增强BADI:IDGTCN_CUST_ADDR接口回传后将金税发票号回写对应的…

    2022年6月10日
    44
  • invalid python sdk怎么办_pycharm一直创建虚拟环境

    invalid python sdk怎么办_pycharm一直创建虚拟环境解决pycharm创建虚拟环境时出现的invalidpythonSDK问题

    2022年8月27日
    62

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号