码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • ARM架构源码编译RXTX LINUX JAVA串口开发项目部署


    文章目录

    • 手动编译源码原因
    • 源码下载
    • 编译源码
    • 编译中遇到的问题
      • 错误一:
      • 错误2
      • 错误3
    • 安装成功后显示
    • 验证安装目录文件
    • 总结


    手动编译源码原因

    官网不提供ARM架构的依赖包
    在这里插入图片描述


    源码下载

    wget http://rxtx.qbang.org/pub/rxtx/rxtx-2.1-7r2.zip
    
    • 1

    解压

    unzip rxtx-2.1-7r2.zip
    
    • 1

    编译源码

    cd rxtx-2.1-7r2
    
    ./configure --build=arm-linux
    
    make
    
    make install
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    解压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)
    
    • 1
    • 2

    这是由于 version.h 中缺少 UTS_RELEASE 信息,需要手工添加。先获取当前系统的版本信息:

    uname -r
    
    • 1

    在这里插入图片描述
    然后在 /usr/include/linux/version.h 中添加

    #define UTS_RELEASE "5.10.0"
    
    • 1

    在这里插入图片描述

    错误2

    libtool: install: armv6l-unknown-linux-gnu/librxtxRS485.la’ is not a directory
    
    • 1

    这个错误会出现在JDK1.6及以上的运行环境下,需要对configure文件进行修改。在configure文件中找到所有的 1.2*|1.3*|1.4*|1.5* ,将现有的JDK版本加入进去即可.如:改成 1.2*|1.3*|1.4*|1.5*|1.6*|1.7*|1.8* .

    修改命令

    vim configure
    #按下 : 进入命令行模式。
    %s/1\.2\*|1\.3\*|1\.4\*|1\.5\*/&|1\.6*|1\.7*|1\.8*/g
    #该命令将会在整个文件范围内查找匹配项并进行替换。其中,% 表示全部行,s/1\.2\*|1\.3\*|1\.4\*|1\.5\*/&|1\.6*|1\.7*|1\.8*/g 是替换命令,其中 \. 和 \* 用于转义字符.和*,& 表示匹配到的内容本身,g 用于全局匹配替换。
    #按下回车键执行替换命令。
    
    • 1
    • 2
    • 3
    • 4
    • 5

    错误3

    RawImp.c可能在编译中会找不到sys/io.h文件
    将这个改成sys/uio.h就可以了

    vim RawImp.c
    
    :65
    
    # sys/io.h -> sys/uio.h
    
    • 1
    • 2
    • 3
    • 4
    • 5

    在这里插入图片描述
    在这里插入图片描述

    安装成功后显示

    在这里插入图片描述

    验证安装目录文件

    在这里插入图片描述
    在这里插入图片描述
    解决方案来源于arm64 源码编译rxtx(java实现串口依赖库)-亲测有效

    总结

    经过以上配置编译可以实现生成开发所需的串口依赖库

  • 相关阅读:
    十几张高清世界地图
    C++人事管理系统
    echarts图表 实现高度按照 内容撑起来或者超出部分滚动展示效果
    Python笔记 · Python语言的“动态性”
    计算物理专题----蒙特卡洛积分实战
    松江主机联网方案
    猿创征文|【云原生 | 24】Docker运行数据库实战之MongoDB
    【 Linux 】密钥对登录Ubuntu 20.04
    跟羽夏学 Ghidra ——初识
    Jetpack Compose 1.5 发布:全新 Modifier 系统助力性能提升
  • 原文地址:https://blog.csdn.net/weixin_44063083/article/details/132823776
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号