移植minicom到ARM开发板 (转)
最近调试自己做的S5PV210的底板上面的串口。因为为了测试一个串口而写程序很麻烦。所以,直接移植了一个minicom到开发板上面。这样就可以直接进行串口收发了。特别是在我需要同时测试多个串口的时候,比写程序来得快。不多废话了,下面看操作流程。
第一步:
需要交叉编译ncurses,否则minicom不能编译。直接去官网下载。地址不发。
新建一个文件叫run,然后增加可执行属性,最后在其中加入如下配置
./configure CC=arm-linux-gcc --prefix=/opt/4.3.2/arm-none-linux-gnueabi --host=arm-linux CPPFLAGS=-I/opt/4.3.2/arm-none-linux-gnueabi/include LDFLAGS=-L/opt/4.3.2/arm-none-linux-gnueabi/lib
make
讲解下:
--prefix=/opt/4.3.2/arm-none-linux-gnueabi 红字为编译完成之后安装的地址,建议直接选择你的交叉编译器对应的位置,免得出错很麻烦,我这个就是交叉编译器的路径
CPPFLAGS=-I/opt/4.3.2/arm-none-linux-gnueabi/include 红字为编译过程中需要的引用的路径,其实就是交叉编译器路径下面的include
LDFLAGS=-L/opt/4.3.2/arm-none-linux-gnueabi/lib 红字为引用的库路径,意义同上
输入保存之后./run即可完成配置编译的操作,最后make install,建议先sudo su切换成root之后再操作,否则有可能会有麻烦,一些环境改变导致的麻烦。
第二步:
交叉编译完成ncurses之后,就是交叉编译minicom,自己去官网下载最新版代码,解压缩后,把上面的run拷贝到新目录。
修改内容如下:
./configure CC=arm-linux-gcc --prefix=/home/hubei/opt/minicom2.7 --host=arm-linux CPPFLAGS=-I/opt/4.3.2/arm-none-linux-gnueabi/include CPPFLAGS=-I/opt/4.3.2/arm-none-linux-gnueabi/include/ncurses LDFLAGS=-L/opt/4.3.2/arm-none-linux-gnueabi/lib --enable-cfg-dir=/etc/minicom
make
解释:
--prefix和上文意义一样,安装的地址。这个因为是交叉编译的不需要安装。所以随便弄了个地址
CPPFLAGS=-I/opt/4.3.2/arm-none-linux-gnueabi/include/ncurses 需要注意的是,多了一个路径,这个是新安装ncurese之后产生的路径,必须有,否则编译出错。
-enable-cfg-dir=/etc/minicom 这个似乎不重要,所以没研究,下次遇到问题了,再研究。
之后运行run即可完成编译。最后可以在src目录下面找到编译成功的minicom。
把它拷贝到开发板里面,这个时候执行会报一个经典错误
No termcap entry for vt102
这个时候需要在开发板的/usr/share/下面建立一个terminfo文件夹。然后拷贝PC上面的/lib/terminfo下面的一个V的文件夹。整个V都拷贝之后放入开发板的/usr/share/terminfo。
最后输入一个环境变量的指令:
export TERMINFO=/usr/share/terminfo
大功告成,之后再运行minicom就可以了。具体操作我只说一点。
ctrl +a,再按z,可进入设置
选择o之后进入端口配置,可以选择端口,波特率,硬件流控要去掉。之后选择保存退出。最后退出并复位。再进minicom就可以使用了。
如果本文能够帮到你,有单片机、嵌入式开发的项目或者业务、或者好的工作机会,可以介绍给我,谢谢!!!!!你的支持是我坚持的动力。