#macos #qt #arm64 #apple-silicon #macdeployqt
Вопрос:
У меня проблемы macdeployqt
с использованием сборки arm64. Я нахожусь на компьютере Apple Silicon M1 с macOS12 (Монтерей). Я установил Qt 6.2.1 и XCode 13.1.
Я создал очень простое консольное приложение.
#include lt;QDebuggt; int main() { qDebug() lt;lt; "Hello world."; }
с помощью файла qmake PRO:
QT -= gui CONFIG = c 11 console SOURCES = main.cpp
Я звоню qmake
с QMAKE_APPLE_DEVICE_ARCHS="arm64"
. Он успешно создает пакет приложений.
Затем я пытаюсь запустить macdeployqt
из каталога Qt 6.2.1 bin:
./macdeployqt /Users/vk/build-ConsoleApp-Qt_6_2_1_for_macOS_XCode-Release/ConsoleApp.app
…и я получаю много сообщений:
ERROR: Could not parse otool output line: "/Users/vk/Qt/6.2.1/macos/lib/QtSvg.framework/Versions/A/QtSvg (architecture arm64):" ERROR: Could not parse otool output line: "/Users/vk/Qt/6.2.1/macos/lib/QtWidgets.framework/Versions/A/QtWidgets (architecture arm64):" ERROR: Could not parse otool output line: "/Users/vk/Qt/6.2.1/macos/lib/QtGui.framework/Versions/A/QtGui (architecture arm64):" ERROR: Could not parse otool output line: "/Users/vk/Qt/6.2.1/macos/lib/QtNetwork.framework/Versions/A/QtNetwork (architecture arm64):" ...
Как я могу это исправить?
Комментарии:
1. Похоже, он давится толстыми двоичными файлами. Если вы можете изменить вызов otool, то добавление
-arch arm64
может помочь.2. Есть какие-нибудь новости по этому поводу? Я также сталкиваюсь с той же проблемой… @V. K. смогли ли вы решить эту проблему?
3. @Siguza ты случайно не знаешь, как это сделать? Из того, что я понял, я не могу добавить никаких аргументов в otool, так как я не вызываю его напрямую (macdeployqt вызывает otool)
4. ОБНОВЛЕНИЕ: по-видимому, эти «ошибки» можно игнорировать. macdeployqt просто путается в архитектуре ARM. Ура! =)