Linux 在Ubuntu上的eclipse中链接本机hidapi和libusb-1.0库
我是Ubuntu新手,在网上搜索了两天,尝试了很多解决方案,但还没有任何运气。如果有人能帮上忙,我将不胜感激 我在Windows上用eclipse用Java编写了一个程序。我的程序使用Java hidapi库,它是C版本hidapi库(.dll)的Java包装器。在eclipse中,通过将JavaHIDAPI添加到构建路径并将C hidapi设置为本机库,一切正常 现在我想在Ubuntu上做同样的事情。使用相同的JavaHIDAPI,现在将使用Linux的C版本hidapi库(一个.so文件)。在为Linux制作C版本的hidapi库时,我需要另一个名为libusb-1.0的库(hidapi需要它来处理低级通信)。因此,我安装了libusb-1.0(现在我在/usr/lib/i386 linux-gnu下有一个libusb-1.0.So文件),为linux制作了C版本的hidapi库。我有一个小的C程序,我在bash下测试它,它可以工作,所以我相信直到现在,所有的东西,libsub-1.0.so和Linux libhidapi-jni.so的C版本hidapi库都安装/生成正确,运行小型C程序时,系统能够找到共享的libusb-1.0.so库,而无需明确说明libsub-1.0的位置(这很有意义,因为libusb-1.0安装在系统加载程序将始终搜索的位置) 所以我去看日食。我导入eclipse工作空间,将Java hidapi添加到构建路径(就像我在Windows中所做的那样),将Linux的C版本hidapi库(即.so文件)移动到一个名为“lib”的文件夹中(本机库的.dll版本也位于该文件夹中)。我通过“构建路径”->“配置构建路径”->“库”选项卡->“本机库位置”将本机库设置为“lib”。因此,到目前为止,这两个本机库是:/usr/lib/i386 linux gnu下的libusb-1.0和/lib下的hidapi.So。最后,我在源代码中添加了两行: System.loadLibrary(“usb-1.0”);//这条线叫A System.loadLibrary(“hidapi jni”);//请拨打B线 我将该程序作为Java应用程序运行。它在A行报告“java.lang.UnsatisfiedLinkError:java.library.path中没有usb-1.0”。因此我猜java运行时无法找到libsub-1.0的位置 为了澄清,我已经做了以下试验,但没有一个有效Linux 在Ubuntu上的eclipse中链接本机hidapi和libusb-1.0库,linux,eclipse,libusb-1.0,java.library.path,hidapi,Linux,Eclipse,Libusb 1.0,Java.library.path,Hidapi,我是Ubuntu新手,在网上搜索了两天,尝试了很多解决方案,但还没有任何运气。如果有人能帮上忙,我将不胜感激 我在Windows上用eclipse用Java编写了一个程序。我的程序使用Java hidapi库,它是C版本hidapi库(.dll)的Java包装器。在eclipse中,通过将JavaHIDAPI添加到构建路径并将C hidapi设置为本机库,一切正常 现在我想在Ubuntu上做同样的事情。使用相同的JavaHIDAPI,现在将使用Linux的C版本hidapi库(一个.so文件)。