2012-07-31 2 views
1

나는 (.LIB) VS2010 내 자신의 라이브러리 파일을 컴파일했지만, 내가되지 않은 외부 기호는

#pragma comment(lib,"path/to/lib.lib") 

처럼 참조 할 때 나는 확인되지 않은 외부 기호가 점점 계속 ... 무엇을 내가 틀렸어? #pragma comment (lib, "* .lib")는 지금까지 모든 라이브러리에서 작동했으며, 설정없이 연결해도 문제가 없었습니다.

+0

오타를 찾았습니까? –

+0

.lib 파일에서'dumpbin'을 사용하십시오. Visual Studio 명령 프롬프트에서 실행할 수 있습니다. 예상되는 기호가 실제로 라이브러리에 표시되는지 확인한 다음 다시보고하십시오! – Rook

+0

: cli_hlt 예 예 : \\와 \를 사용하여 시도해 보았습니다. 경로를 잘못 입력하여도 (파일을 찾지 못함) @Rook 어떻게 사용합니까? (내가 만든 첫 번째 .lib) – user1126068

답변

0
  1. 두 개의 디렉토리를 엽니 다.
  2. 복사 mspdb * .DLL (에서 첫 번째 디렉터리 :
  3. 두 번째 실패
    • 먼저 포함 된 라이브러리 (\ 프로그램 파일 \의 Microsoft Visual Studio 9.0 \ VC 나에 대한 C)를 compilator 이진 디렉토리를 포함) 라이브러리 디렉토리에
    • "%의 FIRST_DIRECTORY/빈/DUMPBIN.EXE"
    • 쓰기 라이브러리 디렉토리에
    • 열기 cmd.exe를/ALL> library.lib (예를 들어 내가 "C를 writed하고 lib.txt : \ 프로그램 Files \ Microsoft Visual Studio 9.0 \ VC \ bin \ dumpbin 당신이 발견 해달라고하면 .EXE lib.txt "/ ALL MyTestLibrary.lib>) 클래스 이름 또는 메서드 이름으로 당신이 (원하는 방법에 대한
    • 검색)

은 - 개발자 해달라고 그것을 writed. 또는 메서드 구현은 인라인입니다.

두 번째 - IDE whereis 소스에 알려야합니다. BTW는 라이브러리를 컴파일하는 프로젝트의 메서드가 없으며 사용자 헤더를 통해 액세스 할 수있는 메서드가 인라인 될 수 있음을 기억하십시오. 속도 최적화를 위해 할 수있는 모든 일이 있습니다.

1

1) VS 명령 콘솔 (Tools/Visual Studio 명령 프롬프트)을 엽니 다.

2) cd 명령을 사용하여 해당 라이브러리가있는 디렉토리로 변경하십시오.

3) 입력 :

dumpbin /all my_lib_name.lib > lib.txt 

라이브러리의 이름으로 my_lib_name.lib 교체. (대용량 라이브러리의 경우 출력을 lib.txt)

4) 새로 작성한 lib.txt을 열면 라이브러리의 내용을 볼 수 있습니다. 자세한 내용은 here을 참조하십시오.

관련 문제