Linux系统中源码安装1.8.x版本Arduino IDE

news2024/11/24 23:51:47

 本文内容参考:

Ubuntu22.04安装Arduino IDE及Arduino UNO(使用CH341驱动)调试方法__KILLMILEDC_的博客-CSDN博客

在Linux上下载arduino_不说话的白帽子的博客-CSDN博客

https://guoqing.blog.csdn.net/article/details/88913063?spm=1001.2101.3001.6650.1&utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogCommendFromBaidu%7ERate-1-88913063-blog-117020864.235%5Ev36%5Epc_relevant_default_base3&depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogCommendFromBaidu%7ERate-1-88913063-blog-117020864.235%5Ev36%5Epc_relevant_default_base3&utm_relevant_index=2

接前一篇文章:Linux系统中源码安装Arduino IDE

在上一篇文章中介绍了Arduino IDE最新版本(2.1.0)的源码安装,本文介绍老版本(1.8.x)的源码安装。

一、下载Arduino IDE安装包

1. 进入官方下载页

首先通过浏览器进入Software | Arduino。页面如下所示:

2. 选择下载版本

向下滑动页面到老版本(1.8.x),如下所示:

这里的版本是1.8.19。选择以上页面中的“Linux 64 bits”。点击之后进入以下页面:

点击“JUST DOWNLOAD” 进行下载(大小为123MB,需要一定时间)。下载完成后的文件名称为arduino-1.8.19-linux64.tar.xz,将其放置到自行指定的路径。 

3. 解压源码包

运行tar命令解压源码包。实际命令及结果如下所示:

