다음을 통해 공유


가져오기 라이브러리 및 내보내기 파일 빌드

업데이트: 2007년 11월

가져오기 라이브러리 및 내보내기 파일을 빌드하려면 다음 구문을 사용합니다.

LIB /DEF[:deffile] [options] [objfiles] [libraries]

/DEF가 지정된 경우 LIB는 LIB 명령에 전달된 내보내기 사양을 기초로 출력 파일을 만듭니다. 내보내기를 지정하는 데는 다음과 같은 세 가지 방법을 사용합니다(권장 순서에 따라 나열).

  1. objfiles 또는 libraries 중 하나에서의 __declspec(dllexport) 정의

  2. LIB 명령줄의 /EXPORT:name 사양

  3. deffile의 EXPORTS 문에서의 정의

이 방법들은 모두 내보내는 프로그램에 링크할 때 내보내기를 지정하는 데 사용하는 동일한 방법이며, 프로그램에서는 둘 이상의 방법을 사용할 수 있습니다. LINK 명령에서와 마찬가지로 LIB 명령의 일부(여러 개의 objfiles 또는 /EXPORT 사양 등)를 해당 LIB 명령의 명령 파일에서 지정할 수 있습니다.

다음 옵션은 가져오기 라이브러리 및 내보내기 파일을 빌드하는 데 적용됩니다.

  • /OUT:import
    만들려는 import 라이브러리의 기본 출력 파일 이름을 재정의합니다. /OUT이 지정되지 않은 경우의 기본 이름은 해당 LIB 명령에 있는 첫 번째 개체 파일 또는 라이브러리의 기본 이름과 .lib 확장명을 사용하여 만들어집니다. 내보내기 파일에는 가져오기 라이브러리와 같은 기본 이름 및 .exp 확장명이 지정됩니다.

  • /EXPORT:entryname[=internalname][,@ordinal\[,NONAME]][,DATA]
    다른 프로그램이 함수를 호출할 수 있도록 프로그램에서 해당 함수를 내보냅니다. DATA 키워드를 사용하여 데이터를 내보낼 수도 있습니다. 내보내기는 대개 DLL에서 정의됩니다.

    entryname은 호출 프로그램이 사용할 함수 또는 데이터 항목 이름입니다. 선택적으로, 정의하는 프로그램에 알려진 함수로서 internalname을 지정할 수 있습니다. 기본적으로 internalnameentryname과 같습니다. ordinal은 내보내기 테이블로 1부터 65,535까지의 인덱스를 지정합니다. 사용자가 ordinal을 지정하지 않는 경우에는 LIB에서 이 값을 할당합니다. NONAME 키워드는 함수를 entryname이 없는 서수로만 내보냅니다. DATA 키워드는 데이터 전용 개체를 내보내는 데 사용됩니다.

  • /INCLUDE:symbol
    지정된 기호를 기호 테이블에 추가합니다. 이 옵션은 기본적으로 포함되지 않는 라이브러리 개체를 사용하도록 강제로 지정하는 데 유용합니다.

.dll을 만들기 전에 준비 단계에서 가져오기 라이브러리를 만드는 경우 가져오기 라이브러리를 빌드할 때 전달한 것과 동일한 개체 파일 집합을 .dll을 빌드할 때도 전달해야 합니다.

참고 항목

참조

가져오기 라이브러리 및 내보내기 파일을 사용한 작업