首页
找靠谱产品
找解决方案
找靠谱公司
找案例
找对的人
专家智库
悬赏任务
SAAS
ToB门户
了解全球最新的ToB事件
论坛
潜水/灌水快乐,沉淀知识,认识更多同行。
ToB圈子
加入IT圈,遇到更多同好之人。
微博
Follow
记录
Doing
博客
Blog
文库
业界最专业的IT文库,上传资料也可以赚钱
下载
分享
Share
排行榜
Ranklist
相册
Album
应用中心
qidao123.com ToB IT社区-企服评测·应用市场
»
论坛
›
数据库
›
SQL-Server
›
xenomai情况下开源实时数控体系LinuxCNC EtherCAT编译安 ...
返回列表
发新帖
xenomai情况下开源实时数控体系LinuxCNC EtherCAT编译安装
[复制链接]
发表于 2025-11-23 23:05:11
|
显示全部楼层
|
阅读模式
LinuxCNC是一款基于Linux利用体系的开源实时数控体系,可将平凡盘算机变革为高效的CNC(盘算机数字控制)呆板,本文记载xenomai下linuxcnc的构建简朴记载,xenomai下构建无特殊之处,重要参考链接https://www.linuxcnc.org/docs/devel/html/code/building-linuxcnc.html。
1.情况
软硬件情况
桌面情况:Ubuntu 24.04+xenomai3.3
硬件:rk3588(nanoPi R6/T6)
对xenomai内核要求
要在使linuxcnc在xenomai上运行,内核设置Local version必须是-xenomai,即CONFIG_LOCALVERSION="-xenomai",如许linuxcnc编译设置时才气辨认xenomai情况,否则不实时。
General setup ---> (-xenomai) Local version - append to kernel release
复制
代码
利用uname -a下令确认:
对xenomai库要求
如果你须要编译天生linuxcnc debian安装包,由于天生linuxcnc debian安装包过程中会处置处罚库的安装依赖天生依赖信息,这就要求xenomai库文件libcobalt.so属于某个debian包,普通的说要求我们的xenomai库也是通过debian包安装的,而不是直接make install这种方式直接安装的,否则会产生如下雷同错误。
dpkg-shlibdeps: error: no dependency information found for /usr/xenomai/lib/libcobalt.so.2 (used by debian/linuxcnc-uspace/usr/lib/libuspace-xenomai.so.0)
复制
代码
办理方式1:xenomai通过构建debian库来安装,可以参考本博客其他文章编译构建xenomai库debian安装包
办理方式2:找到Debian/rules,打开之后找到override_dh_shlibdeps,在dpkg-shlibdeps那一行末了加上如下选项:
--dpkg-shlibdeps-params=--ignore-missing-info
复制
代码
以忽依赖信息。
安装依赖包
先安装依赖的工具和库,我遇到的有这些,差别的情况有差别,堕落再对应安装不具备的即可。
sudo apt install pkg-config build-essential automake libtool m4 autoconf libudev-dev libmodbus-dev libusb-1.0-0-dev libgpiod-dev libglib2.0-dev libgtk-3-dev yapps2 intltool libboost-dev python3-dev libboost-python-dev gtkwave bwidget tclx libeditreadline-dev python3-pip python3-tk libglu1-mesa-dev libxmu-dev asciidoc devscripts debhelper libtirpc-dev libtirpc-common tcl8.6-dev tk8.6-dev python3-opengl python3-full
复制代码
2.本地编译linuxcnc
起首须要安装该工具( sudo apt install git )然后拉取代码,如下所示:
$ git clone https://github.com/LinuxCNC/linuxcnc.git linuxcnc-source-dir
复制代码
设置
拉代码天生设置文件
$ git clone https://github.com/LinuxCNC/linuxcnc.git linuxcnc-source-dir
$ cd linuxcnc-source-dir/src$ ./autogen.sh
复制代码
天生得configure,它须要许多可选参数。通过运行以下下令列出configure的全部参数:
$ cd linuxcnc-source-dir/src
$ ./configure --help
复制代码
最常用的参数是:
--with-realtime=uspace
为任何实时平台或非实时平台构建。天生的 LinuxCNC 可实行文件将在带有 Preempt-RT 补丁的 Linux 内核(提供实时呆板控制)宁静凡(未打补丁)Linux 内核(提供 G 代码模拟,但不提供实时呆板控制)上运行。
如果安装了 Xenomai(通常来自 libxenomai-dev 软件包)或 RTAI(通常来自名称以 “rtai-modules ”开头的软件包)的开发文件,也将启用对这些实时内核的支持。
--with-realtime=/usr/realtime-$VERSION
利用旧的“内核实时”模子构建 RTAI 实时平台。这要求您在/usr/realtime-$VERSION中安装 RTAI 内核和 RTAI 模块。天生的 LinuxCNC 可实行文件将仅在指定的 RTAI 内核上运行。
--enable-build-documentation
除了可实行文件之外,还构建
文档
。此选项会显着增长了编译所需的时间,由于构建
文档
非常耗时。如果不须要构建
文档
,则可省略此参数。
--disable-build-documentation-translation
禁用为全部可用语言构建翻译文档。翻译文档的构建须要泯灭大量时间,因此如果不是真正须要的话,发起跳过它。
$ ./configure --with-realtime=uspace --enable-build-documentation
....
checking for xeno-config... /usr/bin/xeno-config
checking for realtime
API
(s) to use... uspace+xenomai
...
######################################################################
# LinuxCNC - Enhanced Machine Controller #
######################################################################
# #
# LinuxCNC is a software system for computer control of machine #
# tools such as milling machines. LinuxCNC is released under the #
# GPL. Check out http://www.linuxcnc.org/ for more details. #
# #
# #
# It seems that ./configure completed successfully.
复制代码
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
本帖子中包含更多资源
您需要
登录
才可以下载或查看,没有账号?
立即注册
×
回复
使用道具
举报
返回列表
温锦文欧普厨电及净水器总代理
+ 我要发帖
登录后关闭弹窗
登录参与点评抽奖 加入IT实名职场社区
去登录
微信订阅号
微信服务号
微信客服(加群)
H5
小程序
快速回复
返回顶部
返回列表