TXRX串口通信RAM版自己编译

2023-11-10

引言:目前 javaxcomm(旧) gunio(新),目前rxtx-2.1-7-bins-r2.zip版本为32位的win或者x86或者x386,mfz-rxtx-2.2-32位-64位.rar有64位。但是不支持ARM架构的。

  1. 下载source源码
    http://mvnrepository.com/

  2. 阅读学习移植指导文件
    学习链接 http://blog.chinaunix.net/uid-20544507-id-3494422.html
    阅读学习移植指导文件

  3. 移植指导提示关注文件

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 add the ports for your OS)
  1. 移植提示步骤,resource 目录下操作
Edit configure.in, 
run autoconf, 
run configure, 
run make
  1. 执行编译遇到的问题和解决
    参考 https://blog.csdn.net/cheng157507947/article/details/44039821
问题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_VERSION in

    1.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 -r
3.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,我们只需要按步骤走就可以,编译过程中自行执行了指令

6.make编译过程
可以看到生成相应的so库文件
这里写图片描述
7.so库的位置
这里写图片描述
8.执行make install 指令,自行安装到jdk目录里面
这里写图片描述
9.注意,未调试验证,不知是都可靠
10.附送,ARM-linux相关设备信息相关查询指令
接入usb设备状态
这里写图片描述
查看内存信息
这里写图片描述
log相关信息
这里写图片描述
简单信息指令
这里写图片描述
安装autoTool
这里写图片描述
膜拜大神:https://blog.csdn.net/cheng157507947/article/details/43764623
https://blog.csdn.net/cheng157507947/article/details/44039821

简单拷包脚本(.bat):

@echo off
::查看JDK的安装路径
::set java_home
echo %JAVA_HOME% > jdk.txt
echo %rxtxParallel% >> jdk.txt
echo %rxtxSerial% >> jdk.txt
echo %RXTXcomm% >> jdk.txt
SET rxtxParallel=\jre\bin\rxtxParallel.dll"
SET rxtxSerial=\jre\bin\rxtxSerial.dll"
SET RXTXcomm=\jre\lib\ext\RXTXcomm.jar"
SET rxtxParallel="%JAVA_HOME%%rxtxParallel%
SET rxtxSerial="%JAVA_HOME%%rxtxSerial%
SET RXTXcomm="%JAVA_HOME%%RXTXcomm%
echo "开始拷贝rxtxParallel.dll文件"
copy rxtxParallel.dll %rxtxParallel%
echo "开始拷贝rxtxSerial.dll文件"
copy rxtxSerial.dll %rxtxSerial%
echo "开始拷贝RXTXcomm.dll文件"
copy RXTXcomm.jar %RXTXcomm%
echo "拷贝完成"
pause
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

