- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我正在使用以下示例:https://github.com/caplin/jnijnaexamples/tree/master/jna
在 mac 中,我可以按如下方式创建 .dylib 文件:
gcc -shared -fpic -o librandomjna.o randomjna.c
g++ -dynamiclib -undefined suppress -flat_namespace *.o -o librandomjna.dylib
mkdir classes
javac -d classes -classpath jna-4.4.0.jar JavaNativeAccess.java
cd classes
export LD_LIBRARY_PATH=.
java -classpath jna-4.4.0.jar:. com.enlightedinc.apps.where.utils.JavaNativeAccess
现在在Linux Box中,我创建的.so文件如下
gcc -shared -fpic -o librandomjna.o randomjna.c
gcc -shared -o librandomjna.so *.o
In the same way, new classes are generated in Linux mkdir classes
javac -d classes -classpath jna-4.4.0.jar JavaNativeAccess.java
cd classes
export LD_LIBRARY_PATH=.
java -classpath jna-4.4.0.jar:.com.enlightedinc.apps.where.utils.JavaNativeAccess
现在,当我尝试在这个 Ubuntu 框中执行代码时,出现以下错误Exceptionjava.lang.UnsatisfiedLinkError:查找函数“randomNumber”时出错:./librandomjna.so: undefined symbol :randomNumber
我们将不胜感激任何帮助。
谢谢卡尼斯卡
最佳答案
首先,尝试以下操作:
export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:.
然后,确保你的 so 文件包含你期望的内容
nm librandomjna.so | grep rand
关于java - JNA 代码在 OSx 中运行良好,但无法在 Linux 中从 C 共享对象文件中查找函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45366115/
嗨,我正在考虑开发一种文件传输程序,想知道我是否想要尽可能好的加密,我应该使用什么? 我会用 C# 开发它,所以我可以访问 .net 库 :P在我的 usb 上有一个证书来访问服务器是没有问题的,如果
我创建的这个计算两个数组的交集是线性的方法的复杂度(在良好、平均、最差的情况下)? O(n) public void getInt(int[] a,int[] b){ int i=0; int
我已经能够使用 RTCPeerConnection.getStats() API 获得 WebRTC 音频调用的各种统计信息(抖动、RTT、丢包等)。 我需要将整体通话质量评为优秀、良好、一般或差。
基本问题: 如果我正在讲述/修改数据,我应该通过索引硬编码索引访问文件的元素,即 targetFile.getElement(5);通过硬编码标识符(内部翻译成索引),即 target.getElem
在 Linux 上,我想知道要调用什么“C”API 来获取每个 CPU 的统计信息。 我知道并且可以从我的应用程序中读取 /proc/loadavg,但这是系统范围的负载平均值,而不是每个 CPU 的
在客户端浏览器中使用 fetch api,GET 或 POST 没有问题,但 fetch 和 DELETE 有问题。它似乎将 DELETE 请求方法更改为 OPTIONS。 大多数研究表明是一个cor
我是一名优秀的程序员,十分优秀!