似水的流年
2017-12-31
2974浏览量
又找到另一种处理方法,可直接在系统中make编译RXTX源码安装
最新的RXTX稳定版本是rxtx 2.1-7r2。首先用wget获取源码包并解压
cd /tmp wget http://rxtx.qbang.org/pub/rxtx/rxtx-2.1-7r2.zip unzip rxtx-2.1-7r2.zip如果直接MAKE编译安装,可能会遇到以下两种错误:
uname -r然后在/usr/include/Linux/version.h中添加
#define UTS_RELEASE "3.10.24+"3.10.24+为上一步中获得的版本号
1.2*|1.3*|1.4*|1.5*这一行,在后边添加上当前JDK的版本号即可,如
1.2*|1.3*|1.4*|1.5*|1.6*|1.7*|1.8*完成以上两项修改后,就可以正常编译安装了。如果看到 Libraries have been installed in:/usr/lib/jvm/jdk-7-Oracle-armhf/jre/lib/arm 则说明RXTX安装已经成功。
./configure make make install
注意:可能会有权限不足的情况,需要chmod 777 test.c操作
(这里需要注意的是,在Linux系统中,大部分的串口名称为/dev/ttyS*,但再特殊环境下如本次使用的raspberrypi,使用RXTX方法获得串口集合是不成功的,原因是RXTX本身源码问题,找了好久的原因,终于在RXTX官网上找到了解释:
Please note that on Ubuntu 11.04, the Arduino Uno and possibly others are recognised as /dev/ttyACMxx . The RXTX library only searches through /dev/ttySxx, so you need to make symlinks if your distro does the same, so for example ln -s /dev/ttyACM0 /dev/ttyS00 .即RXTX本身支持的Linux串口搜索只限制为/dev/ttyS*等,其他名称的并不能支持,而raspberrypi中的串口名称为/dev/ttyACM*,故无法找到系统串口。这种情况下有两种解决方案:
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
集结各类场景实战经验,助你开发运维畅行无忧