Skip to content

make 정리

조회 수 5264 추천 수 0 2013.05.12 13:25:55

1. make

 - 압축된 프로그램의 최상위 폴더에 가면 Makefile 이라는 것을 찾을수 있는데 이것을 토대로 그 안에 있는 스크립트를 실행하면서 각각의 폴더에 있는 c파일들을 오프젝트 파일/어셈플리어 ( 확장자 : .o )로 컴파일 시켜주는 역할을 한다.

 

2. make clean

 - 프로그램의 최상위 폴더에 컴파일 되어 있던 오브젝트 파일을 제거해 주는 역할을 한다.

 

3. make mrproper

 - 컴파일과 관련해서 여러가지 문제가 발생할 수 있는 것들을 초기화 해주는 역할을 한다.

 

※ make clean, make mrproper 으로 초기화와 비슷한 환경을 만들수 있지만 완벽하지는 않다.

 

4. make all

 - make clean, make mrproper 와 같이 실행해 준다.

 

ex) make clean all

 

5. make config

 - 프로그램에서 선택할 수 있는 사항을 보면서, Y/N/M 등으로 선택하여 컴파일을 진행하는 역할을 합니다.

 

6. make oldconfig

 - make config나 다른 폴더에서 복사해 오는 설정 파일인 .config의 설정들을 하위에 적용시켜주는 역할을 한다.

위에서 make 에서 오브젝트 파일을 만들 때 설정된 것들만 변환시켜준다.

 

7. make menuconfig

 - make config에서는 하나하나 체크를 해 보아야하지만 make menuconfig는 비주얼로 보여지기 때문에 쉽게 수정이 가능하고 수정된 것이 자동으로 .config 으로 만들어지기 때문에 make oldconfig를 자동으로 해줍니다.

 

※ make menuconfig = make config + make oldconfig

 

8. make zImage

 - zImage를 만드는 것으로, 1MB를 넘지 않았을 때 사용한다.

 

※ 예전에 보드의 커널이 이것으로 이미지를 만든 것이다. 이름을 커널의 버전으로(kernel-2.4.11.~~)으로 이름을 바꿔서 복사하게 되면 커널의 이미지가 생성된 것이고 이것을 포팅하는 것이다. 

9. make bzImage

 - bzImange를 만드는 것으로, 1MB를 넘을 경우 사용한다.

 

※ 커널 이미지 만드는 것은 이것으로 하는 것이다. 이미지의 위치는 /linux~~/arch/i386/boot/bzImage 에 가면 있다.

 

10. make modules

 - 설정들의 모듈들을 만들어주는 역할을 한다

 

11. make modules_install

 - 위에 만들어진 모듈을 설치하는 역할을 한다.

 

12. make install

 - make하여 만들어진 것을 설치하는 역할을 한다.

 

※ 커널의 경우 /boot/grub/menu.lst를 수정하고 이미지를 복사 안하고도 부팅시 또 하나의 선택사항이 나오게 하는 멀티부팅을 만들 수 있습니다. ( make install 경우 Makefile 수정없이 그냥 하게 되면 부팅시 이름이 같은 두개의 선택이 나올 수 있습니다. 그것을 방지하기 위해서 제일 처음 압축을 풀고 최상위 폴더에서 Makefile을 vi 에디터로 열어 제일~~ 위쪽의 버전으로 나와 있는 곳에 마지막 (아마 4번째 줄)에 이름을 더 추가 하시면 이름이 다른 커널과 이름이 다른  멀티 부팅 선택지가 나오게 될 것입니다.)

 

 

출처 : http://urloge.tistory.com/entry/%EC%BB%A4%EB%84%90%EC%97%90%EC%84%9C-%EC%82%AC%EC%9A%A9%EB%90%9C-make-%EC%A0%95%EB%A6%AC

http://blog.naver.com/llhhss81/150035238897

profile

일요일은 짜빠게뤼~ 먹는날~^^

엮인글 :
http://adminplay.com/202297/7a2/trackback
List of Articles
번호 제목 글쓴이 날짜sort 조회 수
187 악성코드 일괄 삭제 ADMINPLAY 2010-04-17 27422
186 젠투리눅스 설치기록 ADMINPLAY 2010-04-17 22848
185 젠투리눅스에서 잃어버린 암호를 다시 설정하기 ADMINPLAY 2010-04-15 23899
184 대용량 HDD 파티셔닝(Mass storage Partitioning) (GPT 파... ADMINPLAY 2010-04-14 74444
183 VI 에디터 유니코드(UTF-8)로 인코딩 전환 ADMINPLAY 2010-04-02 23966
182 배치파일을 이용한 백업방법 l2zeo 2010-03-31 59533
181 가상화 (XEN & KVM) 리눅스 - CentOS 5.4 에서 XEN 설치 file ADMINPLAY 2010-03-24 32444
180 Linux 서버에서 yum 으로 X-Window 설치하기 ADMINPLAY 2010-03-24 20314
179 X-window 설치 ADMINPLAY 2010-03-24 23361
178 일반적인 웹로봇의 방문 및 배제와 관련한 robots.txt 저... ADMINPLAY 2010-03-16 20649
177 Vista Bootloader에 Fedora 10 부팅옵션 추가해서 듀얼 부... l2zeo 2010-03-08 23225
176 [UNIX] 솔라리스 보안 [ 발표자료 ] - 김 석 님 자료 file l2zeo 2010-03-08 26451
175 CentOS 5.3에서 samba구축방법 file l2zeo 2010-03-08 29451
174 shell programming l2zeo 2010-03-08 20424
173 시스칼리지- 꿔니님의 클러스트링 강좌 l2zeo 2010-03-08 32759
172 리눅스 한글 설정 l2zeo 2010-03-08 26432
171 Cent OS-5.2 설치 문서 file l2zeo 2010-02-24 31794
170 CentOS 설치 - VMware 상에서 CentOS 설치하기 file l2zeo 2010-02-24 52101
169 ORA-01031: insufficient privileges 오류 ADMINPLAY 2010-02-24 41013
168 ruby on rails 설치 (Ubuntu Server DIY ) l2zeo 2010-02-20 30429

Copyright ADMINPLAY corp. All rights reserved.

abcXYZ, 세종대왕,1234

abcXYZ, 세종대왕,1234