我正在Mac 中使用brew安装libusb
brew 安装 libusb
链接步骤失败如下
Error: The `brew link` step did not complete successfully The formula built, but is not symlinked into /usr/local
Could not symlink lib/libusb-1.0.0.dylib
Target /usr/local/lib/libusb-1.0.0.dylib already exists.
You may want to remove it: rm '/usr/local/lib/libusb-1.0.0.dylib'
To force the link and overwrite all conflicting files: brew link
--overwrite libusb
Run Code Online (Sandbox Code Playgroud)
所以我删除了现有的 libusb
须藤rm'/usr/local/lib/libusb-1.0.0.dylib'
然后做了一个链接
酿造链接--覆盖libusb
链接不起作用,下面显示错误
错误:无法符号链接 lib/libusb-1.0.0.dylib
/usr/local/lib 不可写。
如果我尝试
须藤酿造链接--覆盖libusb
相反,这也不起作用。我错过了什么?
我使用的是 OSX El Capitan 版本 10.11.4 (15E65)
如果事情似乎不起作用homebrew,我的一般策略是首先尝试:
brew doctor
Run Code Online (Sandbox Code Playgroud)
并按照好医生的建议去做。
如果失败,我倾向于卸载东西,通常使用--force它确实可以很好地清理并删除旧版本。所以,在你的情况下:
brew rm libusb --force
Run Code Online (Sandbox Code Playgroud)
然后重新安装“unhappy”包。所以,在你的情况下:
brew install libusb
Run Code Online (Sandbox Code Playgroud)
在评论中回答您的新问题。您的安装看起来是正确的,因为libusb它不是一个可执行程序——它只是一个没有任何相关命令行工具的库——所以当你运行which libusb.
您可以使用以下命令查看包的组成部分:
brew ls libusb
/usr/local/Cellar/libusb/1.0.20/include/libusb-1.0/libusb.h
/usr/local/Cellar/libusb/1.0.20/lib/libusb-1.0.0.dylib
/usr/local/Cellar/libusb/1.0.20/lib/pkgconfig/libusb-1.0.pc
/usr/local/Cellar/libusb/1.0.20/lib/ (2 other files)
Run Code Online (Sandbox Code Playgroud)
而且,如您所见,被/usr/local/bin调用中没有独立的可执行程序,libusb只有
pkgconfig工具信息因此,如果您想针对 编译和链接应用程序libusb,您可以pkg-config像这样运行以找出“包含路径”和链接器详细信息
pkg-config --cflags --libs libusb
-I/usr/local/Cellar/libusb-compat/0.1.5/include \
-I/usr/local/Cellar/libusb/1.0.20/include/libusb-1.0 \
-L/usr/local/Cellar/libusb
Run Code Online (Sandbox Code Playgroud)
这意味着您的编译命令将如下所示:
gcc yourApp.c $(pkg-config --cflags --libs libusb) -o yourApp
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
8689 次 |
| 最近记录: |