linux安装语言总是waiting,node的serialport在arm的Linux安装血泪史之我太难了
0.序
本人在arm的Linux系统上serialport耗时5天,现在想想都头皮发麻!
下面我简单说一下过程,由于error时没有截图留档,关于出现的error,我就用语言描述一下,要是有什么不理解可以给我留言哈~~当然本文要有错误请严厉批评!
1.我的node是v12.18.3版本
2.系统里必须要有python2.xx,不能是python3.xx
3.一定要有gcc编译器呀!!(没有也要想办法搞出来,node-gyp必须要这东西)
1.全局安装node-gyp
npm install node-gyp -g
装这个node-gyp是为了编译重建bindings.node,说这个可能早了,但是全局装node-gyp是必须的,那为了使用它指令,我们还必须建立软连接
sudo ln -s ~/node/node-v12/bin/node-gyp /usr/bin/node-gyp
现在软连接建立完毕,可以在全局的任何个地方使用node-gyp rebuild 。
我们检查一下~/node/node-v12/lib/node_modules/node-gyp/gyp/pylib/gyp中是否有filecmp.py(我到git上看node-gyp源码,没有提供这py文件),如果没有,就根据你系统内的python版本,将python文件夹下lib里的filecmp.py复制到上面提到的文件夹下,缺少这个filecmp.py会报错
!!!报错:找不到filecmp.py~~~~balabalah
2.设置系统时间
这一步非常重要,系统时间不正确,node-gyp rebuild的时候会出现可怕的秒数倒计时
date //查看系统时间
date -s "2019-7-9 10:00:00" //设置系统时间
hwclock -w //写入硬件系统(非常关键,因为忽略这一步耗费我一天)
hwclock //查看系统时间,确保正确
snyc //同步一下
3.安装serialport
这一步也是让我迷醉得花里胡哨,我到现在觉得能装上也是巧合。
根据其提供文档,我们在需要安装serialport的文件夹下使用以下指令(必须这么输,默认你有package.json了):
sudo npm install serialport --unsafe-perm --build-from-source
如果安装上了那就大大大大幸
如果出现了报错
!!!报错:找不到filecmp.py~~~~balabalah
我们先npm uninstall serialport
然后重装npm(我是这样弄出来的,比较玄学)
sudo npm cache clean -f
sudo npm install npm -g
再执行
sudo npm install serialport --unsafe-perm --build-from-source
4.node-gyp rebuild
node-gyp rebuild会产生一个build文件夹,里面有Release等文件夹,Release中有bindings.node(上面提到),这个是serialport必须要用的
我们进到~/port/node_modules/@serialport/bindings里面应该有一个binding.gyp文件,这是node-gyp rebuild必须有的(npm上有说),在该文件夹下执行
node-gyp rebuild
好,此时应该生成了bindings.node文件,现在去新建一个js文件,require这个模块,并console.log,若执行则成功。
5.血泪史
1.系统时间没有设置,导致wating了很久
2.没有filecmp.py
3.重复装卸serialport
4.没有gcc编译器,node-gyp rebuild执行不了
linux安装语言总是waiting,node的serialport在arm的Linux安装血泪史之我太难了相关推荐
- linux下图像分析程序,三 - Linux+C语言:数字图像处理源程序_Linux编程_Linux公社-Linux系统门户网站...
main.c的源程序: #include #include #include //包含BMP文件的结构的声明 #include "BMP.h" //包含BMP文件的读写操作的函数 ...
- c语言编写弹窗提示是否确认退出_世人觉得C语言和C++太难?没前途?过来人告诉你真相...
因为有些伙伴对C++并不了解,所以这里就简要介绍一下. 很多人对C++语言都存在误解,以为C++就是C语言的扩展,包括我自己,最开始学习C++时也是这么认为的,一是因为名字太像了,然后C++面向过程部 ...
- 通过GPO的方式解决win10系统无法安装语言包
通过GPO的方式解决win10系统无法安装语言包 最近使用win10系统的用户反应,想安装一个英语美国的语言包,结果基本输入法.手写和语音都不能安装,显示错误代码的故障现象,针对这样的问题该怎么办?如 ...
- 【项目安装】electron项目中 sqlite3包下载失败,无法安装
[背景] electron 项目使用sqlite3 运行报错[Cannot find module '/node_modules/sqlite3/lib/binding/electron-v11.0- ...
- r语言工作路径linux,R语言实用基础知识_工作路径-注释-安装和卸载R包_2019-12-01...
R语言的实用基础知识有很多,都是我在工作和学习中所整理的,有的是看书整理的,也有的是从网络上的各种博客.各种资源获取的,所以我采用日更的方式进行支持整理和更新,希望能够帮到屏幕前的你! 今天是我日更的 ...
- linux go语言运行环境,安装Go语言运行环境
安装Go运行环境,如果从旧版本的Go进行升级,必须先删除现有版本. 1. 二进制包安装 下载包 cd /usr/local/src wget https://storage.googleapis.co ...
- 云服务器,Linux上安装xampp,搭建node服务,云服务器Firewalld、iptables,nginx反向代理
目录 写在前面的 前期准备 下载xampp: xampp安装步骤 1.首先链接远程linux服务器 2.xshell终端执行安装命令 3.启动:xampp服务 4.访问数据库,修改数据库密码 安装守护 ...
- 云服务器,Linux上安装xampp来搭建node,api
目录 下载xampp: xampp安装步骤 安装守护进程pm2 服务器上启动node服务 Debian 10(Buster)上安装Firewalld 服务器的安全组规则,开放端口 linux查看自己的 ...
- linux R语言 安装
R安装有多种方式,使用yum或者源码编译安装,我用的是下载源码压缩文件,然后配置编译安装的. 安装过程: 1.下载 我在root文件夹下创建了一个install的文件夹,把我下载的东西都放在那 创建i ...
最新文章
- 剑指offer系列之十:二进制中1的个数
- SQLite添加列的限制
- Java接口和Java抽象类的认识
- 阿里巴巴成立首个IoT生态联盟 将打通技术标准
- oracle捕捉所有异常,如何捕获和处理特定的Oracle异常?
- html把图片定位在盒子中心,html – CSS在图像的右上角定位一个图标
- 神泣单机服务器维护,神泣9.0网游单机版网单一键服务端 魔王归来
- vscode配置python2和python3_VS Code中配置python版本以及Python多版本
- Android 系统javadoc符 注释/**@hide*/
- android avrcp处理流程,(VR虚拟现实)Android 蓝牙AVRCP功能的实现.doc
- Python程序设计实验——2.掷骰子游戏
- 怎么看服务器cpu温度命令_ubuntu 命令行下查看及监测CPU温度的方法
- ByPass Mode(略过模式或旁路模式)
- 反客为主:巧妙用grldr冒名顶替ntldr引导XP/Ubuntu
- python中fetch_python 异步 fetch demo
- 如何手机桌面加计算机,教你自制手机、电脑壁纸|手机一键加字、加光晕特效,4步搞定!...
- 青椒跳槽三线高校后,副教授变教授、140平房子到手、老婆入编...
- 最老程序员创业开发实训2---采用MVC架构的应用Splash页面实现
- java 实现word转pdf
- 利用Memory窗口查看内存信息