There are probably three areas you will need to focus on:
configure.in
src/SerialImp.c src/SerialImp.h src/ParallelImp.c
RXTXCommDriver.java (just addthe ports for your OS)
移植提示步骤,resource 目录下操作
Edit configure.in,
run autoconf,
run configure,
run make
问题1:修改configure.in和configure内部的jdk版本选择,我的版本为jdk1.8.0_162。
解决1:最后一行添加1.6* 1.7* 1.8* 保证版本选择
Linux)
LDFLAGS=$LDFLAGS" -lpthread"
check_kernel_headers
check_java_headers
CFLAGS=$CFLAGS" -D__need_timespec"case$JAVA_VERSIONin1.2*|1.3*|1.4*|1.5*|1.6*|1.7*|1.8*)
问题2:执行autoconf无此命令?(rpm安装类似)
解决2:sudo apt-get install autoconf
问题3:执行过程报此错误?
conftest.c:8:9:error:'UTS_RELEASE' undeclared (first use in this function)
printf(UTS_RELEASE"\n");
^
conftest.c:8:9:note: each undeclared identifier is reported only once for each function it appears in
conftest.c:8:20:error: expected ')' before string constant
printf(UTS_RELEASE"\n");
解决3:
获取版本指令:uname -r
root@htnice:/usr/java/jdk1.8.0_162/bin# uname -r3.4.39
然后在/usr/include/linux/version.h中添加#define UTS_RELEASE "3.4.39"
问题4:自己gcc调试编译so库提示找不到jni.h
解决4:参考链接 https://www.jianshu.com/p/e860170df83a,我们只需要按步骤走就可以,编译过程中自行执行了指令