Компьютер: Windows 7 x64 бит, Visual Studio 2008Приложение не может Начало: OpenCV x64 компиляции в VS использует библиотеки x86
Скачал последний OpenCV сборки (2.3.3) из SVN и составлено по этим инструкциям (HTTP: //opencv.itseez.com/doc/tutorials/introduction/windows_install/windows_install.html#windows-installation) с соответствующими подстановками x86/x64.
Все скомпилировано в то, что я хотел (как и в случае с прекомпилированной версией, к которой я привык), но всякий раз, когда я запускаю какие-либо мои собственные программы или любые образцы, включенные в каталог/bin, я получаю следующее сообщение об ошибке:
The application was unable to start correctly (0xc000007b). Click OK to close the application
Я скачал Dependency Walker и обнаружил следующие ошибки зависимостей:
- MSVCP90.dll x86 (красный)
- msvcr90.dll x86 (красный)
- TBB.dll x86 (красный)
- ieshims.dll (отсутствует)
Я не связывая правильные слова DLLs размера на компиляции. Первые два выглядят как время исполнения Visual Studio 9.0, и последнее, что я слышу, это DLL Internet Explorer. Я уже установил распространяемый VS2008 x64 (нужно ли перекомпилировать все?), Но он все равно не работает.
Я искал интернет и нашел, что это общая проблема, но на самом деле нет общего решения. Для меня это происходит как с отладкой, так и с выпуском.
Любые идеи? Спасибо.
Это происходит, когда 32-разрядная программа находит 64-разрядную DLL. Или наоборот. Dumpbin.exe/headers - основной инструмент устранения неполадок, посмотрите на «машину». –
Да, я компилирую 64-битную программу, и вышеупомянутые DLL 32-разрядные, то есть несовместимые, но вопрос в том, как я: а) найти правильные DLL (не должны они быть в наборе rediant pack VS2008) и b) получить мою программу для компиляции с правильными связанными. – Jason