Qt 라이브러리 4.8.4, VTK6.0, OpenCV2.4.3을 사용하여 소프트웨어를 개발 중입니다. CMake와 MSVC2010은 프로젝트를 빌드하고 컴파일하는데 사용됩니다.VTK가 QT 플러그인과 충돌 함 qjpeg.dll
릴리스 버전의 경우에만 런타임에 충돌이 발생합니다. 문제는 C : \ Qt \ 4.8.4 \ plugins \ imageformats \ qjpeg4.dll 및 qjpeg4.lib에 의해 발생한다는 것을 알았습니다. 이러한 파일을 찾을 수 없거나 (디렉토리에서 이름을 변경하거나 디렉토리에서 제거 할 수없는 경우) 소프트웨어가 완벽하게 실행됩니다.
나는이 플러그인과 전혀 관련이 없기 때문에 VTake에 대한 CMakeList와 경로를 제거하여이 플러그인을 비활성화하는 프로젝트를 재구성하려고했습니다. 이것은 문제를 해결하지 못합니다. 따라서이 플러그인은 QT의 일부 종속성에 의해 호출된다고 가정합니다.
이 문제를 해결하는 방법에 대한 아이디어가 있으십니까? 고맙습니다.
동일한 컴파일러로 모든 것을 빌드 한 경우 INSTALL 대상을 사용하여 VTK를 설치 했습니까? 이렇게하면 응용 프로그램에 사용할 수있는 구성을 제한 할 수 있습니다. 디버그 응용 프로그램에서 릴리스 dll을 사용하거나 릴리스 응용 프로그램에서 디버그 dll을 사용하는 것은 안전하지 않습니다. 둘 다 힙을 하나 이상 가지고 있기 때문에 힙이 독립적이어서 한 힙에 램을 안전하게 할당 할 수 없기 때문에 메모리를 할당하거나 할당을 해제하는 임의의 크래시가 발생하게됩니다. – drescherjm