方法一:不生效
使用apt-get install librxtx-java就可以安装部署,很简单,很方便
方法二:
each undeclared identifier is reported only once for each function it appears in
libtool: link: `/tmp/rxtx-2.2pre2/armv7l-unknown-linux-gnu/I2CImp.lo' is not a valid libtool object
- 获取源码包
cd /usr/local
wget http://rxtx.qbang.org/pub/rxtx/rxtx-2.1-7r2.zip
unzip rxtx-2.1-7r2.zip
- 编译源码
cd rxtx-2.1-7r2
#这里注意切换了用户后会跳到~目录,需要重新进入 rxtx目录,也可以在一开始就切换用户
sudo -i
cd /usr/local/rxtx-2.1-7r2
cd src
需要进入src这个目录找到RXTXCommDriver.java这个源文件。给linux添加ttyAMA端口
因为该端口是后续才有的,所以源码中没有这个端口,如果不加会识别不到该端口
cd ../
sh ./configure
make
make install
- 编译过程中可能遇到的问题
错误一:
/usr/local/rxtx-2.1-7r2/./src/RS485Imp.c:96:25: error: 'UTS_RELEASE' undeclared (first use in this function)
if(strcmp(name.release,UTS_RELEASE)!=0)
这是由于 version.h 中缺少 UTS_RELEASE 信息,需要手工添加。先获取当前系统的版本信息:
uname -r
然后在 /usr/include/linux/version.h 中添加
#define UTS_RELEASE "4.14.34-v7+"
4.14.34-v7+ 为上一步中获得的版本号.
错误二:
libtool: install: armv6l-unknown-linux-gnu/librxtxRS485.la’ is not a directory
这个错误会出现在JDK1.6及以上的运行环境下,需要对configure文件进行修改。在configure文件中找到所有的 1.2*|1.3*|1.4*|1.5*,
在文件中查找JAVA_VERSION,即可找到
在21802,21544,21614,21750行。将现有的JDK版本加入进去即可.如:改成 1.2*|1.3*|1.4*|1.5*|1.6*|1.7*|1.8* .
错误三:
libtool: link: `/usr/local/rxtx-2.1-7r2/armv7l-unknown-linux-gnu/I2CImp.lo' is not a valid libtool object
完成以上两项, make install 成功.
4.安装成功后,会显示如下信息
Libraries have been installed in:
/usr/lib/jvm/jdk-8-oracle-arm32-vfp-hflt/jre/lib/arm
/usr/bin/install -c RXTXcomm.jar /usr/lib/jvm/jdk-8-oracle-arm32-vfp-hflt/jre/lib/ext/
5.验证安装目录文件
root@raspberrypi:/# cd /usr/lib/jvm/jdk-8-oracle-arm32-vfp-hflt/jre/lib/arm
root@raspberrypi:/usr/lib/jvm/jdk-8-oracle-arm32-vfp-hflt/jre/lib/arm# ls -l|grep librxtx
-rwxr-xr-x 1 root root 70024 May 29 19:24 librxtxI2C-2.1-7.so
-rwxr-xr-x 1 root root 857 May 29 19:24 librxtxI2C.la
lrwxrwxrwx 1 root root 19 May 29 19:24 librxtxI2C.so -> librxtxI2C-2.1-7.so
-rwxr-xr-x 1 root root 47636 May 29 19:24 librxtxParallel-2.1-7.so
-rwxr-xr-x 1 root root 887 May 29 19:24 librxtxParallel.la
lrwxrwxrwx 1 root root 24 May 29 19:24 librxtxParallel.so -> librxtxParallel-2.1-7.so
-rwxr-xr-x 1 root root 71400 May 29 19:24 librxtxRaw-2.1-7.so
-rwxr-xr-x 1 root root 857 May 29 19:24 librxtxRaw.la
lrwxrwxrwx 1 root root 19 May 29 19:24 librxtxRaw.so -> librxtxRaw-2.1-7.so
-rwxr-xr-x 1 root root 70628 May 29 19:24 librxtxRS485-2.1-7.so
-rwxr-xr-x 1 root root 869 May 29 19:24 librxtxRS485.la
lrwxrwxrwx 1 root root 21 May 29 19:24 librxtxRS485.so -> librxtxRS485-2.1-7.so
-rwxr-xr-x 1 root root 166880 May 29 19:24 librxtxSerial-2.1-7.so
-rwxr-xr-x 1 root root 875 May 29 19:24 librxtxSerial.la
lrwxrwxrwx 1 root root 22 May 29 19:24 librxtxSerial.so -> librxtxSerial-2.1-7.so
root@raspberrypi:/usr/lib/jvm/jdk-8-oracle-arm32-vfp-hflt/jre/lib/arm# cd /usr/lib/jvm/jdk-8-oracle-arm32-vfp-hflt/jre/lib/ext/
root@raspberrypi:/usr/lib/jvm/jdk-8-oracle-arm32-vfp-hflt/jre/lib/ext# ls -l|grep RXTX
-rwxr-xr-x 1 root root 59356 May 29 19:24 RXTXcomm.jar
Comments | 0 条评论