GCC - 해당되는 글 4건

1. gcc 설치
처음에 우분투 설치후 gcc를 하면 아마 안 될 것이다.
그 이유는 처음 설치는 기본적인거만 까는것이기 때문이다.

이럴땐 이걸 한다.
apt-get install build-essential
기본적인 개발도구를 설치하는 패키지이므로, gcc를 비롯해서 몇개 깔린다.

2. java 설치
출처 : https://jdk-distros.dev.java.net/ubuntu-dev.html
2-1. 아래 글의 소스리스트를 넣고 업데이트를 먼저 한다.
2-2. 시스템-설정-시냅틱 꾸러미 관리자를 간다.
2-3. 검색 : sun-java5 로 검색한다.
2-4. sun-java5-jre, sun-java5-jdk, sun-java5-doc 를 체크한다. 나머지도 다 딸려나와서 묻는데 '예' 한다.
       sun-java5-source, sun-java5-plugin 이거 두개는 옵션이다. 그냥 설치하는걸 추천한다.
2-5. 그런 다음 적용 누른다. 그러면 파일 받고 알아서 깔 것이다.
2-6. 깔고나면 Debconf 어쩌구 창이 나온다. 동의하고 다음(Accept)  누른다.
2-7. 중간에 혹시나 이런 메시지가 나올 수 있다.
This package is an installer package, it does not actually contain the
J2SDK documentation.  You will need to go download one of the
archives:

    jdk-1_5_0-doc.zip jdk-1_5_0-doc-ja.zip

(choose the non-update version if this is the first installation).
Please visit

    http://java.sun.com/j2se/1.5.0/download.html

now and download.  The file should be owned by root.root and be copied
to /tmp.

[Press RETURN to try again, 'no' + RETURN to abort]
This package is an installer package, it does not actually contain the
J2SDK documentation.  You will need to go download one of the
archives:

    jdk-1_5_0-doc.zip jdk-1_5_0-doc-ja.zip

(choose the non-update version if this is the first installation).
Please visit

    http://java.sun.com/j2se/1.5.0/download.html

now and download.  The file should be owned by root.root and be copied
to /tmp.

[Press RETURN to try again, 'no' + RETURN to abort]

그러면 당연히     http://java.sun.com/j2se/1.5.0/download.html 여기로 간 다음에
J2SE 5.0 documentation 가면 파일 다 있으니까 그거 받고 루트권한으로 /tmp 디렉토리에 옮긴다.

2-8. 마지막으로 JVM상에서 한글 폰트를 설치한다.
출처 : http://ubuntu.or.kr/wiki.php/JDK1.5%ED%95%9C%EA%B8%80%ED%99%94#s-3

multiverse로 설치하신 분들은 이렇게 하시면 기존의 폰트로 한글이 보이게 할 수 있습니다. 단, 이쁘지 않습니다. T.T
아래의 명령을 실행하고,

cd /usr/lib/jvm/java-1.5.0-sun/jre/lib
vi fontconfig.properties

아래의 내용을 fontconfig.properties의 맨 아래에 추가합니다.

# Korean font filenames
filename.-misc-baekmuk_batang-medium-r-normal--*-%d-*-*-c-*-iso10646-1=/usr/share/fonts/truetype/baekmuk/batang.ttf
filename.-misc-baekmuk_gulim-medium-r-normal--*-%d-*-*-c-*-iso10646-1=/usr/share/fonts/truetype/baekmuk/gulim.ttf
filename.-misc-kochi_gothic-medium-r-normal--*-%d-*-*-c-*-jisx0208.1983-0=/usr/share/fonts/truetype/kochi/kochi-gothic.ttf
filename.-misc-kochi_mincho-medium-r-normal--*-%d-*-*-c-*-jisx0208.1983-0=/usr/share/fonts/truetype/kochi/kochi-mincho.ttf

그럼 자바 설치도 끝~

참고 : 괜히 인터넷에서 jdk 받아서 설치하지 말길.. 나 저번에 그랬다가 쫄딱 망했음
      카테고리 없음  |  2007. 9. 12. 13:36




1.---------------------------------
    gcc main.c hi.c -o test
    모든 파일이 컴파일되서 링크까지 다실행된다.
2.-----------------------------------
    gcc -c main.c                     우선 오브젝트 파일만 만들어
    gcc -c hi.c           우선 오브젝트 파일만 만들어
    gcc main.o hi.o -o test  나중에 오브젝트 파일만 컴파일한다.
