기존 이솝 임베디드 포럼의 지식인 서비스가 게시판 형태로 변경되었습니다.

이제 막 linux와 embedded linux를 시작하는 뉴비입니다.


여기저기서 검색하고 한 다음 kegel home의 toolchain을 받아서 시키는대로 build했습니다.

몇가지 오류가 있는것은 찾아가면서 수정하고..


헌데.. 이 build의 결과물이라는게 궁금합니다.

target에서 실행할 kernel과 tool들이 함께 build되는건가요?

kernel 파일인 vmlinux 파일이 어디있는지도 모르겠고..

이 toolchain에서 network 옵션이라던가 이런걸 수정하려면 어떻게 해야하는지..

(arm.config를 직접 수정하면 되는건가요?)


예를 들어 이 소스에 PPPoE 기능을 넣는다면 어떤식으로 넣어야 하는건지도 궁금합니다.


질문이 다소 황당할 수 있으므로 필요한 정보가 담겨있는 url이나 기타 등등을 연결해주셔도 됩니다.

현재로서는 막막하군요.


최강산

2009.09.29 01:06:59
*.131.74.195

음... 우선 제가 알고 있는 부분만 말씀드리면

툴체인은 컴파일러(GCC) 라고 보시면 됩니다.

단, 툴체인에서 컴파일된것은 ARM용 툴체인일겨우 ARM보드에서만 동작합니다.

x86에서는 실행이 안됩니다.

그럼 build의 결과물이라면 ARM용 바이너리 파일이겠죠?

그리고 커널을 컴파일할때 config를 실행하여 설정하게 됩니다. PPPoE가 동작되게 하려면 디바이스 드라이버를 모듈로 올리시면 될것 같습니다.

푸른하늘

2009.09.29 01:16:35
*.197.238.225

답변 감사합니다.


크로스 툴의 결과는 컴파일러인거고.. 그럼 이 컴파일러를 이용해서 커널을 빌드하면 그때서야 커널파일이 생성되겠군요...

그럼 다운로드 받은 커널소스쪽으로 가서 config를 만든 다음 빌드를 해야겠네요.

크로스 컴파일러를 이용해서 빌드하는 방법은 별도의 문서가 없는 건가요?

아니면 .. gcc link를 바꿔주면 되는것인지....


아무래도 결과 파일을 보니 그럴지도 모른다는 생각을 했었는데..

그렇다면 arm.config에 있는 VLAN enable등의 설정은 왜 존재하는건가요?

커널을 빌드할게 아니라면.. 굳이 저런 설정이 있을 필요가 있는건지 궁금합니다.

설정 파일도 있고 해서 저는 한방에 기본적인 커널까지 빌드가 끝나는걸로 생각했거든요.


cross-toolchain을 사용한다고 하더라도 별도의 커널을 받아서 사용해야 하는건가요?

toochain에 나오는 커널버전은 단지 커널별 호환성에 대한 결과인 것인지 궁금합니다.

궁금한건 많고.. 아는건 없고..

푸른하늘

2009.09.29 01:51:36
*.197.238.225

cross-toolchain 0.43을 받아서 build한 후 실제 사용할 커널은 별도로 받아서 컴파일 해야하는건가요?

김택기

2009.09.29 02:01:46
*.36.38.243

Cross toolchain은 말그대로 타겟용 툴체인일 뿐입니다.

커널은 따로 받아서 빌드하셔야 합니다.

따로 사용하시는 커널이 있다면 해당 커널을 사용하시면 되고,

그렇지 않다면 www.kernel.org에 가시면 커널 소스를 다운로드 하실 수 있습니다.

물론 타겟이 있으시다면 타겟 포팅은 직접하셔야 합니다.

 

그리고 커널 빌드는 커널 옵션을 설정하면 .config 파일이 생성되고 이를 이용하여 커널을 빌드합니다.

커널 옵션 설정하는 방법은 구글링하시면 많이 나올 겁니다.^^

푸른하늘

2009.09.29 02:11:26
*.197.238.225

