Skip to content

Add macOS support for Intel Macs#12

Open
pahalovi wants to merge 2 commits intopredictivephenomics:mainfrom
pahalovi:main
Open

Add macOS support for Intel Macs#12
pahalovi wants to merge 2 commits intopredictivephenomics:mainfrom
pahalovi:main

Conversation

@pahalovi
Copy link
Copy Markdown

Summary

This PR adds comprehensive macOS support for Intel Macs, including automated installation and build scripts.

Changes

CMakeLists.txt

  • Add macOS detection and MACOSX_BUNDLE configuration
  • Add Apple Silicon (ARM64) architecture detection
  • Disable AVX instructions on ARM processors (prevents build errors)
  • Add DMG packaging support for macOS distribution
  • Add macOS-specific bundle properties (app name, version, copyright)

Documentation

  • INSTALL_INTEL_MAC.md - Quick installation guide for Intel Macs
  • README_macOS.md - Comprehensive macOS documentation with manual build instructions
  • Detailed troubleshooting and system requirements

Build Scripts

  • install_macos_intel.sh - One-shot automated installation script
    • Verifies Intel architecture
    • Installs Homebrew and dependencies
    • Builds cvutil with macOS patches
    • Builds RhizoVision Explorer
    • Creates launch scripts and symlinks
  • build_macos.sh - Manual build script with architecture auto-detection

.gitignore

  • Add build directories and .codegraph to ignored files

Platform Support

Intel Macs (x86_64) - Fully supported with AVX2 optimizations
Apple Silicon (M1/M2/M3) - Currently blocked due to cvutil dependency using x86-specific CPU instructions

Testing Needed

This PR has been developed and tested with:

  • macOS 15.4 (Sequoia)
  • Homebrew package manager
  • Qt 6.11, OpenCV 4.13, CMake 4.3

Needs testing on Intel Mac hardware - The changes were developed on Apple Silicon but are specifically designed for Intel Macs. Testing on actual Intel Mac hardware would be valuable.

Installation

For Intel Mac users:

./install_macos_intel.sh

See INSTALL_INTEL_MAC.md for detailed instructions.

Future Work

  • Port cvutil to support Apple Silicon (requires replacing x86 intrinsics with ARM NEON equivalents)
  • Create PackageMacOS.cmake for advanced DMG customization
  • Test Rosetta 2 compatibility for Apple Silicon users

Related Issues

Addresses the need for macOS support mentioned in the README which previously only documented Windows build instructions.

pahalovi and others added 2 commits April 20, 2026 21:55
- Add macOS detection and MACOSX_BUNDLE configuration to CMakeLists.txt
- Add Apple Silicon (ARM64) architecture detection
- Disable AVX instructions on ARM processors (prevents build errors)
- Create one-shot automated installation script for Intel Macs
- Add macOS-specific documentation (README_macOS.md, INSTALL_INTEL_MAC.md)
- Add macOS build script with architecture auto-detection
- Add DMG packaging support for macOS distribution

Note: Apple Silicon (M1/M2/M3) support is currently blocked due to
cvutil library dependency using x86-specific CPU instructions. The
software builds and runs on Intel Macs only.

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant