Important: Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

had add the Qt framework to the app. bundle on macos for deployment, when click the app crash.



  • I want to deploy a macos app, so I follow by this document :
    https://doc.qt.io/qt-5.9/osx-deployment.html
    I had added the qt platform in the suitable directory in my app.bundle, and use the' install_name_' change the id, so I run my app in Qt, everything works fine, but when I click the app which is in the 'build-FUEditor-Desktop_Qt_5_11_3_clang_64bit-Debug' directory, it crashes and shows me the error:

    '
    Thread 0 Crashed:: Dispatch queue: com.apple.main-thread
    0 org.qt-project.QtCore 0x00000001181c2044 QLocale::operator!=(QLocale const&) const + 4
    1 libqcocoa.dylib 0x0000000117ff0aa3 QCocoaInputContext::updateLocale() + 115
    2 com.apple.CoreFoundation 0x00007fff2e06d712 CFNOTIFICATIONCENTER_IS_CALLING_OUT_TO_AN_OBSERVER + 12
    3 com.apple.CoreFoundation 0x00007fff2e06d68c ___CFXRegistrationPost_block_invoke + 63
    4 com.apple.CoreFoundation 0x00007fff2e06d5ad _CFXRegistrationPost + 398
    5 com.apple.CoreFoundation 0x00007fff2e075a09 ___CFXNotificationPost_block_invoke + 87
    6 com.apple.CoreFoundation 0x00007fff2dfdd1aa -[_CFXNotificationRegistrar find:object:observer:enumerator:] + 1633
    7 com.apple.CoreFoundation 0x00007fff2dfdc56d _CFXNotificationPost + 742
    8 com.apple.Foundation 0x00007fff30364a7b -[NSNotificationCenter postNotificationName:object:userInfo:] + 66
    9 com.apple.CoreFoundation 0x00007fff2e06d712 CFNOTIFICATIONCENTER_IS_CALLING_OUT_TO_AN_OBSERVER + 12
    10 com.apple.CoreFoundation 0x00007fff2e06d68c ___CFXRegistrationPost_block_invoke + 63
    11 com.apple.CoreFoundation 0x00007fff2e046d17 CFRUNLOOP_IS_CALLING_OUT_TO_A_BLOCK + 12
    12 com.apple.CoreFoundation 0x00007fff2e009d51 __CFRunLoopDoBlocks + 395
    13 com.apple.CoreFoundation 0x00007fff2e00944f __CFRunLoopRun + 1204
    14 com.apple.CoreFoundation 0x00007fff2e008d48 CFRunLoopRunSpecific + 463
    15 com.apple.HIToolbox 0x00007fff2d29fab5 RunCurrentEventLoopInMode + 293
    16 com.apple.HIToolbox 0x00007fff2d29f6f4 ReceiveNextEventCommon + 371
    17 com.apple.HIToolbox 0x00007fff2d29f568 _BlockUntilNextEventMatchingListInModeWithFilter + 64
    18 com.apple.AppKit 0x00007fff2b55a363 _DPSNextEvent + 997
    19 com.apple.AppKit 0x00007fff2b559102 -[NSApplication(NSEvent) _nextEventMatchingEventMask:untilDate:inMode:dequeue:] + 1362
    20 com.apple.AppKit 0x00007fff2b553165 -[NSApplication run] + 699
    21 libqcocoa.dylib 0x0000000117fd383d QCocoaEventDispatcher::processEvents(QFlagsQEventLoop::ProcessEventsFlag) + 2397
    22 org.qt-project.QtCore 0x0000000108d4ec92 QEventLoop::exec(QFlagsQEventLoop::ProcessEventsFlag) + 418
    23 org.qt-project.QtCore 0x0000000108d53852 QCoreApplication::exec() + 402
    24 com.universe.FUEditor 0x00000001022fc381 main + 897 (main.cpp:100)
    25 libdyld.dylib 0x00007fff5b24aed9 start + 1
    '

    I don't why, can you give me some tips, thanks a lot!


  • Moderators

    @Princein

    hi,
    have you read the first paragraph ?

    The Qt installers for macOS include a deployment tool that automates the procedures described here.

    I would suggest going with the macDeployment tool, it will make your life so much easier!!!

    From what I read so far, you have added stuff manually ?



  • @J.Hilk
    I add the stuff use the command by adding the command in .pro file, what is the macDeployment tool, is there any document, thanks a lot!


  • Moderators

    @Princein
    I'm unsure if there's a step by step guide. Theres this

    https://doc.qt.io/qt-5.9/osx-deployment.html#macdeploy

    It's rather simple.

    Open Terminal, call the macdeploy tool inside your Qt installation with the path of the generated app-bundle, add eventual options (for example the path for used qml-files) and you're done ;-)


Log in to reply