2012-07-24 2 views
0

Visual Studio에 여분의 라이브러리 디렉토리를 말하고 추가 종속성에 .lib를 썼습니다. (예, .lib, .dll이 아님). 그런 다음 모든 외부 기호 파일 오류가 사라졌다 (이전에 그 중 일부를했다)하지만, 다음이 제공 :Visual Studio .dll을 찾을 수 없음 (요청하지 않음)

실제 이름과 내가 추가 종속성 말했다 것은이었다

assimp.lib하지만 난 실행할 때 프로그램, 그것은 말합니다 : 종속 DLL을 찾을 수 없습니다, 그리고 메시지 상자에, 그것은 Assimp32.dll을 말합니다

그리고 난 절대 적 dll 이름, 특히 그 이름을 포함하도록 말했다, 그래서 나는 매우 혼란스럽고, 실수를 저질렀는지 여러 번 확인해 봤지만 그렇게 보이지는 않습니다.

답변

9

lib 파일에 링크하여 DLL을 사용하도록 응용 프로그램에 지시했습니다. 연결하려는 파일이 static library이 아닙니다. 에서와 같이 모든 기능을 포함하지는 않습니다.

이 경우 DLL (assimp32.dll)에 진입 점 정보가 포함 된 import library (assimp.lib)입니다. 그래서 프로그램을 실행할 때 여전히 DLL을 묻습니다. 비록 당신이 그렇게하도록 프로그램에 말하지 않았다고 생각할 수도 있습니다.

+0

감사합니다. 아직 답변을 수락 할 수 없습니다 ... –

+0

도움이 되셨다면 기쁘게 생각합니다. – Bart

+0

이것을 설명해 주셔서 감사합니다. assimp.lib과 정적 라이브러리를 제공하고 있지만 여전히 "종속 DLL을 찾을 수 없습니다"라는 생각에 매우 혼란 스러웠습니다. – larsonmattr

2

버전 3.0의 라이브러리를 다운로드했는데 Visual Studio에서 말하는 내용이 의미한다고 말할 수 있습니다. assimp.lib의 크기는 assimp--3.0.1270-sdk\lib\assimp_release-dll_win32에 불과하며 크기가 너무 작아 Assimp32.dll에있는 Assimp32.dll의 크기는 전체 6900KB이며 그 중 가장 좋은 항목은 다음과 같습니다. 실제로 위치하고 있습니다.

결론 : assimp.lib은 실제로 Assimp32.dll에 의존하므로 Assimp32.dll을 프로그램의 .exe가있는 폴더에 복사하여 보관해야합니다.

관련 문제