afichet / openexr-viewer

Simple viewer for OpenEXR files with detailed metadata display
BSD 3-Clause "New" or "Revised" License
92 stars 6 forks source link

macOS version support #37

Open Coool opened 1 year ago

Coool commented 1 year ago

Current (0.5.2) latest release crashes on macOS High Sierra 10.13.6 (17G14042).

Crash Report:

Termination Reason: DYLD, [0x4] Symbol missing

Application Specific Information: dyld: launch, loading dependent libraries

Dyld Error Message: Symbol not found: _NSAppearanceNameDarkAqua Referenced from: /Users/USER//OpenEXR-Viewer.app/Contents/MacOS/../Frameworks/QtCore.framework/Versions/A/QtCore (which was built for Mac OS X 10.14) Expected in: /System/Library/Frameworks/AppKit.framework/Versions/C/AppKit in /Users/USER//OpenEXR-Viewer.app/Contents/MacOS/../Frameworks/QtCore.framework/Versions/A/QtCore

Was it compiled on macOS Mojave 10.14?

Could not compiled myself complaining about missing Imath library:

CMake Error at CMakeLists.txt:192 (target_link_libraries): Target "openexr-viewer" links to:

Imath::Imath

but the target was not found. Possible reasons include:

  • There is a typo in the target name.
  • A find_package call is missing for an IMPORTED target.
  • An ALIAS target is missing.

CMakeCache.txt reports that Imath_DIR is set to correct directory. Any clue?

Thanks.

afichet commented 1 year ago

Hi,

Thanks for reporting this crash.

I don't have access to a genuine Apple device, I am doing the builds on a VM, with an older macOS release. That may explain the problem with recent macOS revisions.

Regarding the build, from my recollection, there is an old version of the OpenEXR library shipped with the system. Since this needs a fairly recent revision of the library, you need to use brew or a similar tool to get an up-to-date version of the library. Otherwise, that may confuse CMake.

I am not sure if this is the issue, but it looks like it, regarding the error. If you manage to fix it this way, I'd be interested to get your feedback.

Thanks for the report. This encourages me to use CMake ExternalProject feature in future a release to avoid those issues.