I cannot deploy Qt framwork on Mac.
-
I am making an app in CLion and am unable to deploy it on my mac. It deploy and runs perfectly on Windows using the qt deploy API with CMake. On my M2 Macbook Air, however, the app crashes immediately whether I use the API or directly run macdeployqt or macdeployqt6. I have been trying to diagnose the problem and have run which macdeployqt to make sure I am running the correct program. I just learned c++ development and am an inexperienced programmer at best, so I am at a loss. I will include the CMake file as well as the error code I recieve when I run the app. Also, I am not sure what is wrong, since macdeployqt is adding all the files correctly to the app bundle.
CMakeFilecmake_minimum_required(VERSION 3.29) project(TrianglerFast) set(CMAKE_CXX_STANDARD 20) set(CMAKE_AUTOMOC ON) set(CMAKE_AUTORCC ON) set(CMAKE_AUTOUIC ON) set(CMAKE_PREFIX_PATH "QTPATH") //I have removed the path for privacy find_package(Qt6 COMPONENTS Core Gui Widgets Svg REQUIRED) add_executable(TrianglerFast main.cpp SillyWindow.cpp QCanvas.cpp QAdvSlider.cpp Point.cpp PointId.cpp QSButton.cpp ) set_target_properties(TrianglerFast PROPERTIES MACOSX_BUNDLE TRUE ) target_link_libraries(TrianglerFast Qt6::Core Qt6::Gui Qt6::Widgets Qt6::Svg )
Error Message:
------------------------------------- Translated Report (Full Report Below) ------------------------------------- Process: TrianglerFast [45152] Path: /Users/USER/*/TrianglerFast.app/Contents/MacOS/TrianglerFast Identifier: TrianglerFast Version: ??? Code Type: ARM-64 (Native) Parent Process: launchd [1] User ID: 501 Date/Time: 2024-11-25 17:02:19.0225 +0100 OS Version: macOS 13.4 (22F66) Report Version: 12 Anonymous UUID: 02305EB8-4319-FA72-34A6-ECF07F916D2F Sleep/Wake UUID: EEEA9BC4-BCF3-4B7A-83EE-B044349E1A1C Time Awake Since Boot: 17000 seconds Time Since Wake: 495 seconds System Integrity Protection: enabled Crashed Thread: 0 Exception Type: EXC_BAD_ACCESS (SIGKILL (Code Signature Invalid)) Exception Codes: UNKNOWN_0x32 at 0x00000001052e8000 Exception Codes: 0x0000000000000032, 0x00000001052e8000 Termination Reason: Namespace CODESIGNING, Code 2 Invalid Page VM Region Info: 0x1052e8000 is in 0x1052e8000-0x105788000; bytes after start: 0 bytes before end: 4849663 REGION TYPE START - END [ VSIZE] PRT/MAX SHRMOD REGION DETAIL mapped file 104680000-1052e8000 [ 12.4M] r--/rwx SM=COW ...t_id=f3bcad5d ---> mapped file 1052e8000-105788000 [ 4736K] r-x/rwx SM=COW ...t_id=f3bcad5d VM_ALLOCATE (reserved) 105788000-1058e4000 [ 1392K] rw-/rwx SM=NUL ...(unallocated) Thread 0 Crashed: 0 dyld 0x1a92a2e40 dyld3::MachOFile::isMachO(Diagnostics&, unsigned long long) const + 40 1 dyld 0x1a926b0e8 dyld4::Loader::mapSegments(Diagnostics&, dyld4::RuntimeState&, char const*, unsigned long long, dyld4::Loader::CodeSignatureInFile const&, bool, dyld3::Array<dyld4::Loader::Region> const&, bool, bool, dyld4::Loader::FileValidationInfo const&) + 984 2 dyld 0x1a9273954 invocation function for block in dyld4::JustInTimeLoader::makeJustInTimeLoaderDisk(Diagnostics&, dyld4::RuntimeState&, char const*, dyld4::Loader::LoadOptions const&, bool, unsigned int, mach_o::Layout const*) + 88 3 dyld 0x1a92732f0 dyld4::JustInTimeLoader::withRegions(dyld3::MachOFile const*, void (dyld3::Array<dyld4::Loader::Region> const&) block_pointer) + 292 4 dyld 0x1a9273898 invocation function for block in dyld4::JustInTimeLoader::makeJustInTimeLoaderDisk(Diagnostics&, dyld4::RuntimeState&, char const*, dyld4::Loader::LoadOptions const&, bool, unsigned int, mach_o::Layout const*) + 456 5 dyld 0x1a927a694 dyld4::SyscallDelegate::withReadOnlyMappedFile(Diagnostics&, char const*, bool, void (void const*, unsigned long, bool, dyld4::FileID const&, char const*) block_pointer) const + 132 6 dyld 0x1a927369c dyld4::JustInTimeLoader::makeJustInTimeLoaderDisk(Diagnostics&, dyld4::RuntimeState&, char const*, dyld4::Loader::LoadOptions const&, bool, unsigned int, mach_o::Layout const*) + 208 7 dyld 0x1a926a414 invocation function for block in dyld4::Loader::getLoader(Diagnostics&, dyld4::RuntimeState&, char const*, dyld4::Loader::LoadOptions const&) + 1680 8 dyld 0x1a926aa38 invocation function for block in dyld4::Loader::forEachResolvedAtPathVar(dyld4::RuntimeState&, char const*, dyld4::Loader::LoadOptions const&, dyld4::ProcessConfig::PathOverrides::Type, bool&, void (char const*, dyld4::ProcessConfig::PathOverrides::Type, bool&) block_pointer) + 436 9 dyld 0x1a92502d8 dyld3::MachOFile::forEachLoadCommand(Diagnostics&, void (load_command const*, bool&) block_pointer) const + 296 10 dyld 0x1a92a65c8 dyld3::MachOFile::forEachRPath(void (char const*, bool&) block_pointer) const + 128 11 dyld 0x1a9269718 dyld4::Loader::forEachResolvedAtPathVar(dyld4::RuntimeState&, char const*, dyld4::Loader::LoadOptions const&, dyld4::ProcessConfig::PathOverrides::Type, bool&, void (char const*, dyld4::ProcessConfig::PathOverrides::Type, bool&) block_pointer) + 708 12 dyld 0x1a9256f54 dyld4::ProcessConfig::PathOverrides::forEachPathVariant(char const*, dyld3::Platform, bool, bool, bool&, void (char const*, dyld4::ProcessConfig::PathOverrides::Type, bool&) block_pointer) const + 488 13 dyld 0x1a9269294 dyld4::Loader::forEachPath(Diagnostics&, dyld4::RuntimeState&, char const*, dyld4::Loader::LoadOptions const&, void (char const*, dyld4::ProcessConfig::PathOverrides::Type, bool&) block_pointer) + 248 14 dyld 0x1a92699e8 dyld4::Loader::getLoader(Diagnostics&, dyld4::RuntimeState&, char const*, dyld4::Loader::LoadOptions const&) + 588 15 dyld 0x1a9271738 invocation function for block in dyld4::JustInTimeLoader::loadDependents(Diagnostics&, dyld4::RuntimeState&, dyld4::Loader::LoadOptions const&) + 412 16 dyld 0x1a92a47e8 invocation function for block in dyld3::MachOFile::forEachDependentDylib(void (char const*, bool, bool, bool, unsigned int, unsigned int, bool&) block_pointer) const + 148 17 dyld 0x1a92502d8 dyld3::MachOFile::forEachLoadCommand(Diagnostics&, void (load_command const*, bool&) block_pointer) const + 296 18 dyld 0x1a92a4630 dyld3::MachOFile::forEachDependentDylib(void (char const*, bool, bool, bool, unsigned int, unsigned int, bool&) block_pointer) const + 172 19 dyld 0x1a9271480 dyld4::JustInTimeLoader::loadDependents(Diagnostics&, dyld4::RuntimeState&, dyld4::Loader::LoadOptions const&) + 164 20 dyld 0x1a9254a0c dyld4::prepare(dyld4::APIs&, dyld3::MachOAnalyzer const*) + 1236 21 dyld 0x1a9253e18 start + 1964 Thread 0 crashed with ARM Thread State (64-bit): x0: 0x00000001052e8000 x1: 0x000000016b7ddff0 x2: 0x00000000004a0000 x3: 0x0000000000040012 x4: 0x0000000000000003 x5: 0x000000000066c000 x6: 0x000000000066c000 x7: 0x0000000000000000 x8: 0x00000002045a9eac x9: 0x00000002045a9db0 x10: 0x000000016b7dd80c x11: 0x08000000004e4000 x12: 0x0000000000000001 x13: 0x0000000000000001 x14: 0x0000000000117dc0 x15: 0x000000016b7dee70 x16: 0x00000000000000c5 x17: 0x00000001a9251f60 x18: 0x0000000000000000 x19: 0x000000016b7ddff0 x20: 0x0000000000000003 x21: 0x000000016b7ddff0 x22: 0x000000016b7ddac8 x23: 0x00000000005fc000 x24: 0x000000000066c000 x25: 0x000000016b7dd83c x26: 0x0000000000000000 x27: 0x00000001052e8000 x28: 0x0000000000000040 fp: 0x000000016b7dd450 lr: 0x3c5a8001a926b0e8 sp: 0x000000016b7dd440 pc: 0x00000001a92a2e40 cpsr: 0x20001000 far: 0x00000001052e8000 esr: 0x92000007 (Data Abort) byte read Translation fault Binary Images: 0x104620000 - 0x10462bfff TrianglerFast (*) <c931c575-c6e9-3bef-9fce-876c9f0bdbea> /Users/USER/*/TrianglerFast.app/Contents/MacOS/TrianglerFast 0x1a924e000 - 0x1a92dc553 dyld (*) <bd993f39-c902-37d6-8bd8-6d827c7f121e> /usr/lib/dyld 0x0 - 0xffffffffffffffff ??? (*) <00000000-0000-0000-0000-000000000000> ??? External Modification Summary: Calls made by other processes targeting this process: task_for_pid: 0 thread_create: 0 thread_set_state: 0 Calls made by this process: task_for_pid: 0 thread_create: 0 thread_set_state: 0 Calls made by all processes on this machine: task_for_pid: 0 thread_create: 0 thread_set_state: 0 VM Region Summary: ReadOnly portion of Libraries: Total=802.5M resident=0K(0%) swapped_out_or_unallocated=802.5M(100%) Writable regions: Total=9824K written=0K(0%) resident=0K(0%) swapped_out=0K(0%) unallocated=9824K(100%) VIRTUAL REGION REGION TYPE SIZE COUNT (non-coalesced) =========== ======= ======= STACK GUARD 56.0M 1 Stack 8176K 1 VM_ALLOCATE (reserved) 1392K 1 reserved VM address space (unallocated) __DATA 27K 2 __DATA_CONST 38K 2 __DATA_DIRTY 7K 1 __LINKEDIT 801.9M 2 __TEXT 620K 2 dyld private memory 272K 2 mapped file 17.0M 2 =========== ======= ======= TOTAL 885.2M 16 TOTAL, minus reserved VM space 883.9M 16 ----------- Full Report ----------- {"app_name":"TrianglerFast","timestamp":"2024-11-25 17:02:21.00 +0100","app_version":"","slice_uuid":"c931c575-c6e9-3bef-9fce-876c9f0bdbea","build_version":"","platform":1,"share_with_app_devs":0,"is_first_party":1,"bug_type":"309","os_version":"macOS 13.4 (22F66)","roots_installed":0,"incident_id":"E09EB63B-207D-41CC-B238-FA6D9A08398D","name":"TrianglerFast"} { "uptime" : 17000, "procRole" : "Background", "version" : 2, "userID" : 501, "deployVersion" : 210, "modelCode" : "Mac14,2", "coalitionID" : 4820, "osVersion" : { "train" : "macOS 13.4", "build" : "22F66", "releaseType" : "User" }, "captureTime" : "2024-11-25 17:02:19.0225 +0100", "incident" : "E09EB63B-207D-41CC-B238-FA6D9A08398D", "pid" : 45152, "translated" : false, "cpuType" : "ARM-64", "roots_installed" : 0, "bug_type" : "309", "procLaunch" : "2024-11-25 17:02:18.5775 +0100", "procStartAbsTime" : 418832282544, "procExitAbsTime" : 418842924095, "procName" : "TrianglerFast", "procPath" : "\/Users\/USER\/*\/TrianglerFast.app\/Contents\/MacOS\/TrianglerFast", "parentProc" : "launchd", "parentPid" : 1, "crashReporterKey" : "02305EB8-4319-FA72-34A6-ECF07F916D2F", "codeSigningID" : "TrianglerFast", "codeSigningTeamID" : "", "codeSigningFlags" : 587334144, "codeSigningValidationCategory" : 0, "codeSigningTrustLevel" : 0, "wakeTime" : 495, "sleepWakeUUID" : "EEEA9BC4-BCF3-4B7A-83EE-B044349E1A1C", "sip" : "enabled", "vmRegionInfo" : "0x1052e8000 is in 0x1052e8000-0x105788000; bytes after start: 0 bytes before end: 4849663\n REGION TYPE START - END [ VSIZE] PRT\/MAX SHRMOD REGION DETAIL\n mapped file 104680000-1052e8000 [ 12.4M] r--\/rwx SM=COW ...t_id=f3bcad5d\n---> mapped file 1052e8000-105788000 [ 4736K] r-x\/rwx SM=COW ...t_id=f3bcad5d\n VM_ALLOCATE (reserved) 105788000-1058e4000 [ 1392K] rw-\/rwx SM=NUL ...(unallocated)", "exception" : {"codes":"0x0000000000000032, 0x00000001052e8000","rawCodes":[50,4381900800],"type":"EXC_BAD_ACCESS","signal":"SIGKILL (Code Signature Invalid)","subtype":"UNKNOWN_0x32 at 0x00000001052e8000"}, "termination" : {"flags":0,"code":2,"namespace":"CODESIGNING","indicator":"Invalid Page"}, "vmregioninfo" : "0x1052e8000 is in 0x1052e8000-0x105788000; bytes after start: 0 bytes before end: 4849663\n REGION TYPE START - END [ VSIZE] PRT\/MAX SHRMOD REGION DETAIL\n mapped file 104680000-1052e8000 [ 12.4M] r--\/rwx SM=COW ...t_id=f3bcad5d\n---> mapped file 1052e8000-105788000 [ 4736K] r-x\/rwx SM=COW ...t_id=f3bcad5d\n VM_ALLOCATE (reserved) 105788000-1058e4000 [ 1392K] rw-\/rwx SM=NUL ...(unallocated)", "extMods" : {"caller":{"thread_create":0,"thread_set_state":0,"task_for_pid":0},"system":{"thread_create":0,"thread_set_state":0,"task_for_pid":0},"targeted":{"thread_create":0,"thread_set_state":0,"task_for_pid":0},"warnings":0}, "faultingThread" : 0, "threads" : [{"triggered":true,"id":392208,"threadState":{"x":[{"value":4381900800},{"value":6098378736},{"value":4849664},{"value":262162},{"value":3},{"value":6733824},{"value":6733824},{"value":0},{"value":8662982316,"symbolLocation":172,"symbol":"_main_thread"},{"value":8662982064,"symbolLocation":0,"symbol":"errno"},{"value":6098376716},{"value":576460752308551680},{"value":1},{"value":1},{"value":1146304},{"value":6098382448},{"value":197},{"value":7132749664,"symbolLocation":56,"symbol":"fcntl"},{"value":0},{"value":6098378736},{"value":3},{"value":6098378736},{"value":6098377416},{"value":6275072},{"value":6733824},{"value":6098376764},{"value":0},{"value":4381900800},{"value":64}],"flavor":"ARM_THREAD_STATE64","lr":{"value":4348929134800842984},"cpsr":{"value":536875008},"fp":{"value":6098375760},"sp":{"value":6098375744},"esr":{"value":2449473543,"description":"(Data Abort) byte read Translation fault"},"pc":{"value":7133081152,"matchesCrashFrame":1},"far":{"value":4381900800}},"frames":[{"imageOffset":347712,"symbol":"dyld3::MachOFile::isMachO(Diagnostics&, unsigned long long) const","symbolLocation":40,"imageIndex":1},{"imageOffset":119016,"symbol":"dyld4::Loader::mapSegments(Diagnostics&, dyld4::RuntimeState&, char const*, unsigned long long, dyld4::Loader::CodeSignatureInFile const&, bool, dyld3::Array<dyld4::Loader::Region> const&, bool, bool, dyld4::Loader::FileValidationInfo const&)","symbolLocation":984,"imageIndex":1},{"imageOffset":153940,"symbol":"invocation function for block in dyld4::JustInTimeLoader::makeJustInTimeLoaderDisk(Diagnostics&, dyld4::RuntimeState&, char const*, dyld4::Loader::LoadOptions const&, bool, unsigned int, mach_o::Layout const*)","symbolLocation":88,"imageIndex":1},{"imageOffset":152304,"symbol":"dyld4::JustInTimeLoader::withRegions(dyld3::MachOFile const*, void (dyld3::Array<dyld4::Loader::Region> const&) block_pointer)","symbolLocation":292,"imageIndex":1},{"imageOffset":153752,"symbol":"invocation function for block in dyld4::JustInTimeLoader::makeJustInTimeLoaderDisk(Diagnostics&, dyld4::RuntimeState&, char const*, dyld4::Loader::LoadOptions const&, bool, unsigned int, mach_o::Layout const*)","symbolLocation":456,"imageIndex":1},{"imageOffset":181908,"symbol":"dyld4::SyscallDelegate::withReadOnlyMappedFile(Diagnostics&, char const*, bool, void (void const*, unsigned long, bool, dyld4::FileID const&, char const*) block_pointer) const","symbolLocation":132,"imageIndex":1},{"imageOffset":153244,"symbol":"dyld4::JustInTimeLoader::makeJustInTimeLoaderDisk(Diagnostics&, dyld4::RuntimeState&, char const*, dyld4::Loader::LoadOptions const&, bool, unsigned int, mach_o::Layout const*)","symbolLocation":208,"imageIndex":1},{"imageOffset":115732,"symbol":"invocation function for block in dyld4::Loader::getLoader(Diagnostics&, dyld4::RuntimeState&, char const*, dyld4::Loader::LoadOptions const&)","symbolLocation":1680,"imageIndex":1},{"imageOffset":117304,"symbol":"invocation function for block in dyld4::Loader::forEachResolvedAtPathVar(dyld4::RuntimeState&, char const*, dyld4::Loader::LoadOptions const&, dyld4::ProcessConfig::PathOverrides::Type, bool&, void (char const*, dyld4::ProcessConfig::PathOverrides::Type, bool&) block_pointer)","symbolLocation":436,"imageIndex":1},{"imageOffset":8920,"symbol":"dyld3::MachOFile::forEachLoadCommand(Diagnostics&, void (load_command const*, bool&) block_pointer) const","symbolLocation":296,"imageIndex":1},{"imageOffset":361928,"symbol":"dyld3::MachOFile::forEachRPath(void (char const*, bool&) block_pointer) const","symbolLocation":128,"imageIndex":1},{"imageOffset":112408,"symbol":"dyld4::Loader::forEachResolvedAtPathVar(dyld4::RuntimeState&, char const*, dyld4::Loader::LoadOptions const&, dyld4::ProcessConfig::PathOverrides::Type, bool&, void (char const*, dyld4::ProcessConfig::PathOverrides::Type, bool&) block_pointer)","symbolLocation":708,"imageIndex":1},{"imageOffset":36692,"symbol":"dyld4::ProcessConfig::PathOverrides::forEachPathVariant(char const*, dyld3::Platform, bool, bool, bool&, void (char const*, dyld4::ProcessConfig::PathOverrides::Type, bool&) block_pointer) const","symbolLocation":488,"imageIndex":1},{"imageOffset":111252,"symbol":"dyld4::Loader::forEachPath(Diagnostics&, dyld4::RuntimeState&, char const*, dyld4::Loader::LoadOptions const&, void (char const*, dyld4::ProcessConfig::PathOverrides::Type, bool&) block_pointer)","symbolLocation":248,"imageIndex":1},{"imageOffset":113128,"symbol":"dyld4::Loader::getLoader(Diagnostics&, dyld4::RuntimeState&, char const*, dyld4::Loader::LoadOptions const&)","symbolLocation":588,"imageIndex":1},{"imageOffset":145208,"symbol":"invocation function for block in dyld4::JustInTimeLoader::loadDependents(Diagnostics&, dyld4::RuntimeState&, dyld4::Loader::LoadOptions const&)","symbolLocation":412,"imageIndex":1},{"imageOffset":354280,"symbol":"invocation function for block in dyld3::MachOFile::forEachDependentDylib(void (char const*, bool, bool, bool, unsigned int, unsigned int, bool&) block_pointer) const","symbolLocation":148,"imageIndex":1},{"imageOffset":8920,"symbol":"dyld3::MachOFile::forEachLoadCommand(Diagnostics&, void (load_command const*, bool&) block_pointer) const","symbolLocation":296,"imageIndex":1},{"imageOffset":353840,"symbol":"dyld3::MachOFile::forEachDependentDylib(void (char const*, bool, bool, bool, unsigned int, unsigned int, bool&) block_pointer) const","symbolLocation":172,"imageIndex":1},{"imageOffset":144512,"symbol":"dyld4::JustInTimeLoader::loadDependents(Diagnostics&, dyld4::RuntimeState&, dyld4::Loader::LoadOptions const&)","symbolLocation":164,"imageIndex":1},{"imageOffset":27148,"symbol":"dyld4::prepare(dyld4::APIs&, dyld3::MachOAnalyzer const*)","symbolLocation":1236,"imageIndex":1},{"imageOffset":24088,"symbol":"start","symbolLocation":1964,"imageIndex":1}]}], "usedImages" : [ { "source" : "P", "arch" : "arm64", "base" : 4368498688, "size" : 49152, "uuid" : "c931c575-c6e9-3bef-9fce-876c9f0bdbea", "path" : "\/Users\/USER\/*\/TrianglerFast.app\/Contents\/MacOS\/TrianglerFast", "name" : "TrianglerFast" }, { "source" : "P", "arch" : "arm64e", "base" : 7132733440, "size" : 582996, "uuid" : "bd993f39-c902-37d6-8bd8-6d827c7f121e", "path" : "\/usr\/lib\/dyld", "name" : "dyld" }, { "size" : 0, "source" : "A", "base" : 0, "uuid" : "00000000-0000-0000-0000-000000000000" } ], "sharedCache" : { "base" : 7132069888, "size" : 3551805440, "uuid" : "7d9faa84-5c6b-3ef4-9379-faba64346673" }, "vmSummary" : "ReadOnly portion of Libraries: Total=802.5M resident=0K(0%) swapped_out_or_unallocated=802.5M(100%)\nWritable regions: Total=9824K written=0K(0%) resident=0K(0%) swapped_out=0K(0%) unallocated=9824K(100%)\n\n VIRTUAL REGION \nREGION TYPE SIZE COUNT (non-coalesced) \n=========== ======= ======= \nSTACK GUARD 56.0M 1 \nStack 8176K 1 \nVM_ALLOCATE (reserved) 1392K 1 reserved VM address space (unallocated)\n__DATA 27K 2 \n__DATA_CONST 38K 2 \n__DATA_DIRTY 7K 1 \n__LINKEDIT 801.9M 2 \n__TEXT 620K 2 \ndyld private memory 272K 2 \nmapped file 17.0M 2 \n=========== ======= ======= \nTOTAL 885.2M 16 \nTOTAL, minus reserved VM space 883.9M 16 \n", "legacyInfo" : { "threadTriggered" : { } }, "logWritingSignature" : "ac63a6d59d27ebf24e26ee4db9736e05a6a8e223", "trialInfo" : { "rollouts" : [ { "rolloutId" : "6246d6a916a70b047e454124", "factorPackIds" : { }, "deploymentId" : 240000010 }, { "rolloutId" : "62c73fd17cce0d1b0bcb8a02", "factorPackIds" : { "SIRI_DIALOG_ASSETS" : "651482b98d79034dd899e383" }, "deploymentId" : 240000212 } ], "experiments" : [ { "treatmentId" : "45f4e2a5-551b-4bc2-a2dc-19c244dda8f8", "experimentId" : "6643969b3099cf28e049862f", "deploymentId" : 400000007 } ] } } MAC Info //removed for privacy
-
Hi and welcome to devnet,
From the error message, you seem to have not signed the application bundle.
Without that, recent versions of macOS will not allow your application to run in their default settings. -
See Apple's documentation on the subject. Then use the ID you created with macdeployqt.
-
I probably sound super dumb, but what do you mean by the ID you created with macdeployqt? Just the Apple ID I used while creating it?
-
You have to tell macdeployqt that you want to sign your application bundle.
-
@ostrichking371 Hi,
macdeployqt will work for simple apps, most of the heavy lifting.
As you progress and start including 3rd party libraries, it will not be sufficient any more. Do yourself a favour and learn to work with codesign and friends from the start. That would be also beneficial should you try to port your code to run on multiple Apple platforms or experiment with the AppStore - macdeployqt is not very flexible when working with codesign.
What worked for me is I wrote myself shell script handling deployment (calling macdeployqt and other tools) with parameters etc. A bit of work but once done is just a single call from the terminal to have signed installation package for the destination of my choice...Having said all that, Apple didn't create the most user friendly dev environment but it's manageable, just lots of learning from the start.
-
See the macdeployqt documentation and the
-codesign
option. -
@ostrichking371 how do I link a Apple developer account so macdeployqt knows what sign to use? Again… I am new to c++ building and development.
-
@ostrichking371 It has nothing to do with C++. You need to create an account in apple developer console, create yourself appropriate certificates, import them to your wallet (I usually import whole bunch to Xcode too). Then you can use them with tools.
It should all be described in the Apple Developer documentation linked above. -
@ostrichking371 that's identity defined by your developer certificate for a given action type (certificates come in a few flavours: Mac development, distribution, etc.). As I wrote above, you'd need at least Mac Developer one, probably distribution - should you pack your program into dmg; probably more. Please familiarise yourself with Apple development process.
Just a note: for the purpose of using Qt on Mac, developing and running your software from Qt (macOS) or a simulator or associated developer device (iOS, iPadOS, etc) you should not need any certificates. Those come in handy just when you try to run your code independently or submit to AppStore. -
@artwaw that’s why I’m wondering. The error I posted at the top was on my own MacBook, the same one I deployed with. I don’t have an Apple developer subscription but I shouldn’t need one only my own laptop right? It works to just run an exe, but the bundle that includes the libraries gives this error.
-
I am writing these posts from my Mac, on which I am actively programming with Qt and never ever have I had the need to sign anything that I run from Qt Creator, also no need for deployment steps. If, however, you run standalone app package - yes, you need to do both.
I am unable to say how does CLion come into the equation as I never used it.