Развертывание MXE и QT дает ошибку времени выполнения
Я создаю приложение QT на Ubuntu, которое работает довольно хорошо. Теперь мне нужно развернуть его в Windows, поэтому я установил MXE для кросс-компиляции моих исходников.
MXE build
git clone https://github.com/mxe/mxe.git
cd mxe
# I need posix threads, that why I build static.posix target
make MXE_TARGETS='i686-w64-mingw32.static.posix' qtbase libxml2
Я использую личную библиотеку (которая использует cmake
) и клиент-серверный код для моего кода QT, который я скомпилировал с помощью MXE, и он не выдал никакой ошибки (я усердно работал над их исправлением...). Затем компиляция для QT завершается без ошибок.
Всякий раз, когда я пытаюсь выполнить программу (с wine
на Ubuntu или на Windows) это не работает. wine
зависает и Windows показывает мне Runtime Error
,
Я также пытался использовать windeployqt.exe
с помощью wine
на моем исполняемом файле, прыжок это даст мне недостающие библиотеки DLL, но он говорит мне:
Z:\path\release\Executable.exe 32 bit, release executable
Z:\path\release\Executable.exe does not seem to be a Qt executable.
Я действительно понятия не имею, что сломано. Я забываю поставить dll или моя компиляция молча провалилась? Кто-нибудь знает или есть идеи о том, как бороться с этим делом?
РЕДАКТИРОВАТЬ
Видимо я правильно компилирую свою программу, похоже, ошибка исходит от GetAdapterAdresse
при использовании Windows. Проблема не в MXE (я рад, что все заработало).
Мне нужно посмотреть на эту функцию, но кто-нибудь знает, как сделать gdb
работать с MXE? Когда я побежал make gdb
, он что-то построил, но я не могу понять, где находится программа.