강좌 & 팁
minicom을 Cross 컴파일 빌드 방법
1. 디렉토리 생성 및 소스 다운로드
빌드는 슈퍼유저로 빌드 한다.
빌드 밑 다운로드를 위한 디렉토리를 생성 한다.
# mkdir cross-minicom
생성한 디렉토리로 이동
# cd cross-minicom
ncurses 소스 다운로드
# wget http://ftp.gnu.org/gnu/ncurses/ncurses-5.7.tar.gz
Resolving ftp.gnu.org... 140.186.70.20
접속 ftp.gnu.org|140.186.70.20|:80... 접속됨.
HTTP request sent, awaiting response... 200 OK
Length: 2445052 (2.3M) [application/x-gzip]
Saving to: `ncurses-5.7.tar.gz'
100%[===============================================================================================>] 2,445,052 737K/s in 3.2s
2012-01-07 13:21:00 (737 KB/s) - `ncurses-5.7.tar.gz' saved [2445052/2445052]
minicomn 소스 다운로드
# wget http://alioth.debian.org/frs/download.php/3487/minicom-2.5.tar.gz
--2012-01-07 13:27:29-- http://alioth.debian.org/frs/download.php/3487/minicom-2.5.tar.gz
Resolving alioth.debian.org... 217.196.43.134
접속 alioth.debian.org|217.196.43.134|:80... 접속됨.
HTTP request sent, awaiting response... 200 OK
Length: 822499 (803K) [application/binary]
Saving to: `minicom-2.5.tar.gz'
100% [===============================================================================================>] 822,499 292K/s in 2.8s
2012-01-07 13:27:33 (292 KB/s) - `minicom-2.5.tar.gz' saved [822499/822499]
2. 소스 압축 해제 및 컴파일
# tar xvfz ncurses-5.7.tar.gz
# cd ncurses-5.7
# LD=arm-generic-linux-gnueabi-ld AR=arm-generic-linux-gnueabi-ar RANLIB=arm-generic-linux-gnueabi-ranlib CC=arm-generic-linux-gnueabi-gcc CXX=arm-generic-linux-gnueabi-g++ ./configure --host=i686-linux --target=arm-linux --with-shared --
# make
# cd ..
# tar xvfz minicom-2.5.tar.gz
# cd minicom-2.5
# LD=arm-generic-linux-gnueabi-ld AR=arm-generic-linux-gnueabi-ar RANLIB=arm-generic-linux-gnueabi-ranlib CC=arm-generic-linux-gnueabi-gcc CXX=arm-generic-linux-gnueabi-g++ CFLAGS=-I../../ncurses-5.7/include ./configure --host=i686-linux
3. minicom의 Makefile 및 소스 파일 수정 및 컴파일
./src/Makefile 파일을 수정 하여,
vi ./src/Makefile
122 라인 수정 전,
------------------------------
CFLAGS = -I../../ncurses-5.7/include -W -Wall -Wextra -std=gnu99
------------------------------
122 라인 수정 후,
------------------------------
CFLAGS = -I../../ncurses-5.7/include -I../../ncurses-5.7/ncurses -W -Wall -Wextra -std=gnu99
------------------------------
vi config.h
82 라인 수정 전,
------------------------------
/* #undef HAVE_NCURSES_TERMCAP_H */
------------------------------
82 라인 수정 후,
------------------------------
#define HAVE_NCURSES_TERMCAP_H 1
------------------------------
vi ./src/port.h
39 라인 수정 전,
------------------------------
# include <ncurses/termcap.h>
------------------------------
39 라인 수정, 40 라인 추가 후,
------------------------------
// # include <ncurses/termcap.h>
# include <termcap.h>
------------------------------
컴파일
# make
컴파일이 완료 되면, 다음과 같이 4 개의 실행 파일을 확인 할 수 있다.
minicom , runscript , ascii-xfr , xminicom
4. ncurses 라이브러리 및 minicom 프로그램 nfs 로 복사
nfs에 보관할 minicom2 디렉토리 생성
# mkdir /nfs/minicom2
# cd ..
ncurses 라이브러리 복사
# cp -a ncurses-5.7/lib/* /nfs/minicom2/.
minicom 실행 파일 복사
# cd minicom-2.5/src/
# cp minicom /nfs/minicom2/.
# cp runscript /nfs/minicom2/.
# cp ascii-xfr /nfs/minicom2/.
# cp xminicom /nfs/minicom2/.
5. 보드 에서 minicom 실행
nfs 마운트
[root@falinux ~]$ ./nfsmnt 192.168.2.90
>> 192.168.2.90
환경 변수 설정
[root@falinux ~]$ export LD_LIBRARY_PATH=/lib:/usr/lib:/mnt/nfs/minicom2
[root@falinux ~]$ cd /mnt/nfs/minicom2/
minicom 실행
[root@falinux minicom2]$ ./minicom -s
아래의 txt는 minicom 실행시 콘솔 화면에 나오는 화면이다.
---------------------------------------------------------------------------------------
lqqqqq[configuration]qqqqqqk
x Filenames and paths x
x File transfer protocols x
x Serial port setup x
x Modem and dialing x
x Screen and keyboard x
x Save setup as dfl x
x Save setup as.. x
x Exit x
x Exit from Minicom x
mqqqqqqqqqqqqqqqqqqqqqqqqqqj
----------------------------------------------------
lqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqk
x A - Serial Device : /dev/ttyS1 x
x B - Lockfile Location : /var/lock x
x C - Callin Program : x
x D - Callout Program : x
x E - Bps/Par/Bits : 115200 8N1 x
x F - Hardware Flow Control : Yes x
x G - Software Flow Control : No x
x x
x Change which setting? x
mqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqj
x Screen and keyboard x
x Save setup as dfl x
x Save setup as.. x
x Exit x
x Exit from Minicom x
mqqqqqqqqqqqqqqqqqqqqqqqqqqj
--------------------------------------------------------------------------------------------------------------------------
이상으로 minicom 포팅에 관한 글을 마칩니다.