$ tar Jxvf arduino-1.8.19-linux64.tar.xz
……
arduino-1.8.19/tools/WiFi101/tool/firmwares/NINA/1.4.7/NINA_W102-Nano_RP2040_Connect.bin
arduino-1.8.19/tools/WiFi101/tool/firmwares/NINA/1.4.7/NINA_W102.bin
arduino-1.8.19/tools/WiFi101/tool/firmwares/NINA/1.4.7/NINA_W102-Uno_WiFi_Rev2.bin
arduino-1.8.19/tools/WiFi101/tool/firmwares/NINA/1.3.0/
arduino-1.8.19/tools/WiFi101/tool/firmwares/NINA/1.3.0/NINA_W102.bin
arduino-1.8.19/tools/WiFi101/tool/firmwares/NINA/1.3.0/NINA_W102-Uno_WiFi_Rev2.bin
arduino-1.8.19/tools/WiFi101/tool/firmwares/NINA/1.2.4/
arduino-1.8.19/tools/WiFi101/tool/firmwares/NINA/1.2.4/NINA_W102.bin
arduino-1.8.19/tools/WiFi101/tool/firmwares/NINA/1.2.4/NINA_W102-Uno_WiFi_Rev2.bin
arduino-1.8.19/tools/WiFi101/tool/firmwares/NINA/1.2.2/
arduino-1.8.19/tools/WiFi101/tool/firmwares/NINA/1.2.2/NINA_W102.bin
arduino-1.8.19/tools/WiFi101/tool/firmwares/NINA/1.2.2/NINA_W102-Uno_WiFi_Rev2.bin
arduino-1.8.19/tools/WiFi101/tool/firmwares/NINA/1.4.3/
arduino-1.8.19/tools/WiFi101/tool/firmwares/NINA/1.4.3/NINA_W102.bin
arduino-1.8.19/tools/WiFi101/tool/firmwares/NINA/1.4.3/NINA_W102-Uno_WiFi_Rev2.bin
arduino-1.8.19/tools/WiFi101/tool/firmwares/NINA/1.4.0/
arduino-1.8.19/tools/WiFi101/tool/firmwares/NINA/1.4.0/NINA_W102.bin
arduino-1.8.19/tools/WiFi101/tool/firmwares/NINA/1.4.0/NINA_W102-Uno_WiFi_Rev2.bin
arduino-1.8.19/tools/WiFi101/tool/firmwares/NINA/1.0.0/
arduino-1.8.19/tools/WiFi101/tool/firmwares/NINA/1.0.0/NINA_W102.bin
arduino-1.8.19/tools/WiFi101/tool/firmwares/NINA/1.1.0/
arduino-1.8.19/tools/WiFi101/tool/firmwares/NINA/1.1.0/NINA_W102.bin
arduino-1.8.19/tools/WiFi101/tool/firmwares/NINA/1.4.1/
arduino-1.8.19/tools/WiFi101/tool/firmwares/NINA/1.4.1/NINA_W102.bin
arduino-1.8.19/tools/WiFi101/tool/firmwares/NINA/1.4.1/NINA_W102-Uno_WiFi_Rev2.bin
arduino-1.8.19/tools/WiFi101/tool/firmwares/NINA/1.4.8/
arduino-1.8.19/tools/WiFi101/tool/firmwares/NINA/1.4.8/NINA_W102-Nano_RP2040_Connect.bin
arduino-1.8.19/tools/WiFi101/tool/firmwares/NINA/1.4.8/NINA_W102.bin
arduino-1.8.19/tools/WiFi101/tool/firmwares/NINA/1.4.8/NINA_W102-Uno_WiFi_Rev2.bin
arduino-1.8.19/tools/WiFi101/tool/firmwares/NINA/1.2.3/
arduino-1.8.19/tools/WiFi101/tool/firmwares/NINA/1.2.3/NINA_W102.bin
arduino-1.8.19/tools/WiFi101/tool/firmwares/NINA/1.2.3/NINA_W102-Uno_WiFi_Rev2.bin
arduino-1.8.19/tools/WiFi101/tool/firmwares/NINA/1.4.2/
arduino-1.8.19/tools/WiFi101/tool/firmwares/NINA/1.4.2/NINA_W102.bin
arduino-1.8.19/tools/WiFi101/tool/firmwares/NINA/1.4.2/NINA_W102-Uno_WiFi_Rev2.bin
arduino-1.8.19/tools/WiFi101/tool/firmwares/NINA/1.4.6/
arduino-1.8.19/tools/WiFi101/tool/firmwares/NINA/1.4.6/NINA_W102-Nano_RP2040_Connect.bin
arduino-1.8.19/tools/WiFi101/tool/firmwares/NINA/1.4.6/NINA_W102.bin
arduino-1.8.19/tools/WiFi101/tool/firmwares/NINA/1.4.6/NINA_W102-Uno_WiFi_Rev2.bin
arduino-1.8.19/tools/WiFi101/tool/firmwares/NINA/1.2.1/
arduino-1.8.19/tools/WiFi101/tool/firmwares/NINA/1.2.1/NINA_W102.bin
arduino-1.8.19/tools/WiFi101/tool/firmwares/NINA/1.2.1/NINA_W102-Uno_WiFi_Rev2.bin
arduino-1.8.19/tools/WiFi101/tool/firmwares/NINA/1.4.5/
arduino-1.8.19/tools/WiFi101/tool/firmwares/NINA/1.4.5/NINA_W102-Nano_RP2040_Connect.bin
arduino-1.8.19/tools/WiFi101/tool/firmwares/NINA/1.4.5/NINA_W102.bin
arduino-1.8.19/tools/WiFi101/tool/firmwares/NINA/1.4.5/NINA_W102-Uno_WiFi_Rev2.bin
arduino-1.8.19/tools/WiFi101/tool/firmwares/NINA/1.4.4/
arduino-1.8.19/tools/WiFi101/tool/firmwares/NINA/1.4.4/NINA_W102.bin
arduino-1.8.19/tools/WiFi101/tool/firmwares/NINA/1.4.4/NINA_W102-Uno_WiFi_Rev2.bin
arduino-1.8.19/tools/howto.txt

查看源码内容:

$ ls arduino-1.8.19/
arduino  arduino-builder  arduino-linux-setup.sh  examples  hardware  install.sh  java  lib  libraries  revisions.txt  tools  tools-builder  uninstall.sh

二、安装Arduino IDE

1. 进入解压后的源码根目录

进入解压后的arduino-1.8.19目录,如下所示:

$ cd arduino-1.8.19/

2. 执行Arduino IDE安装脚本

以root特权执行安装脚本。实际命令及结果如下所示:

$ sudo ./install.sh 
Adding desktop shortcut, menu item and file associations for Arduino IDE...


 done!

同时在应用程序中可以看到Arduino IDE的桌面图标:

点击图标运行,可能会发生闪退。如果出现这种情况,则需要在终端下进入arduimo-1.8.19源码根目录,执行arduino看一下具体出错原因,如下所示:

penghao@Ding-Perlis-MP260S48:~/Arduino/arduino-1.8.19$ ./arduino
$ ./arduino
Picked up JAVA_TOOL_OPTIONS: 
错误的 IDE 安装文件夹: 你的 IDE 安装在项目文件夹的子文件夹内。
请将 IDE 移动到其他文件夹。

