Ubuntu+ visual studio + visualGdb
一、环境:
Linux主机(host):Ubuntu14.04
Windows 开发环境:win10+visual studio Community 2017+ visualGDB5.4R2
开发板(target):imx6
为了方便开发arm linux 的app应用,方便仿真。其实ubuntu下装eclipse也是可以的,前提是不要装虚拟机,在虚拟机下开发一般会比较卡。
一般编写代码有几种形式,需要仿真的话就用gdb
- linux下装smba共享,windows下写代码。Linux访问,编译和仿真调试都在linux进行
- windows下写代码,然后手动ftp或者ssh scp到linux编译。
gdb仿真可以手动命令模式,也可以借助一些IDE来完成。vs2017+visualGDB就是采用第2种模式(推荐),并在IDE上集成了GDB调试。前期配好了,后面会方便。示意图如下。
二、准备工具
1.windows:visualGDB+visual studio
IP:192.168.0.34
2.linux host:
① 交叉编译工具链:arm-linux-gnueabihf-xxx
② ssh client ,sshd(server)
IP:192.168.0.167
3.target borad:在visualGDB下也叫Deploy machine,需要安装ssh sshd 以及配置静态IP(或分配固定IP), 交叉编译的 gdbserver(放在/usr/bin/)
IP:192.168.0.77
三、安装环境
1.window下的环境安装,主要是visual studio(2017)+ visualGDB,其中visualGDB不是免费的。但是可以试用,不过… 这个一般不会有问题,官网下载安装就是了。
需要注意的是要开启,使用C++的linux开发选项。
2.linux host下,需要安装ssh sshd,我的系统是Ubuntu14.04,这些都是有的。服务开起来就是了。
交叉编译工具链,开发板商或者原厂提供的。
3.target下:安装gdbserver,这个需要在Ubuntu主机上手动交叉编译安装。
步骤:
① 查看交叉编译工具链下gdb版本,我的是7.6.1,就去下载对应gdb源码(ftp://sourceware.org/pub/gdb/releases/):
# arm-linux-gnueabihf-gdb --version
② 交叉编译gdb和gdbserver
解压,进入目录下
配置Makefile
# export CC=arm-linux-gnueabihf-gcc
# ./configure --prefix=/home/fzy/gdb-build --host=arm-linux-gnueabihf --target=arm-none-linux-gnueabihf --disable-werror
# make
以上会报错:termcap问题,于是下载ftp://ftp.gnu.org/gnu/termcap/termcap-1.3.1.tar.gz
③ 交叉编译termcap库:
# ./configure --target=arm-none-linux-gnueabihf --prefix=/home/fzy/termcap-build
# make
# make install
把编译好的libtermcap.a, termcap.h 放在交叉编译工具链对应的目录bin下面的xx
重新编译第②步骤,并进入到../gdb-7.6.1/gdb/gdbserver目录下同样方法编译gdbserver
④ 进入到gdb/gdbserver 下把gdbserver拷贝到target下的/usr/bin下
四、使用visualGDB新建工程
参考官网指导https://visualgdb.com/tutorials/linux/3machine/
五、其他配置
1.arm linux下配置静态ip
参考 https://blog.****.net/fzhenyu/article/details/86611646