#keyword ld,gnu,linker,script
#title GNU Linker ld
[wiki:Home 대문] / [wiki:CategoryProgramming 프로그래밍] / [wiki:GNULinkerld GNU Linker ld]
----
== [wiki:GNULinkerld GNU Linker ld] ==
 * 작성자
  조재혁([mailto:minzkn@minzkn.com])

 * 고친과정
  2010년 6월 1일 : 처음씀

[[TableOfContents]]
=== 시작하기에 앞서서 ===
 본 문서는 GNU Linker ld version 2.18을 기준으로 작성하였으며 필자 나름대로 해석과 경험으로 작성되어 일부 잘못된 부분이 충분히 존재할수 있음을 밝힙니다.
=== Command line option ===
=== Linker script ===
 Linker script는 주로 Link작업에 대하여 입력파일의 section이 어떻게 출력파일로 대응되는지에 대한것과 memory를 어떻게 사용할지를 결정하기 위해서 Linker 명령언어로 쓰여집니다.[[br]]
 Linker는 항상 Linker script를 사용하는데 별도로 지정하지 않으면 ld는 내부 기본 Linker script를 사용하게 됩니다. "--verbose" 옵션을 사용하면 기본 Linker script의 내용을 볼수 있습니다.[[br]]
 "-T <linker script filename>" 옵션으로 임의로 Linker script를 지정하여 사용할수 있으며 "-L <search path>" 옵션을 통해서 특정 디렉토리에서 Linker script를 찾도록 할수 있습니다.
==== ENTRY(symbol) ====
 Program이 실행되면 처음으로 실행되는 진입점의 symbol을 지정합니다.

 다음과 같은 조건순서에 따라서 진입점이 결정되며 
  1. Command line 에서는 옵션 "-e <symbol>"으로 지정하는 경우
  1. Linker script내에서 "ENTRY(symbol)" 로 지정하는 경우
  1. 만약 symbol로 "start"가 정의된 경우
  1. 만약 ".text" section이 있는 경우 ".text" section의 최선두부분
  1. 주소 0에 해당하는 경우
==== INCLUDE filename ====
 작성중...
=== 참고사항 ===
 * [^http://www.redhat.com/docs/manuals/enterprise/RHEL-3-Manual/gnu-linker/]
 * [^http://korea.gnu.org/manual/release/ld/ld-sjp/]
 * [^http://korea.gnu.org/manual/release/ld/ld-mahajjh/]