링크를 보니 리눅스 시스템의 풀커널인듯 한데요.

uclinux에서 제공하는 커널이나 이런걸 사용해도 상관은 없는거죠?

저 코드로 빌드할 경우 커널 설정에서 많은 것을 제거 하고 사용하면 되는건가요?


현재는 커널을 받아 원하는 옵션들을 설정하고, 크로스툴로 빌드해서 빌드가 잘 되는지 정도를 확인하고자 하는 것입니다.

김택기

2009.09.29 02:35:13
*.36.38.243

uCLinux는 제가 사용해 보지 않아서 잘 모르겠습니다만,

제가 알고 있기로 uCLinux는 MMU가 없는 CPU를 지원하기 위한 커널로 알고 있습니다.

uCLinux는 아마도 컴파일이 되지 않을 수도 있을 것 같네요.^^;;

 

그리고 일반 커널 소스에서는 아키텍쳐만 정확하게 지정된다면 일단 빌드에는 크게 문제 없을 겁니다.

 

최강산

2009.09.29 03:02:38
*.131.74.195

uclinux가 되든 뭐가 되든 상관없습니다.

우선 Kernel은 전체 소스를 받으시면 아키텍쳐별로 컴파일하여 사용할수 있습니다. (ARM,MPS,PPC등...)

단 일반적인 아키텍쳐가 아니라면 칩과 관련된 패치를 할 필요가 있을수 있습니다.

패치를 하시고

말씀드린데로 툴체인은 컴파일러이기 때문에 툴체인으로 컴파일해주시면 arm 에서 돌아가는 커널 컴파일이 가능합니다.

List of Articles
번호 제목 글쓴이 날짜 조회 수
528 [질문]MP2530 1차 수리의 건 변효현 2009-09-29 502
527 CPU에 MAC이 들어있을경우 PHY만으로 네트웍 드라이버를 설정하는... [3] 최강산 2009-09-29 1032
» kegel home의 cross-toolchain 0.43을 사용하는데.. [7] 푸른하늘 2009-09-29 864
525 mp2530 부트로더상에 이미지를 띄우는 거에 대한 질문입니다. [4] 김영일 2009-09-26 661
524 기존 툴체인에 glibc나 newlib를 추가할 수 있나요? [2] 이예빈 2009-09-25 710
523 사운드 믹싱과 관련된 알고리즘이나 코드들이 있는지요? [2] just4you 2009-09-25 691
522 gettext를 locale이 없는 타겟에서 사용할 때.. [3] 황세진 2009-09-23 608
521 Mplayer -1.0 rc2 컴파일시 에러 날떄.. [2] 최종환 2009-09-23 656
520 웹 브라우저를 통한 네트워크 설정방법을 알려주세요~ 황원재 2009-09-23 614
519 kernel 버전이 변경되면 RFS의 어떤 부분이 함께 변경되어야 하나... [1] 이현배 2009-09-22 585
518 GPL 소스를 몇 % 이상 수정하면 GPL 적용을 안 받는지요 ? [3] 장석원 2009-09-19 783
517 VFP 질문 [2] 홍성관 2009-09-17 872
516 Platform Builder의 Build 메뉴에 대해서 질문입니다. Signal_Man 2009-09-17 633
515 2440 사용시 소프트웨어적으로 재부팅하는 방법은?? [1] 난다 2009-09-12 634
514 리눅스에서 돌릴 수 있는 네비게이션은 어떤게 있나요? [2] 이예빈 2009-09-12 1120
513 nand BAD 관련입니다. [2] 홍환진 2009-09-10 900
512 uboot 컴파일러 좀 올려주세요... - [1] 배홍묵 2009-09-09 785
511 mdev를 이용한 device file 생성에 관해 질문드립니다.. [1] 이예빈 2009-09-09 1182
510 windows ce 키 조합에 대해 아시는 분..? just4you 2009-09-09 644
509 리눅스 커널 포팅을 해보고 싶습니다. [2] 박수민 2009-09-07 819

사용자 로그인