我正在关注this制作我的第一个OpenCV项目,用imshow()函数显示图片。
我右键单击该项目并单击“将文件添加到...”,添加了libopencv_core.2.4.9.dylib和libopencv_highgui.2.4.9.dylib。然后我在“标题搜索路径”中添加了“/ usr / local / include”。
但是,我遇到了这个错误:“ld:找不到-lopencv_highgui.2.4.9的库”。
但是如果我在“图书馆搜索路径”中添加了“/ usr / local / lib”,那就有用了!
我的问题是:既然我已经在项目中添加了库,为什么还要添加“/ usr / local / lib”呢?
P.S。我正在使用Xcode5.1.1和OpenCV2.4.9
答案 0 :(得分:1)
您只添加了库名称本身。链接器不知道在哪里搜索它。链接器内置了一些默认搜索路径(例如/lib
或/usr/lib
),但/usr/local/lib
不是其中之一。 Historically the local path has to store local software only. /usr
可以存储在网络装载中。因此,/usr/local
上可能存在其他权限管理,因此如果ld
默认情况下会自动搜索此子目录,则可能存在安全问题。