MacOS 安装 convnet的几个问题

本文档详细列举了在MacOS系统中安装convnet时遇到的几个典型问题,包括文件找不到、uint未定义、cmake安装opencv报错、X11相关问题以及ucontext.h错误。针对这些问题,提供了相应的解决方法,如调整文件路径、修改头文件、安装XQuartz以及定义_XOPEN_SOURCE宏等。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1. 类似fatal error: 'jpeglib.h' file not found或者 X11/Xlib.h找不到这种文件找不到的问题。

  原因:该文件引入路径不对,可能是电脑上不存在这类文件,更多可能是该类文件指向不对。

   解决方法:此时一般需要先找出该文件所在位置,然后再建立相应的映射,如软链接ln -s XXX XXX这种做法

2.编译convnet时,报uint没定义这种错误

    原因:某个头文件定义类uint这种类型,但是没有生效,可能定义在#ifdef这种条件下,因为ifdef的原因没有生效。这种时候可能不会报错信息会指向libcudamat_conv.so类似文件,但实质性错误不在这,注意认真查看错误信息。

     解决方法:针对性对找到头文件,将#ifdef这种判断条件去除,直接定义uint等

3.cmake安装opencv报错

Linking CXX shared library ../../lib/libopencv_cudev.dylib
ld: warning: directory not found for option '-L/Users/
xxx/Downloads/opencv-3.0.0-beta/-Wl,/usr/local/cuda'
ld: can't map file, errno=22 file '/usr/local/cuda' for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make[2]: *** [lib/libopencv_cudev.3.0.0.dylib] Error 1
make[1]: *** [modules/cudev/CMakeFiles/opencv_cudev.dir/all] Error 2
make: *** [all] Error 2

  原因:因为路径不一致导致链接出错

  解决方法:有人这么做:http://stackoverflow.com/questions/23327694/compiling-opencv-2-4-9-with-cuda-on-mavericks和这种http://blogs.wcode.org/2014/10/howto-install-build-and-use-opencv-macosx-10-10/

   我妥协了该种做法:brew install opencv。。。

4.在convnet文件夹下,使用make命令,找不到X11的很多资料

   解决方法:安装XQuartz,即彻底安装X11.

5./usr/include/ucontext.h:43:2: error: The deprecated ucontext routines require _XOPEN_SOURCE to be defined
   #error The deprecated ucontext routines require _XOPEN_SOURCE to be defined

 解决方法:http://duriansoftware.com/joe/PSA%3a-avoiding-the-%22ucontext-routines-are-deprecated%22-error-on-Mac-OS-X-Snow-Leopard.html



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值