解决这个问题只需要将arduino-1.8.19文件夹版本移动到上一级目录下即可。

此时再次运行arduino,出现以下界面:

点击上图中的返回按钮或者“X”,然后还会出现几个相同错误的界面,依次都点击之后最终出现如下界面:

可以看到,上边IDE中出现的都是乱码,这说明1.8.x版本与笔者系统存在一些兼容性问题。因此还是推荐使用2.x版本。

这里还有一个问题,虽然在命令行直接运行./arduino能够启动了,但是点击桌面图标还是会闪退。解决方法如下:

编辑/usr/local/share/applications/arduino-arduinoide.desktop文件,将“Exec=”一行的内容中的路径更改为源码根目录移动之后的路径。保存修改后,再次点击图标,就和上边通过命令行运行一样了。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/578869.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【JVM】8. 对象实例化及直接内存

文章目录 8.1. 对象实例化8.1.1. 创建对象的方式8.1.2. 创建对象的步骤1. 判断对象对应的类是否加载、链接、初始化2. 为对象分配内存3. 处理并发问题4. 初始化分配到的内存5. 设置对象的对象头6. 执行init方法进行初始化 8.2. 对象内存布局8.2.1. 对象头(Header&am…

python+vue新能源汽车在线租赁管理系统pycharm项目

开发语言:Python 框架:django/flask Python版本:python3.7.7 数据库:mysql 数据库工具:Navicat 开发软件:PyCharm 在当今高度发达的信息中,信息管理改革已成为一种更加广泛和全面的趋势。 “新…

SpringBoot——原理(自动配置+原理分析@Conditional)

在上一篇有说到,进行源码跟踪时可以看见一个以Conditional开头的注解,这些都是条件装配的注解。 加在方法上时只对该方法生效,加在类上时是对整个配置类都有效。 这里只说三个常用的Conditional的子注解 案例演示 在启动类上加上一个Enabl…

第二章:ShardingSphere简介

什么是ShardingSphere 何为ShardingSphere呢?其实我们总结如下三点就能很好的理解: 1、一整套开源的分布式数据库中间件解决方案 2、有三个产品组成:Sharding-JDBC、Sharding-Proxy、Sharding-Sidecar(规划中) 3、他的定位是关系型数据库的中间件,在分布式环境下合理的…

【20】SCI易中期刊推荐——计算机信息系统工程电子与电气(中科院3区)

💖💖>>>加勒比海带,QQ2479200884<<<💖💖 🍀🍀>>>【YOLO魔法搭配&论文投稿咨询】<<<🍀🍀 ✨✨>>>学习交流 | 温澜潮生 | 合作共赢 | 共同进步<<<✨✨ 📚📚>>>人工智能 | 计算机视觉…

(转载)matlab遗传算法工具箱

以下内容大部分来源于《MATLAB智能算法30个案例分析》&#xff0c;仅为学习交流所用。 1理论基础 1.1遗传算法概述 遗传算法(genetic algorithm,GA)是一种进化算法,其基本原理是仿效生物界中的“物竞天择、适者生存”的演化法则。遗传算法是把问题参数编码为染色体,再利用迭代…

Qiskit系列(1)---Qiskit安装

1.qiskit与anaconda简介 Qiskit并不是一门独立的语言&#xff0c;它是基于Python的一个框架&#xff0c;就好比Pytorch, Tensorflow。而Qiskit这个框架需要配套一些其他的package&#xff08;各种大小DLC&#xff09;一起运行&#xff0c;这些运行Qiskit所必须的package就构成了…

vue前端分页功能怎么实现

Vue前端分页功能可以通过以下几个步骤实现&#xff1a; 1. 安装分页组件库&#xff08;如vue-pagination-2&#xff09;&#xff1a; bash npm install vue-pagination-2 2. 在Vue项目中引入并注册分页组件&#xff1a; javascript import Vue from vue; import Pagination fr…

【商品详情 +关键词搜索】API 接口系列

首先&#xff0c;大家要到官方主页去申请一个 appkey&#xff0c;这个是做什么用的呢&#xff1f;App Key 是应用的唯一标识&#xff0c;TOP 通过 App Key 来鉴别应用的身份。AppSecret 是 TOP 给应用分配的密钥&#xff0c;开发者需要妥善保存这个密钥&#xff0c;这个密钥用来…

增强语言模型导读

以ChatGPT为主的大语言模型出现已有半年时间&#xff0c;研究逐渐从针对模型本身的进化和功能&#xff0c;延展到如何更为有效地利用大模型&#xff0c;将它与其它工具结合&#xff0c;落地&#xff0c;以解决实际领域中的问题。 这里的增强主要指让大语言模型&#xff08;LM&…

【21】SCI易中期刊推荐——计算机科学人工智能领域(中科院4区)

💖💖>>>加勒比海带,QQ2479200884<<<💖💖 🍀🍀>>>【YOLO魔法搭配&论文投稿咨询】<<<🍀🍀 ✨✨>>>学习交流 | 温澜潮生 | 合作共赢 | 共同进步<<<✨✨ 📚📚>>>人工智能 | 计算机视觉…

Unity 动画系统基本概念

一、动画的基本概念 1、帧 在古代&#xff0c;一幅字画叫一帧&#xff0c;而在计算机中&#xff0c;每次渲染完毕一幅画面并显示出来&#xff0c;这一幅画就是一帧。 连续切换的帧就形成了动态的画面。每秒刷新帧的次数称为频率&#xff0c;单位是FPS&#xff08;Frames Per…

JavaEE Tomcat Servelet第一个helloworld程序

Tomcat & Servelet第一个程序helloworld&#xff01; 文章目录 JavaEE & Tomcat & 第一个Servelet程序1. HTTP服务器 - Tomcat1.1 Tomcat的目录结构&#xff1a;1.2 启动Tomcat1.3 Tomcat的优点 2. Servelet框架2.1 创建Maven项目2.2 引入依赖2.3 创建目录2.4 写代…

Mac电脑读写移动硬盘软件Tuxera NTFS2023中文版

日常工作中&#xff0c;我们经常会使用移动硬盘拷贝文件&#xff0c;因为移动硬盘传输文件方便、传输速度快。但我们在mac电脑上使用移动硬盘却发现硬盘无法正常读写。本文向大家介绍mac能读写的移动硬盘有哪些以及移动硬盘怎么在mac上读写。 一、Mac能读写的移动硬盘有哪些 移…

数据挖掘(5.1)--贝叶斯分类

目录 前言 正文 1.主观概率 2.贝叶斯定理 1.基础知识 2.贝叶斯决策准则 3.极大后验假设 4.例题 2.朴素贝叶斯分类模型 朴素贝叶斯分类器的算法描述&#xff1a; 朴素贝叶斯算法特点 3.贝叶斯信念网 贝叶斯网络的建模包括两个步骤 贝叶斯信念网特点 开往夏天的列…

C++第七章:类

类 一、定义抽象数据类型1.1 定义抽象数据类型类的用户 1.2 定义一个书籍类引入this引入const成员函数类作用域和成员函数在类的外部定义成员函数定义一个返回this对象的函数 1.3 定义类相关的非成员函数定义read和print函数最终代码 1.4 构造函数合成的默认构造函数某些类不能…

真相只有一个——真正排名

这里写目录标题 1.题目描述2.解题思路3.代码展 所属专栏&#xff1a;脑筋急转弯❤️ &#x1f680; >博主首页&#xff1a;初阳785❤️ &#x1f680; >代码托管&#xff1a;chuyang785❤️ &#x1f680; >感谢大家的支持&#xff0c;您的点赞和关注是对我最大的支持…

【论文阅读】Group Emotion Detection Based on Social Robot Perception

【论文阅读】Group Emotion Detection Based on Social Robot Perception 摘要1.介绍2.相关工作3.方法4.数据集生成5.模拟与结果6.讨论 摘要 本篇博客参考MDPI sensors 2022收录的论文Group Emotion Detection Based on Social Robot Perception&#xff0c;对其主要内容进行总…

第三期:那些年,我们一起经历过的链表中的浪漫

PS&#xff1a;每道题解题方法不唯一&#xff0c;欢迎讨论&#xff01;每道题后都有解析帮助你分析做题&#xff0c;答案在最下面&#xff0c;关注博主每天持续更新。 1. 两个链表的第一个公共节点 “我走过我的世界&#xff0c;再从你的世界走一遍” “你走过你的世界&#x…

1688商品ID采集一件代发详情页面数据

本篇博文介绍了对1688商品详情API的二次封装&#xff0c;将URL参数封装成Python函数&#xff0c;直接传入参数即可获取搜索结果&#xff0c;例如1688商品标题、价格、一件代发、sku属性和URL等。提供了详细的代码示例和接口调用Demo。 1688.item_get-获得1688商品详情数据 1.请…