После компиляции приложения в mingw-w64 64-bit Shell
он отлично работает внутри оболочки, но дает ошибку the application was unable to start correctly (0xc00007b)
при нормальной работе, вне оболочки .Приложение, скомпилированное в mingw-w64/msys2, «приложение не смогло начать правильно (0xc00007b«
я переехал некоторые из необходимых библиотек DLL из msys2/MinGW-w64 бен каталогов, когда он жаловался на отсутствие их, но теперь она дает эту непрозрачную ошибку. Что я делаю неправильно?
[Dependency Walker] (http://www.dependencywalker.com/) отображает все зависимости, которые связаны с использованием динамической компоновки времени компиляции. Как и ваш подход к использованию 'ldd', он не будет учитывать зависимости, которые связаны с использованием динамической компоновки времени выполнения (Dependency Walker позволяет вам профилировать ваше приложение, чтобы вы могли поймать некоторые из них таким образом). – IInspectable
@ Я не уверен, я знаю об игуаторе зависимости. Это отличный инструмент. Не использовали его в течение многих лет. 'ldd' является частью mingw-w64, поэтому я счел полезным использовать это. –
Спасибо за полезную тему. Не уверен, что это вызывает мою проблему, но это ценно в любом случае. Поскольку это может быть связано: (A) Может ли это произойти при обратном запуске 32-разрядной кросс-скомпилированной программы в 64-разрядной ОС и (B) Знаете ли вы, почему, тогда как запуск из проводника или командной строки дает эту ошибку - при запуске из той же MSYS2-поставляемой оболочки 'mingw32', программа просто выходит немедленно без видимой ошибки? –