amoBBS 阿莫电子论坛

 找回密码
 注册
搜索
bottom↓
查看: 674|回复: 36

总结搭建vscode+cmake+arm-linux-gcc的开发环境

[复制链接]
发表于 2020-2-4 23:33:28 | 显示全部楼层 |阅读模式
本帖最后由 redworlf007 于 2020-2-4 23:35 编辑

芯片:nuc980。
1、首先虚拟机安装Ubuntu。
2、Ubuntu上用新塘给的buildroot,制作uboot 、内核、文件系统,制作完成后,./install_bsp.sh ,安装开发包和编译链,并修改环境变量。
新塘的buildroot地址:https://github.com/OpenNuvoton/NUC970_Buildroot
3、在Ubuntu上安装cmake。
参考帖子:https://blog.csdn.net/sss_369/article/details/94666494
4、将简单的源代码,用cmake编译后,放到开发板上测试。
5、Ubuntu上安装openssh-server服务。
参考帖子:https://www.cnblogs.com/kuillldan/p/8667082.html
6、Windows10开启ssh server服务。
参考帖子:https://blog.csdn.net/weixin_43064185/article/details/90080815
7、Windows10上安装vscode。
8、VScode Remote 远程开发与调试
参考帖子:https://www.jianshu.com/p/0f2fb935a9a1
9、vscode里面添加tasks.json,tasks.json里面调用一个自己网上抄的domake.sh,然后ctrl+shif+b后调用这个sh进行编译,直接调用cmake的命令好像也行,但是我没搞定。。。
参考帖子https://blog.csdn.net/zsf211/article/details/88290113


前面在Ubuntu上把eclipse搞上,编辑和编译程序,但是感觉eclipse的编辑功能和屎一样,就又倒腾了这个。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
发表于 2020-2-5 00:29:35 来自手机 | 显示全部楼层
这样就和keil一样了吗,不要自己makefile
发表于 2020-2-5 00:45:52 | 显示全部楼层
本帖最后由 cddx 于 2020-2-5 00:47 编辑

编译错误可以定位吗?我用make编译多个文件,当出现编译错误时,无法点击错误提示后自动定位。
发表于 2020-2-5 01:59:31 | 显示全部楼层
我用vscode 超级卡,特别是装上插件,机器配置已经很高了,就是这个vscode卡。。。
发表于 2020-2-5 04:07:56 来自手机 | 显示全部楼层
不知道可否借鉴用来调试Atmel arm9,谢谢
发表于 2020-2-5 09:48:45 来自手机 | 显示全部楼层
vscode越来越好了
发表于 2020-2-5 10:22:22 | 显示全部楼层
感谢分享,收藏学习
发表于 2020-2-5 13:13:32 | 显示全部楼层
vscode可以设置仿真调试。
 楼主| 发表于 2020-2-5 13:29:37 | 显示全部楼层
18501501628 发表于 2020-2-5 00:29
这样就和keil一样了吗,不要自己makefile

这个是arm Linux上的程序,不用自己写Makefile,cmake里面会根据cmakelists.txt里面配置的源文件路径、编译器路径,自动生成Makefile文件。
 楼主| 发表于 2020-2-5 13:30:19 | 显示全部楼层
cddx 发表于 2020-2-5 00:45
编译错误可以定位吗?我用make编译多个文件,当出现编译错误时,无法点击错误提示后自动定位。 ...

下面的调试串口会告诉你哪里有问题。
 楼主| 发表于 2020-2-5 13:30:38 | 显示全部楼层
a105 发表于 2020-2-5 13:13
vscode可以设置仿真调试。

gdb我还没搞,我现在是串口打印调试。
 楼主| 发表于 2020-2-5 13:31:27 | 显示全部楼层
ersha4877 发表于 2020-2-5 04:07
不知道可否借鉴用来调试Atmel arm9,谢谢

我搞的是新塘的arm9,atmel的arm9应该是一样的,只要你把编译器路径填好,就没啥问题。
 楼主| 发表于 2020-2-5 13:32:02 | 显示全部楼层
powerk6 发表于 2020-2-5 01:59
我用vscode 超级卡,特别是装上插件,机器配置已经很高了,就是这个vscode卡。。。 ...

卡应该不是机器配置的问题,你再找找其他的原因。
发表于 2020-2-5 14:04:56 | 显示全部楼层
不错,有机会玩一下
发表于 2020-2-5 14:29:22 来自手机 | 显示全部楼层
Mark,有机会试试
发表于 2020-2-5 15:20:01 | 显示全部楼层
一直这样开发,很方便,是中小企业合适用的方案。
发表于 2020-2-5 15:28:54 | 显示全部楼层
vscode还是挺好用的
发表于 2020-2-5 20:52:20 | 显示全部楼层
楼主可以试试WSL,文件都在本地,比虚拟机方便, 不用担心虚拟机死掉。
用过这个搭配搞Micropython编译,很方便。
担心效率上WSL2
 楼主| 发表于 2020-2-6 01:30:16 来自手机 | 显示全部楼层
hell-prototypes 发表于 2020-2-5 20:52
楼主可以试试WSL,文件都在本地,比虚拟机方便, 不用担心虚拟机死掉。
用过这个搭配搞Micropython编译,很 ...