3.-----------------------------------
    gcc age.c
   이렇게 했는데 마이해더가 없다고 나오는 에러등 인클루드 패스가 존재하지 않으면
   gcc age.c -lmydir  옵션주고 디렉토리 지정
4.-----------------------------------------------
   라이브러리란 오브젝트 파일을 모아둔것으로 함수 목록도 포함된다.
   라이브러리 생성하기
   gcc -c plus.c minus.c
   =====================
   ar r libmy.a plus.o minus.o
   ls
   libmy.a minus.c minus.o plus.c plus.o
   ==========================
   ar s libmy.a
5.------------------------------------------
   -l 기능 표준 라이브러리가 아닌 라이브러리를 지정한다.
   -gcc 소스 파일 이름 -l라이브러리 이름
 
   gcc 16_8.c -lm
6.---------------------------
   옵션
   gcc 16_9.c -lmy -Lmylib
   L라이브러리 위치를 표시한다. L은 복수로 사용이 가능하다. 경로도 절대로 지정도 가능하다.
7.-----------------------------
   프로그램이돌다가 죽어버리면 정상적인 방법으로 스택을 살펴볼수가없기 때문에
   -g1을 사용해서 역추적 스택 덤프 생성에 필요한 정보를 포함한다
      리눅스  |  2007. 9. 6. 10:59




.c =>   cpp 전처리  => 컴파일 cc   =>  어셈블 as   =>  링크 ld   => a.out
 전처리 소스파일에 전처리 파일 삽입 - 앞에 샾붙은것들처리
컴파일단계 어셈블리어로 바꾸고
어셈블단계는 어셈블러를 기계어로 바꾸고 오브젝트 파일 생성
링크단계 메모리 맵설정에 따라서 각각 메모리 주소 설정

-E 전처리만 실행하고 컴파일 중단
-c 링크수행하기 바로 전단계에서 수행을 멈춘다 .o파일이 나온다
-o 출력팡리 이름을 적어준다.
-I 헤더파일을 컴색하는 디렉토리 목록을 추가한다. 인클루드 패스를 지정할수있다.
-l 라이브러리 파일을 컴파일시 링크한다.
-g 바이너리 파일에 표준 디버깅 정보를 포함하다. 이옵션을 주어야 디버깅정보가 포함되서
 디버깅할때 c소스 레벨에서 디버깅을 하게된다.
-ggdb 바이너리파일에 GNU디버거인 gdb만이 이해할수있는 많은 디버깅 정보를 포함시킨다.
-O 컴파일 코드를 최적하시킨다. 옵티마이 제이션
-O n  여기에 숫자를 넣으면 최적화를 시킬수있다. 0은 최적화 시키지않는다는의미이고 숫자가 높을 수록 최화된다.
             1-3까지 줄수있는데 보통 2까지 준다.
-DFOO=RAR 명령라인에서 -D옵션에 의미가 있는것이지 FOO=RAR은 응용
       D를 쓰고 FOO라는 선행처리기로 매크로를 정의한다.
                             예 -D__ABC이렇게 하면 소스상에서 샵디파인 으로 정의를 안해도 정리가된다,.
-static 정적라이브러리에 링크한다.
 정적라이브러리에 링크하면 파일사이즈가 커진다.
 동적라이브러리는 메모리에 항상 상주에있는 라이브러리
 라이브러리의 코드가 컴파일 되지 않고 단순히 주소만 맵핑되서 크기가 작다.
 정적라이브러리는 라이브러리코드가 컴파일 되서다 들어간다. 하나의 실행파일로 완성
 프린트에프가 동적라이브러리에 링크되어있으면 여러분이 작성한 실행파일에는 없고
 여러분이 작성 한 코드가 실행되다가 프린트 에프가필요하면 로딩해서 돌린다.
 정적라이브러리는 라이브러리 파일이 동일하게 따로 있는데
 프린트에프의 코드까지 하나의 파일로 가지고 간다.

 동적:gcc컴파일러 버전에 영향을 받을수있고 어떤상황에선 영향을 받아서 영향을받을수있다

 정적:코드까지 다가지고 가기 때문에 gcc컴파일러 버전에 영향을 받지 않고 실행이 가능하다.
-ansi 표준과 출동하는 GNU확장안을 취소한다.

      리눅스  |  2007. 9. 6. 10:20



sokoban's Blog is powered by Daum & Tattertools