在google上找了许多minicom移植方面的资料,一个一个试着编译都没用,最后找到了一篇终于通过编译了,移植到s3c2416上能够运行起来挺不错的。
移植minicom步骤
1.获得所需要的源码:
minicom-2.1
ncurses-5.7
ncurses简单介绍:
Ncurses是一个能提供功能键定义(快捷键),屏幕绘制以及基于文本终端的图形互动功能的动态库,我们熟悉的内核配置界面就是用此库函数编写的
2.首先配置ncurses如下:
#./configure /
CC=arm-linux-gcc /
--prefix=/usr/local/arm/3.4.1/arm-linux /
--host=arm-linux /
CPPFLAGS=-I/usr/local/arm/3.4.1/arm-linux/include /
LDFLAGS=-L/usr/local/arm/3.4.1/arm-linux/lib /
解释:
CC=arm-linux-gcc / #C编译器
--prefix=/usr/local/arm/3.4.1/arm-linux / #安装独立文件的位置
--host=arm-linux / #因为是在arm上运行的
CPPFLAGS=-I/usr/local/arm/3.4.1/arm-linux/include / #预处理器标志,预处理时可以在/usr/local/arm/3.4.1/arm-linux/include目录中
#寻找非标准的头文件
LDFLAGS=-L/usr/local/arm/3.4.1/arm-linux/lib / #链接标志,链接时可以在usr/local/arm/3.4.1/arm-linux/lib目录中寻找非标准的头文件
3.交叉编译ncurses(交叉编译环境下执行):
#make
4.安装ncurses:
#make install
这一步我安装的时候有错误,我也没理会接着编译minicom,我看来有错误也没什么事,反正我编译minicom时没
5.配置minicom:
#./configure
CC=arm-linux-gcc /
--prefix=/home/yuyanchao/minicom / #同上,安装的目录,可执行文件就在里边的 bin 目录里
--host=arm-linux /
CPPFLAGS=-I/usr/local/arm/3.4.1/arm-linux/include /
CPPFLAGS=-I/usr/local/arm/3.4.1/arm-linux/include/ncurses / #预处理时需要ncurses中的文件支持
LDFLAGS=-L/usr/local/arm/3.4.1/arm-linux/lib /
--enable-cfg-dir=/etc/minicom / #配置文件位置
下面的命令和上面是一样的,是我根据自己ubuntu系统arm-linux-gcc编译器目录所处的位置不同而修改上面的命令
./configure CC=arm-linux-gcc --prefix=/home/zhoudaifei/workspace/uart/minicom --host=arm-linux CPPFLAGS=-I/usr/local/arm/4.2.2-eabi/usr/include CPPFLAGS=-I/usr/local/arm/4.2.2-eabi/usr/include/ncurses LDFLAGS=-L/usr/local/arm/4.2.2-eabi/usr/lib
6.交叉编译minicom:
#make
7.安装:
#make install
这一步是我编译的时候出错了,下面是打印出来的错误:
window.c:65: error: static declaration of ‘BC’ follows non-static declaration
/usr/include/termcap.h:27: error: previous declaration of ‘BC’ was here
make[2]: *** [window.o] 错误 1
make[2]: Leaving directory `/usr/hd/soft/minicom-2.1/src'
make[1]: *** [all-recursive] 错误 1
make[1]: Leaving directory `/usr/hd/soft/minicom-2.1'
make: *** [all-recursive-am] 错误 2
我google了许久,人家谷哥有两三个说可能是LIB有错误,VERSION不对,现在用得是2.3,于是又从网上下了一个2.5,于是乎顺利的编译过去了。
8.拷贝/home/yuyanchao/minicom/bin 目录下的minicom到开发板中,并在开发板中的bin目录下,
9.新建目录:
#mkdir -p /usr/share/terminfo
拷贝主机中vt102所在的目录 v (经过搜索我的这个文件夹在目录 /usr/local/arm/3.4.1/arm-linux/share/terminfo中)到开发板的/usr/share/terminfo/ 目录下,因为TERM要用到。
10.在开发板设定TERMINFO的变量值,执行:
#export TERMINFO=/usr/share/terminfo
11.初始化配置串口,
#./minicom -s
如果不能保存配置的文件,则需要自己动手新建配置文件要保存的目录即可(我的是要保存在/usr/local/etc 目录下,
所以 #mkdir -p /usr/local/etc)。
至此,minicom 移植成功!
参考博客:
http://blog.csdn.net/yuyanchao2005/article/details/6106329