我试图利用LibUSB与我建造的小型可编程LED设备进行互动。我使用libusb-win32端口在Windows上运行代码,但是我无法将其移植到MAC。
我已将LibUSB克隆到本地git存储库并使用XCode编译它认为是MAC上的首选方法。经过一些挖掘(包括显示隐藏的Library
文件夹)后,看起来XCode输出到/Users/jon/Library/Developer/Xcode/DerivedData/libusb-ekndohtauywugtgjlolqmmdyoafq/Build/Products/Debug/libusb-1.0.0.dylib
。
所以我的问题是,我怎样才能在XCode中创建一个简单的控制台应用程序(或其它方法,如果有更简单的方法),在该库中链接并从libusb库中调用函数(例如libusb_init(libusb_context **ctx);
)?
答案 0 :(得分:2)
不是使用Xcode从头开始构建libusb,而应该以传统方式构建它(就像在Linux上一样),或者更好的是,从Homebrew或MacPorts预先构建它。然后以正常方式将相关的标题和库添加到Xcode项目中。
答案 1 :(得分:0)
我已经沮丧了几天,现在尝试在我的Xcode项目中使用libusb。它开始很简单: 1.从github下载libusb-1.0.20; 2.运行.configure,.make和.install - 没有错误; 3.将libusb.dylib从/ usr / local / lib拖到我选择复制选项的项目中。 Xcode自动将libusb.dylib添加到Linked Frameworks和Libraries; 4.将libusb.h从构建目录拖到我的项目中
在我将应用程序提交到应用商店之前,Project会构建并运行没有错误。然后我了解到dlopen正在尝试从/usr/local/lib/libusb.dylib加载。此外,如果我将dylib文件显式添加到复制文件构建阶段,Xcode只会将dylib文件复制到我的目标包。
在阅读了大量文档后,我发现没有简单的方法让dlopen从我的应用程序包中加载库。商店应用必须完整。用户无法在其系统上安装libusb。
谢谢, 鲍勃赖斯