Linux 환경에서의 프로그램 실행

gcc

gcc 는 c 컴파일러로, (참고로 c++ 컴파일러는 g++)

gcc [options] FILE 이런 식으로 사용을 하게 되고

파일명은 반드시 .c 로 끝나야 함. (c컴파일러니까 당연한 말)

gcc 로 .c 파일을 컴파일하게 되면 그 결과로 생성된, “실행 파일” 은 .out 이 됨.

이때 “-o(옵션이라는 뜻이 아니라!!! 너 컴파일하고 링킹까지 해줘! 라는 의미였ㅇㅁ!!!) filename”으로 옵션을 주면 실행 파일 이름을 filename 으로 하게 됨. 예를 들어서 -o hyunsu 하게 되면, .out 이 아니라 .hyunsu 가 됨. 엥 말이 안되는데 여기서는 exciting 으로 실행했으니까 확장자가 바뀐 게 아니라 실행 파일 명 자체가 바뀐 거 아닌지??

$ cat > a.c //a.c 파일을 하나 생성하고

int main() {

printf(”Linux is exciting! \n”); //리눅스는 재밌다! 를 출력하는 파일

}

$ gcc -o exciting a.c // gcc 명령어가 제일 앞에 오고, -o 파일명 옵션을 이용해서 실행 파일의 확장자명을 exciting 으로 해준 다음에 어떤 파일 컴파일 할 건지 파일명(.c) 를 맨 마지막에 붙임.

$exciting // gcc 명령어를 이용을 해서 컴파일을 해서 실행 파일을 만들었기 때문에, 이제 그냥 실행만 하면 됨.

Linux is esciting!

library 만들기 및 사용

Library (archive 용) file 을 리눅스에서 배우는 법

(static 즉 정적) library file 은 .a 로 끝남. (archive 니까 a) 주로 libarary 는 대부분 스태틱 인 가 봄

ar(archive 에서 ar) 명령어를 사용해서 만들 수 잇음

ex) ar rcs libname.a a.o b.o c.o