能交叉编译uboot、内核么?
发表于 2020-2-6 09:28:20 | 显示全部楼层
可以用DS-5社区版本在windows下进行ARM-LINUX的应用程序开发,DS-5也是基于eclipse环境整合而成。个人感觉eclipse还是挺好用的,各种插件都很全。只是启动稍慢,占用内存过大而已。
发表于 2020-2-6 09:45:15 | 显示全部楼层
redworlf007 发表于 2020-2-6 01:30
能交叉编译uboot、内核么?

可以的,就是个命令行的linux。
编内核要上wsl2,io速度快。
wsl的读写io有点慢,不适合内核这种大工程
发表于 2020-2-6 09:49:25 | 显示全部楼层
vscode+cmake+arm-linux-gcc
发表于 2020-2-6 11:05:01 | 显示全部楼层
不错,有机会试一下
 楼主| 发表于 2020-2-6 11:18:04 | 显示全部楼层
quzegang 发表于 2020-2-6 09:28
可以用DS-5社区版本在windows下进行ARM-LINUX的应用程序开发,DS-5也是基于eclipse环境整合而成。个人感觉e ...

eclipse那种编辑功能不行,我用了一段时间,你试试vscode,用过vscode后,再都不想用eclipse了。
 楼主| 发表于 2020-2-6 11:18:52 | 显示全部楼层
hell-prototypes 发表于 2020-2-6 09:45
可以的,就是个命令行的linux。
编内核要上wsl2,io速度快。
wsl的读写io有点慢,不适合内核这种大工程 ...

我想把Ubuntu装到一个服务器上,在服务器上编译,我的电脑不行,开着Windows再开跑着Linux,编译太慢了。。。
发表于 2020-2-6 11:28:10 | 显示全部楼层
redworlf007 发表于 2020-2-6 11:18
我想把Ubuntu装到一个服务器上,在服务器上编译,我的电脑不行,开着Windows再开跑着Linux,编译太慢了。 ...

正解。虚拟机性能损耗太大了。
发表于 2020-2-6 12:05:40 | 显示全部楼层
redworlf007 发表于 2020-2-6 11:18
eclipse那种编辑功能不行,我用了一段时间,你试试vscode,用过vscode后,再都不想用eclipse了。 ...

两种都用过哈,主要之前是用vim进行编辑,用上eclipse后觉得已经很友好了
发表于 2020-2-6 12:21:45 | 显示全部楼层
收藏了,感谢楼主经验分享
发表于 2020-2-6 12:23:36 来自手机 | 显示全部楼层
redworlf007 发表于 2020-2-6 11:18
我想把Ubuntu装到一个服务器上,在服务器上编译,我的电脑不行,开着Windows再开跑着Linux,编译太慢了。 ...

做产品肯定服务器快,如果自己玩,上服务器编内核没什么必要。
 楼主| 发表于 2020-2-7 00:12:52 | 显示全部楼层
quzegang 发表于 2020-2-6 12:05
两种都用过哈,主要之前是用vim进行编辑,用上eclipse后觉得已经很友好了

你再试试vscode,会相见恨晚的。
 楼主| 发表于 2020-2-7 00:13:27 | 显示全部楼层
hell-prototypes 发表于 2020-2-6 12:23
做产品肯定服务器快,如果自己玩,上服务器编内核没什么必要。

是做产品呀,自己的电脑,跑Windows又跑虚拟机,编译太慢了。
发表于 2020-2-7 11:03:08 | 显示全部楼层
应该可以直接在windows下面搞,换一下工具链,我目前linux应用程序都是直接windows下面搞,用eclipse+Windows下的工具链
发表于 2020-2-7 11:35:31 | 显示全部楼层
我发现我连github都上不去了,太操蛋了
 楼主| 发表于 2020-2-7 16:27:01 | 显示全部楼层
zhucezhuanyong 发表于 2020-2-7 11:03
应该可以直接在windows下面搞,换一下工具链,我目前linux应用程序都是直接windows下面搞,用eclipse+Windo ...

Windows底下eclipse+编译链我也搞好了,eclipse不好用,放弃了。。。
发表于 2020-2-7 16:35:06 | 显示全部楼层
redworlf007 发表于 2020-2-7 16:27
Windows底下eclipse+编译链我也搞好了,eclipse不好用,放弃了。。。

eclipse的编辑功能,比mdk之流强很多了,vscode我还没试过,太懒,理论上vscode也可能实现windows下面搞吧
 楼主| 发表于 2020-2-7 18:07:32 | 显示全部楼层
zhucezhuanyong 发表于 2020-2-7 16:35
eclipse的编辑功能,比mdk之流强很多了,vscode我还没试过,太懒,理论上vscode也可能实现windows下面搞 ...

一样的,vscode+cmake+工具链,Windows上甩eclipse好几条街。
发表于 2020-2-7 19:38:21 | 显示全部楼层
VScode Remote, mark, 学习一下.
友情提示:标题不合格、重复发帖,将会被封锁ID。详情请参考:论坛通告:封锁ID、获得注册邀请码、恢复被封ID、投诉必读
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|阿莫电子论坛(原ourAVR/ourDEV) ( 公安备案:44190002001997(交互式论坛) 工信部备案:粤ICP备09047143号 )

GMT+8, 2020-2-24 21:35

阿莫电子论坛, 原"中国电子开发网"

© 2004-2018 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表