fix(m9): link ICCeryCore statically so the app launches standalone (#117) #118

Merged
gronod merged 1 commits from feat/117-static-iccerycore into milestone/m9-monterey 2026-09-12 09:17:24 +01:00
Owner

Fixes #117.

The app crashed at launch on the macOS 12 VM:

Termination Reason: DYLD, Code 1 Library missing
Library not loaded: '@rpath/ICCeryCore_7B5160A3714042B2_PackageProduct.framework/...'

When the app and both test bundles share the local ICCeryCore package, Xcode builds it as a dynamic package-product framework (PackageFrameworks/) that is not embedded in ICCery.app — so any launch outside the test host (UI tests, manual run) dies in dyld. The shipped DMG escapes this because the Release package build only builds the app target, which links the package statically.

Fix: .library(name: "ICCeryCore", type: .static, ...) in Packages/ICCeryCore/Package.swift. Verified locally: xcodebuild build succeeds and otool -L on the produced binary no longer references the PackageProduct framework — nothing to embed, no dyld dependency.

Fixes #117. The app crashed at launch on the macOS 12 VM: ``` Termination Reason: DYLD, Code 1 Library missing Library not loaded: '@rpath/ICCeryCore_7B5160A3714042B2_PackageProduct.framework/...' ``` When the app and both test bundles share the local `ICCeryCore` package, Xcode builds it as a dynamic package-product framework (`PackageFrameworks/`) that is not embedded in `ICCery.app` — so any launch outside the test host (UI tests, manual run) dies in dyld. The shipped DMG escapes this because the Release package build only builds the app target, which links the package statically. Fix: `.library(name: "ICCeryCore", type: .static, ...)` in `Packages/ICCeryCore/Package.swift`. Verified locally: `xcodebuild build` succeeds and `otool -L` on the produced binary no longer references the PackageProduct framework — nothing to embed, no dyld dependency.
gronod added the
Priority
Critical
1
Project/ICCery-v2Bug/Architecture
labels 2026-09-12 09:15:06 +01:00
gronod added 1 commit 2026-09-12 09:15:08 +01:00
When the app and test bundles share the local ICCeryCore package, Xcode
builds it as a dynamic package-product framework that is not embedded
in ICCery.app — the app crashes in dyld at launch when run outside the
test host (macOS 12 VM crash, run 31985 products). Declare the product
.static so each consumer links it directly.

Generated with [Devin](https://devin.ai)

Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
gronod merged commit c3c9bbc5ba into milestone/m9-monterey 2026-09-12 09:17:24 +01:00
Sign in to join this conversation.
No Reviewers
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: gronod/iccery-v2-mac#118