总结搭建vscode+cmake+arm-linux-gcc的开发环境
本帖最后由 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的编辑功能和屎一样,就又倒腾了这个。
本帖最后由 cddx 于 2020-2-5 00:47 编辑
编译错误可以定位吗?我用make编译多个文件,当出现编译错误时,无法点击错误提示后自动定位。 我用vscode 超级卡,特别是装上插件,机器配置已经很高了,就是这个vscode卡。。。 不知道可否借鉴用来调试Atmel arm9,谢谢 vscode越来越好了 感谢分享,收藏学习 vscode可以设置仿真调试。 18501501628 发表于 2020-2-5 00:29
这样就和keil一样了吗,不要自己makefile
这个是arm Linux上的程序,不用自己写Makefile,cmake里面会根据cmakelists.txt里面配置的源文件路径、编译器路径,自动生成Makefile文件。 cddx 发表于 2020-2-5 00:45
编译错误可以定位吗?我用make编译多个文件,当出现编译错误时,无法点击错误提示后自动定位。 ...
下面的调试串口会告诉你哪里有问题。 a105 发表于 2020-2-5 13:13
vscode可以设置仿真调试。
gdb我还没搞,我现在是串口打印调试。 ersha4877 发表于 2020-2-5 04:07
不知道可否借鉴用来调试Atmel arm9,谢谢
我搞的是新塘的arm9,atmel的arm9应该是一样的,只要你把编译器路径填好,就没啥问题。 powerk6 发表于 2020-2-5 01:59
我用vscode 超级卡,特别是装上插件,机器配置已经很高了,就是这个vscode卡。。。 ...
卡应该不是机器配置的问题,你再找找其他的原因。 不错,有机会玩一下 Mark,有机会试试 一直这样开发,很方便,是中小企业合适用的方案。 vscode还是挺好用的 楼主可以试试WSL,文件都在本地,比虚拟机方便, 不用担心虚拟机死掉。
用过这个搭配搞Micropython编译,很方便。
担心效率上WSL2 hell-prototypes 发表于 2020-2-5 20:52
楼主可以试试WSL,文件都在本地,比虚拟机方便, 不用担心虚拟机死掉。
用过这个搭配搞Micropython编译,很 ...
能交叉编译uboot、内核么? 可以用DS-5社区版本在windows下进行ARM-LINUX的应用程序开发,DS-5也是基于eclipse环境整合而成。个人感觉eclipse还是挺好用的,各种插件都很全。只是启动稍慢,占用内存过大而已。 redworlf007 发表于 2020-2-6 01:30
能交叉编译uboot、内核么?
可以的,就是个命令行的linux。
编内核要上wsl2,io速度快。
wsl的读写io有点慢,不适合内核这种大工程 vscode+cmake+arm-linux-gcc 不错,有机会试一下 quzegang 发表于 2020-2-6 09:28
可以用DS-5社区版本在windows下进行ARM-LINUX的应用程序开发,DS-5也是基于eclipse环境整合而成。个人感觉e ...
eclipse那种编辑功能不行,我用了一段时间,你试试vscode,用过vscode后,再都不想用eclipse了。 hell-prototypes 发表于 2020-2-6 09:45
可以的,就是个命令行的linux。
编内核要上wsl2,io速度快。
wsl的读写io有点慢,不适合内核这种大工程 ...
我想把Ubuntu装到一个服务器上,在服务器上编译,我的电脑不行,开着Windows再开跑着Linux,编译太慢了。。。 redworlf007 发表于 2020-2-6 11:18
我想把Ubuntu装到一个服务器上,在服务器上编译,我的电脑不行,开着Windows再开跑着Linux,编译太慢了。 ...
正解。虚拟机性能损耗太大了。 redworlf007 发表于 2020-2-6 11:18
eclipse那种编辑功能不行,我用了一段时间,你试试vscode,用过vscode后,再都不想用eclipse了。 ...
两种都用过哈,主要之前是用vim进行编辑,用上eclipse后觉得已经很友好了 收藏了,感谢楼主经验分享
redworlf007 发表于 2020-2-6 11:18
我想把Ubuntu装到一个服务器上,在服务器上编译,我的电脑不行,开着Windows再开跑着Linux,编译太慢了。 ...
做产品肯定服务器快,如果自己玩,上服务器编内核没什么必要。 quzegang 发表于 2020-2-6 12:05
两种都用过哈,主要之前是用vim进行编辑,用上eclipse后觉得已经很友好了
你再试试vscode,会相见恨晚的。 hell-prototypes 发表于 2020-2-6 12:23
做产品肯定服务器快,如果自己玩,上服务器编内核没什么必要。
是做产品呀,自己的电脑,跑Windows又跑虚拟机,编译太慢了。 应该可以直接在windows下面搞,换一下工具链,我目前linux应用程序都是直接windows下面搞,用eclipse+Windows下的工具链 我发现我连github都上不去了,太操蛋了{:mad:} zhucezhuanyong 发表于 2020-2-7 11:03
应该可以直接在windows下面搞,换一下工具链,我目前linux应用程序都是直接windows下面搞,用eclipse+Windo ...
Windows底下eclipse+编译链我也搞好了,eclipse不好用,放弃了。。。 redworlf007 发表于 2020-2-7 16:27
Windows底下eclipse+编译链我也搞好了,eclipse不好用,放弃了。。。
eclipse的编辑功能,比mdk之流强很多了,vscode我还没试过,太懒,理论上vscode也可能实现windows下面搞吧 zhucezhuanyong 发表于 2020-2-7 16:35
eclipse的编辑功能,比mdk之流强很多了,vscode我还没试过,太懒,理论上vscode也可能实现windows下面搞 ...
一样的,vscode+cmake+工具链,Windows上甩eclipse好几条街。 VScode Remote, mark, 学习一下. 我有NUC972的板子,也这样搞搞试下。 不要祸害坛友入门到放弃,我们只爱单片机 zhucezhuanyong 发表于 2020-2-7 16:35
eclipse的编辑功能,比mdk之流强很多了,vscode我还没试过,太懒,理论上vscode也可能实现windows下面搞 ...
是的,一旦用过,就再也不想碰Keil, IAR之类的IDE了,我是图省事,直接装的IAR for eclipse插件,省得去折腾环境了 dragonbbc 发表于 2020-3-4 11:03
是的,一旦用过,就再也不想碰Keil, IAR之类的IDE了,我是图省事,直接装的IAR for eclipse插件,省得去 ...
eclipse我也用了,但是用过vscode,就觉得eclipse是辣鸡。。。 redworlf007 发表于 2020-3-5 01:20
eclipse我也用了,但是用过vscode,就觉得eclipse是辣鸡。。。
vscode能在线调试吗?看寄存器值之类的 dragonbbc 发表于 2020-3-5 08:54
vscode能在线调试吗?看寄存器值之类的
Linux我是用vscode,要调试用gdb插件
stm32我是用vscode+iar插件,看寄存器可以用iar看,我看寄存器比较少,当然你可以用vscode+gcc来调试。 我用vs2015 +visualgdb + vassistx插件,好用 我也是这么做的 耶! 但是最近在弄qt 我不知道怎么添加在vscode 中添加QT 插件。。。。 powerk6 发表于 2020-2-5 01:59
我用vscode 超级卡,特别是装上插件,机器配置已经很高了,就是这个vscode卡。。。 ...
你是啥配置。我装了 40个左右插件的情况下,windows下 很流畅,但是虚拟机里装了ubuntu下用vsc 就不是太流畅。尤其是 很长时间不关机 imjacob 发表于 2020-3-25 12:48
你是啥配置。我装了 40个左右插件的情况下,windows下 很流畅,但是虚拟机里装了ubuntu下用vsc 就不是 ...
Macbook pro i7,16G,虚拟机里跑的,打开都卡,别的程序不卡 赞,vs的remote真是神器 本帖最后由 imjacob 于 2020-3-26 10:34 编辑
powerk6 发表于 2020-3-25 17:56
Macbook pro i7,16G,虚拟机里跑的,打开都卡,别的程序不卡
那你的配置应该不错啊,是不是给虚拟机内存,核分少了。我的配置和你相当。9代i7,32G 内存。给虚拟机分配3个核6线程, 12G 内存.
跑久了,还卡,确实vsc对配置要求有些高了 请教楼主,nuc980的开发资料是否开源?是不是和全志一样资料获取很费劲? vscode 是否支持Ubuntu-32位系统sshd登录? 牛逼,标记一个,找个时间试一下 meirenai 发表于 2020-3-25 22:44
请教楼主,nuc980的开发资料是否开源?是不是和全志一样资料获取很费劲?
新塘官网还有github上新塘都公开资料了。 vscode快宇宙无敌了:-D vscode 很牛的说 多谢 啦啦啦啦啦啦啦啦 难道就我一个人在用slickedit么? 天马行空 发表于 2020-3-29 14:13
难道就我一个人在用slickedit么?
你这只是个编辑器而已吧,类似于什么sublime, notepad++之类的。
难道就我一个人在用ST自家的TrueStudio么? VSCODE remote牛叉,再也不用把LINUX 文件夹通过SAMBA映射到WINDOWS上了 vscode不错。。。 天马行空 发表于 2020-3-29 14:13
难道就我一个人在用slickedit么?
slickedit +1 基于vscode的codespaces以后可以让你在任何设备上开发。开发环境、编译部署啥的都可以在云端。随便哪里都可以打开自己的熟悉的开发环境。
用vscode开发确实很爽,代码提示和自动纠错让你编程非常流畅。 jasonzhu8888 发表于 2020-6-13 18:50
基于vscode的codespaces以后可以让你在任何设备上开发。开发环境、编译部署啥的都可以在云端。随便哪里都可 ...
好的,我去看看。 liangerfan 发表于 2020-3-5 14:57
我用vs2015 +visualgdb + vassistx插件,好用
我之前也是这么用的 不过就是virsualgdb有点贵啊 兄台用的啥版本 最新的貌似没有xx法把?而且 看帖子说 这个插件有很多坑 就算表面x了 可能运行起来依然有问题啊 hell-prototypes 发表于 2020-2-5 20:52
楼主可以试试WSL,文件都在本地,比虚拟机方便, 不用担心虚拟机死掉。
用过这个搭配搞Micropython编译,很 ...
WSL是啥? redworlf007 发表于 2020-3-5 13:10
Linux我是用vscode,要调试用gdb插件
看起来 应该是编译可以remote吧这个?本地要是想调试 还是得靠着keil iar啥的来?单片机开发 没有办法方便打断点读寄存器 开发要蛋疼… redworlf007 发表于 2020-6-14 00:01
好的,我去看看。
这个还在内测阶段。github提供的功能 jasonzhu8888 发表于 2020-6-14 09:52
这个还在内测阶段。github提供的功能
那等先驱者先测试好。 JeffreySun 发表于 2020-3-29 15:23
你这只是个编辑器而已吧,类似于什么sublime, notepad++之类的。
难道就我一个人在用ST自家的TrueStudio ...
TrueStudio+1 redworlf007 发表于 2020-3-5 13:10
Linux我是用vscode,要调试用gdb插件
请问,是不是使用cmake,嵌入linux开发是否可以不用虚拟机linux了?直接在windows下开发? fengyunyu 发表于 2020-10-28 13:41
请问,是不是使用cmake,嵌入linux开发是否可以不用虚拟机linux了?直接在windows下开发? ...
Windows下的vscode远程登陆Linux虚拟机。 redworlf007 发表于 2020-10-28 15:48
Windows下的vscode远程登陆Linux虚拟机。
esp32的开发已经可以不用虚拟机了 fengyunyu 发表于 2020-10-28 15:54
esp32的开发已经可以不用虚拟机了
ESP32开发哪种比较方便除了ESP-IDF? fengyunyu 发表于 2020-10-28 15:54
esp32的开发已经可以不用虚拟机了
Linux上的程序,你如果用go语言开发,也不需要虚拟机,直接Windows上编程,然后直接编译为arm linux上的应用程序。 redworlf007 发表于 2020-10-28 21:18
Linux上的程序,你如果用go语言开发,也不需要虚拟机,直接Windows上编程,然后直接编译为arm linux上的 ...
(引用自74楼)
有没有搭建教程 hxke 发表于 2022-8-26 23:18
有没有搭建教程
(引用自75楼)
B站上it营的go视频不错,看看,简单得很。 redworlf007 发表于 2022-8-26 23:36
B站上it营的go视频不错,看看,简单得很。
(引用自76楼)
谢谢,我看这里的交叉编译教程https://blog.51cto.com/u_10125763/3697480
是要先编译1.4版本再编译高版本。如果要编译nuc972的go程序,是不是要按这个网址的教程来?
还有如果要交叉编译cgo的话,要怎么配置? 全栈大神。 本帖最后由 redworlf007 于 2022-8-27 11:07 编辑
hxke 发表于 2022-8-27 00:03
谢谢,我看这里的交叉编译教程https://blog.51cto.com/u_10125763/3697480
是要先编译1.4版本再编译高版 ...
(引用自77楼)
我应用程序都是用go写的,没有用交叉编译。
编译成arm平台的,你在编译命令里面加上参数就好了。 hxke 发表于 2022-8-27 00:03
谢谢,我看这里的交叉编译教程https://blog.51cto.com/u_10125763/3697480
是要先编译1.4版本再编译高版 ...
(引用自77楼)
不用编译go,直接安装了就能用,你看it营的视频,你看的那些帖子都过时了。 hxke 发表于 2022-8-27 00:03
谢谢,我看这里的交叉编译教程https://blog.51cto.com/u_10125763/3697480
是要先编译1.4版本再编译高版 ...
(引用自77楼)
GOOS=linux GOARCH=arm GOARM=5 go buildmain.go
你编译的时候这么输入命令,及编译从成了arm v5 内核Linux上运行的程序了。 redworlf007 发表于 2022-8-27 13:00
GOOS=linux GOARCH=arm GOARM=5 go buildmain.go
你编译的时候这么输入命令,及编译从成了arm v5 内核 ...
(引用自81楼)
谢谢,已搭建好环境{:handshake:} 谢谢大大教学 Thank you ! vscode+cmake+arm-linux-gcc
留个抓印 wazhiyi 发表于 2022-12-9 14:25
vscode+cmake+arm-linux-gcc
留个抓印
(引用自84楼)
vim不香么 Franso 发表于 2022-12-16 14:20
vim不香么
(引用自85楼)
惭愧,我倒现在没整明白VIM
页:
[1]