TXRX串口通信RAM版自己编译 的相关文章

  • docker容器大小远大于实际大小

    我正在尝试从中构建图像debian latest 构建后 报告的图像虚拟大小来自docker images命令为 1 917 GB 我登录查看尺寸 du sh 大小为 573 MB 我很确定这么大的尺寸通常是不可能的 这里发生了什么 如何获
  • jq中如何分组?

    这是 json 文档 name bucket1 clusterName cluster1 name bucket2 clusterName cluster1 name bucket3 clusterName cluster2 name bu
  • 在脚本内使用不带密码的 sudo

    由于某种原因 我需要作为用户在没有 sudo 的情况下运行脚本 script sh 该脚本需要 root 权限才能工作 我认为将 sudo 放入 script sh 中是唯一的解决方案 让我们举个例子 script sh bin sh su
  • 如何使用 GOPATH 的 Samba 服务器位置?

    我正在尝试将 GOPATH 设置为共享网络文件夹 当我进入 export GOPATH smb path to shared folder I get go GOPATH entry is relative must be absolute
  • 如何在 Bash 中给定超时后终止子进程?

    我有一个 bash 脚本 它启动一个子进程 该进程时不时地崩溃 实际上是挂起 而且没有明显的原因 闭源 所以我对此无能为力 因此 我希望能够在给定的时间内启动此进程 如果在给定的时间内没有成功返回 则将其终止 有没有simple and r
  • “make install”将库安装在 /usr/lib 而不是 /usr/lib64

    我正在尝试在 64 位 CentOS 7 2 上构建并安装一个库 为了这个目的我正在跑步 cmake DCMAKE BUILD TYPE Release DCMAKE INSTALL PREFIX usr DCMAKE C COMPILER
  • php exec 返回的结果比直接进入命令行要少

    我有一个 exec 命令 它的行为与通过 Penguinet 给 linux 的相同命令不同 res exec cd mnt mydirectory zcat log file gz echo res 当将命令直接放入命令行时 我在日志文件
  • 监视目录的更改

    很像一个类似的问题 https stackoverflow com questions 112276 directory modification monitoring 我正在尝试监视 Linux 机器上的目录以添加新文件 并希望在这些新文
  • 子目录中的头文件(例如 gtk/gtk.h 与 gtk-2.0/gtk/gtk.h)

    我正在尝试使用 GTK 构建一个 hello world 其中包括以下行 include
  • C++ Boost ASIO 简单的周期性定时器?

    我想要一个非常简单的周期性计时器每 50 毫秒调用我的代码 我可以创建一个始终休眠 50 毫秒的线程 但这很痛苦 我可以开始研究用于制作计时器的 Linux API 但它不可移植 I d like使用升压 我只是不确定这是否可能 boost
  • Fortran gfortran linux 中的“分段错误(核心转储)”错误

    我正在创建一个程序 该程序将分析目录中的文件 fits 然后它将在另一个目录中创建另一个文件 txt 它只是一个转换器 当我尝试执行该程序 编译正常 时 它给了我一条错误消息 程序收到信号 SIGSEGV 分段错误 无效的内存引用 此错误的
  • NUMA 在虚拟内存中是如何表示的?

    有许多资源 https en wikipedia org wiki Non uniform memory access从硬件角度描述NUMA的架构性能影响 http practical tech com infrastructure num
  • 高效的内存屏障

    我有一个多线程应用程序 其中每个线程都有一个整数类型的变量 这些变量在程序执行期间递增 在代码中的某些点 线程将其计数变量与其他线程的计数变量进行比较 现在 我们知道在多核上运行的线程可能会无序执行 一个线程可能无法读取其他线程的预期计数器
  • 警告:请求的映像平台 (linux/amd64) 与检测到的主机平台 (linux/arm64/v8) 不匹配

    警告 请求的映像平台 linux amd64 与检测到的主机平台 linux arm64 v8 不匹配 并且未请求特定平台 docker 来自守护程序的错误响应 无法选择具有功能的设备驱动程序 gpu 我在 mac 上尝试运行此命令时遇到此
  • Awk - 计算两个文件之间的每个唯一值和匹配值

    我有两个文件 首先 我尝试获取第 4 列中每个唯一字段的计数 然后匹配第二个文件的第二列中的唯一字段值 File1 第 4 列的每个唯一值和 File2 第 2 列包含我需要在两个文件之间匹配的值 所以本质上 我试图 gt 如果 file2
  • 如何在 GNU/Linux 上设置 Subversion (SVN) 服务器 - Ubuntu [关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我有一台运行 Ubuntu 的笔记本电脑 我想将其用作 Subversion 服务器 既让我自己在本地承诺 也让其他人远程承诺 要使其
  • Linux 上的 RTLD_LOCAL 和dynamic_cast

    我们有一个由应用程序中的一些共享库构成的插件 我们需要在应用程序运行时更新它 出于性能原因 我们在卸载旧插件之前加载并开始使用新插件 并且只有当所有线程都使用旧插件完成后 我们才卸载它 由于新插件和旧插件的库具有相同的符号 我们dlopen
  • 捕获数据包后会发生什么?

    我一直在阅读关于网卡捕获数据包后会发生什么的内容 我读得越多 我就越困惑 首先 我读过传统上 在网卡捕获数据包后 它会被复制到内核空间中的一个内存块 然后复制到用户空间 供随后处理数据包数据的任何应用程序使用 然后我读到了 DMA 其中 N
  • X11 模式对话框

    如何使用 Xlib 在 X11 中创建模式对话框 模态对话框是一个位于应用程序其他窗口之上的窗口 就像瞬态窗口一样 并且拒绝将焦点给予应用程序的其他窗口 在 Windows 中 当试图从模态窗口夺取焦点时 模态也会通过闪 烁模态窗口的标题栏
  • PyPI 上的轮子平台约束有什么限制吗?

    是否有任何地方 PEP 或其他地方 声明关于 Linux 轮子上传范围的限制 PyPI http pypi io 应该有 具体来说 上传是否被认为是可接受的做法linux x86 64轮子到 PyPI 而不是manylinux1 x86 6

随机推荐

  • Arduino MQTT客户端库PubSubClient快速入门

    文章目录 目的 基础说明 示例代码 总结 目的 MQTT是比较常用在物联网设备中的通讯协议 这篇文章将使用 Arudino ESP32 作为MQTT客户端进行通讯使用演示 目前Arduino的MQTT客户端库中最常使用的是 PubSubCl
  • Swin Transformer:层次化视觉Transformer

    目录 论文下载地址 代码下载地址 论文作者 模型讲解 背景介绍 模型解读 总体结构 Swin Transformer模块 非重叠窗口的自注意力 连续Swin Transformer块中的移位窗口分区 移位的高效批量计算 网络结构 结果分析
  • python 函数

    函数是组织好的 可重复使用的 用来实现单一 或相关联功能的代码段 函数能提高应用的模块性 和代码的重复利用率 Python提供了许多内置函数 比如print 我们也可以自己创建函数 这被叫做用户自定义函数 定义函数的语法 def 函数名 参
  • 201632位matlab下载_Matlab R2016a x32

    之前小编为大家提供了matlab 2016a x64的下载 本来以为新版本不再支持32位系统了 不过官方还是很负责任地推出了支持xp win7等系统的matlab 2016a 32位版 新版本新增了模拟机器人系统 原型机器人算法以及机器人学
  • matlab常用分布极大似然估计函数用法(含例子实现)

    本博文源于matlab概率论运用 学过 概率论 的同学都知道 极大似然估计一般用于区间估计的 而matlab已经将其封装好由我们自己调用 参数估计的MATLAB函数 函数 功能 mu sigma muci sigmaci normfit x
  • 使用ScrollView实现下拉刷新(一)

    转载自 http blog csdn net a6920502 article details 8759244 使用ListView来做下拉刷新有很多例子 而且封装的很好 ListView有 header 但是如果不使用ListView的下
  • 使用C++完成以栈为基础的简易计算器,并使用Qt5制作可视化界面

    使用C 完成以栈为基础的简易计算器 并使用Qt5制作可视化界面 一 计算器内部逻辑构造 在完成计算器时选用栈数据结构 自己编写的和标准模板库中的都可 要求支持加减乘除和逻辑与或非运算 可计算整数和小数 这一部分有很多思路都可以实现 我的写法
  • C语言-操作环境变量

    20180216 c语言操作环境变量 使用C语言操作环境变量 获取环境变量内容 char getenv char name 参数 name欲获取的环境变量名称 返回值 环境变量值 NULL表示没有找到环境变量 设置环境变量 int pute
  • 【直播预告】Stable Diffusion篇

    08月23日 18 30 19 30 大淘宝技术与DataFun联合策划了本次活动 邀请阿里巴巴大淘宝技术应用开发工程师赤燕老师分享 Stable Diffusion WebUI 从零基础到入门 欢迎大家按时收看直播 赤燕 淘天集团 大淘宝
  • Windows系统打完补丁之后,CRM异步服务没了?

    此部署中缺少一个或多个服务器角色 昨天应公司安全部门要求要给windows系统打补丁 做安全测试 自从CRM安装之后 windows的补丁就没有安装过 就先拿测试环境试试 顺风顺水的打完补丁 登录CRM访问正常 登录服务器 服务都正常启动了
  • 【Linux】Linux8安装docker图文详细步骤以及常用指令

    Docker 是一个开源的应用容器引擎 让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中 然后发布到任何流行的Linux或Windows操作系统的机器上 也可以实现虚拟化 切换到源目录 备份原来的源 root localhost d
  • 【Unity实用小方法】鼠标双击的判断

    using UnityEngine using System Collections public class DoubleClick MonoBehaviour 计时器 在一定的时间内双击有效 private float time 0f
  • 耗时两周手撸了一个 RPC 轮子,是驴子是马拉出来遛遛

    手撸 RPC 轮子系列文章目录 从零开始造 RPC 轮子系列 01 我为什么要去造一个轮子 从零开始造 RPC 轮子系列 02 演示轮子 是驴是马拉出来遛遛 TODO 从零开始造 RPC 轮子系列 03 完事具备 只差一个环境搭建 TODO
  • 《软件测试》第二章 软件开发的过程

    软件测试 第二章 软件开发的过程 2 1 产品的组成部分 2 1 1 软件产品需要多少投入 2 1 2 软件产品由哪些部分组成 2 2 软件项目成员 2 3 软件开发生命周期模式 2 3 1 大爆炸模式 2 3 2 边写边改模式 2 3 3
  • 使用自定义过滤器-Filter--实现对权限的控制

    提示 大牛大佬们就没必要垂阅了 如果很幸运的被大佬翻牌了 也希望能够给出指教 3Q 关于权限控制即包含功能权限 数据权限 我们使用的方式可谓多种多样 通过自定义注解编写AOP方式或是使用第三方提供好的框架如 shiro 或 springse
  • 计算机cpu针脚,cpu针脚弯了怎么办 cpu针脚弯了解决方法【详解】

    经常使用电脑我们就应该掌握一些方法技巧 那有时候我们经常会听说cpu针脚弯了大家怎么识别是不是弯了 最有效的办法是看主板CPU 插座 正规厂家都会有标识 我们可以认识的去看说明 那大家知道cpu针脚弯了我们应该怎么去处理呢 下面小编就给大家
  • 使用 mysql-5.7.35-1.el7.x86_64.rpm-bundle.tar在阿里云服务器使用CentOS 7进行安装

    使用wget https downloads mysql com archives get p 23 file mysql 5 7 35 1 el7 x86 64 rpm bundle tar下载所需的安装包 使用tar xvf mysql
  • 有关时间的相关方法(时间格式化、日期差等)

    时间格式化 将时间转化为 年 月 日 function dateFormatConversion inputTime var date new Date inputTime var y date getFullYear var m date
  • 计算机视觉学生论文,计算机视觉方面论文参考文献

    计算机视觉方面论文参考文献 发布日期 2020 12 30 所属栏目 论文发表指导 计算机视觉是一门研究如何使机器 看 的科学 更进一步的说 就是是指用摄影机和电脑代替人眼对目标进行识别 跟踪和测量等机器视觉 并进一步做图形处理 使电脑处理
  • TXRX串口通信RAM版自己编译

    引言 目前 javaxcomm 旧 gunio 新 目前rxtx 2 1 7 bins r2 zip版本为32位的win或者x86或者x386 mfz rxtx 2 2 32位 64位 rar有64位 但是不支持ARM架构的 下载sourc