링크 타임

컴퓨터 과학에서, 링크 타임(link time)은 링커에 의해 수행되는 동작들(즉, 링크 타임 동작들) 또는 성공적으로 링크되기 위해 컴파일된 소스 코드가 충족해야 하는 프로그래밍 언어 요구 사항들(즉, 링크 타임 요구 사항들)을 의미한다.

링크 타임에 수행되는 동작들은 보통 외부에서 참조되는 객체들과 함수들의 주소 수정, 다양한 종류의 크로스 모듈 검사를 포함한다(즉, 외부에서 보이는 식별자들과 몇몇 언어들에서의 템플릿 인스턴스화에 대한 자료형 검사). 몇몇 최적화 컴파일러들은 코드 생성을 링크 타임까지 연기하는데, 왜냐하면 사용 가능한 완전한 프로그램에 대한 정보가 그 때 존재하기 때문이다.

프로그래밍 언어의 정의는 소스 코드가 성공적으로 컴파일되기 위해서 충족해야 할 링크 타임 요구 사항들을 명시할 것이다(예를 들면 중요하게 여겨져야 하는 외부에서 보이는 식별자들에서 문자들의 최대 개수).

링크 타임은 컴파일 타임 이후 그리고 런타임(프로그램이 실행될 때) 이전에 발생한다. 몇몇 프로그래밍 언어들에서 컴파일과 링킹은 런타임 때 발생할 필요가 있다. 프로그램에서 외부 변수들을 리졸브하는 것은 링크 타임에 수행된다

컴파일러 구성