Fix/macos build m1#63
Merged
Merged
Conversation
Build fixes (src/Makefile.common, src/core/Makefile): - Detect Boost prefix via `brew --prefix boost` on Darwin instead of hardcoding /usr/local, which is not used on Apple Silicon - Update default MATHPATH to Wolfram Engine app bundle - Drop -mt suffix from boost_program_options on Darwin (removed in Boost 1.69+) Runtime fix (src/core/symbolic_simulate.cpp, src/core/ProgramOptions.cpp): - Double-quote the kernel path in the WSTP linkname string so paths containing spaces (e.g. "Wolfram Engine.app") are parsed correctly - Add detect_math_kernel() on macOS to auto-detect the Wolfram kernel at runtime: tries `math` in PATH (licensed Mathematica) first, then Mathematica.app, then Wolfram Engine.app bundle, then falls back to `math` Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Fix CXX defaulting to broken GCC 14 (built for darwin23, running on darwin24): replace `CXX ?= clang++` with $(origin) check so Make's built-in default 'c++' is overridden while user-set CXX is respected - Fix detect_math_kernel() to prefer native WolframKernel binaries in app bundles over the 'math' shell script wrapper in PATH, which WSTP cannot use as a kernel process Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Use ?= instead of origin checks to set default compilers, matching the develop branch approach. This allows better user override flexibility while providing clang/clang++ defaults. 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
CC is not used since the codebase contains no .c files (only .cc/.cpp). Keep the line commented for future reference. 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
- Extend Wolfram auto-detection from macOS to Ubuntu - Auto-detect MATHPATH in Makefile for latest installation - Auto-detect math kernel at runtime for Ubuntu - Simplify Ubuntu build from 6 steps to 5 steps - Use system compiler defaults (g++ Ubuntu, clang++ macOS) - Add fallback manual configuration for edge cases This provides a consistent cross-platform build experience while maintaining full user override capabilities. 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.