gcc에관한 초보적인 질문을 드립니다!
글쓴이: 익명 사용자 / 작성시간: 일, 2002/04/21 - 5:22오후
제가 .cpp파일을 가지구 변환을 하구 있는데여....
.cpp-> .s -> .o ->.exe루 만들라구 하는데여... 오브젝트 화일을 링크를
통해 변환을 시킬라구 하는데, ld hanoi.o라구 하면 printf와 main함수에
관한 라이브러리를 찾으라구 하네여... 그래서 main함수에 관한 라이브러
리인 crt0.o를 찾았더니 여기선 또 cygwin_crt를 찾으라구 하네여...
이건 아무리 뒤져두 없던데.... 글구 printf에 관한 라이브러리는 아예못
찾겠네여 printf와 main함수에 관한 라이브러리를 찾아야 하는데여.... 아
시는 고수님들을 꼭 좀 도와주세여!!!!
Forums:
Re: gcc에관한 초보적인 질문을 드립니다!
먼저 검색하세요. 바로 밑에 있는데요.
Re^2: gcc에관한 초보적인 질문을 드립니다!
저두 보구 질문을 드리는 건데여...
제가 궁금한건 오브젝트 파일을 링크할 때에 방법이 궁금해서여...
ld 명령어를 상용해서 링크할라구 하는데 해당 라이브러리를 알 수 가 없
어서여... 밑의 답글을 보니까 경로 설정 부분에 대한 설명이 없어서여...
밑의 설명에서 ld 뒤에 써야하는 경로지정 방법을 몰라서여...
라이브러리 화일을 이용해서 직접 링크 할라구 하거든여...
예를 들어서 이런식으로여
ld -o hanoi hanoi.o crt0.o.... 그런데 printf에관한 라이브
러리 함수랑 crt가 참조해야할 cygwin_crt에 대해서 알수가 없어서여..
도와주세여!!!^^
링크합니다. ld 뭐시뭐시뭐시
이거저거 패스넣고 목적파일 지정하고 아웃형태지정하고 우째우째 하면 실
행파일로 바꿔집니다.
GNU assembler version 2.10.91 (i386-redhat-linux) using BFD version
2.10.91.0.2
/usr/lib/gcc-lib/i386-redhat-linux/2.96/collect2 -m elf_i386 -
dynamic-linker /lib/ld-
linux.so.2 /usr/lib/gcc-lib/i386-redhat-
linux/2.96/../../../crt1.o /usr/lib/gcc-lib/i386-
redhat-linux/2.96/../../../crti.o /usr/lib/gcc-lib/i386-redhat-
linux/2.96/crtbegin.o -
L/usr/lib/gcc-lib/i386-redhat-linux/2.96 -L/usr/lib/gcc-lib/i386-
redhat-
linux/2.96/../../.. /tmp/ccJuaKVz.o -lgcc -lc -lgcc /usr/lib/gcc-
lib/i386-redhat-
linux/2.96/crtend.o /usr/lib/gcc-lib/i386-redhat-
linux/2.96/../../../crtn
Re^3: gcc에관한 초보적인 질문을 드립니다!
그것은..gcc가 한 짓을 낫낫이 보여 준 것입니다. gcc 로 실행파일이 만들
어 졌다면 gcc 가 아마 딱 그짓만 했다는 말입니다. 그러니까 그것이 s
o exe out 다 만든 짓이란 소리니까 그것이 다 만들어 내는 방법입니다.
적힌 고대로 쳐 보시요. 두줄에 적힌거는 다 한줄입니다. 그렇게 경료 지
정합니다.
Re^4: gcc에관한 초보적인 질문을 드립니다!
답변 감사드립니다!
그렇다면.... 링크를 위해서는 그많은 경로를 다지정해주구 관련 파일들을
다 링크 해주어야 하는 것 같던데 그럼 사실상 일일이 ld 명령어를 이용해
서 지정해 주는 것은 매우 복잡해서 ld루 컴파일하기란 사실상 불가능 한
일이가여?
댓글 달기