Hi all,
I'm looking forward to test driving the experimental matlab toolbox on my Apple M1 Pro. I compiled the latest version from source (commit #
2054d5e · ) Using the installations from readme.md to compile the matlab toolbox, I get this error below
Any suggestions would be greatly appreciated
It looks like Cantera compiled thinking my mac is x86_64, but my Matlab installed natively for the arm64 architecture
Thanks,
Santosh
Paths used in the build process:
Cantera Toolbox Root: /Users/santosh1/packages/canteraSource/interfaces/matlab_experimental
Include Directory: /Users/santosh1/packages/ct_dev_version/include
Cantera Library: /Users/santosh1/packages/ct_dev_version/lib
Output Folder: /Users/santosh1/packages/canteraSource/interfaces/matlab_experimental/cantera
MEX configured to use 'Xcode Clang++' for C++ language compilation.
Deleted file '/Users/santosh1/packages/canteraSource/interfaces/matlab_experimental/cantera/definectMatlab.m'.
C++ compiler set to 'Xcode Clang++'.
Definition file definectMatlab.m contains definitions for 428 constructs supported by MATLAB.
- 324 constructs are fully defined.
- 104 constructs partially defined and commented out.
To include the 104 undefined constructs in the interface, uncomment and complete the definitions in definectMatlab.m.
To build the interface, call build(definectMatlab).
Building interface file 'ctMatlabInterface.dylib' for clib interface 'ctMatlab'.
Build Log:
/usr/bin/xcrun -sdk macosx26.0 clang++ -c -fno-common -arch arm64 -mmacosx-version-min=12.0 -fexceptions -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX26.0.sdk -fwrapv -ffp-contract=off -fobjc-arc -std=c++14 -stdlib=libc++ -O2 -DNDEBUG -I"/Users/santosh1/packages/ct_dev_version/include" -I"/Applications/MATLAB_R2024b.app/extern/include" "/Users/santosh1/packages/canteraSource/interfaces/matlab_experimental/cantera/ctMatlab/ctMatlabInterface.cpp" -o "/Users/santosh1/packages/canteraSource/interfaces/matlab_experimental/cantera/ctMatlab/ctMatlabInterface.o"
/usr/bin/xcrun -sdk macosx26.0 clang++ -Wl,-twolevel_namespace -arch arm64 -mmacosx-version-min=12.0 -Wl,-syslibroot,/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX26.0.sdk -framework Cocoa -bundle -stdlib=libc++ "/Users/santosh1/packages/canteraSource/interfaces/matlab_experimental/cantera/ctMatlab/ctMatlabInterface.o" "/Users/santosh1/packages/ct_dev_version/lib/libcantera_shared.3.2.0.dylib" "/Applications/MATLAB_R2024b.app/extern/bin/maca64/libMatlabDataArray.dylib" -Wl,-rpath,@loader_path/ -O -o "/Users/santosh1/packages/canteraSource/interfaces/matlab_experimental/cantera/ctMatlab/ctMatlabInterface.dylib" -sectcreate __TEXT us_resources "/Users/santosh1/packages/canteraSource/interfaces/matlab_experimental/cantera/ctMatlab/ctMatlab.zip"
---
Error using clibgen.internal.buildHelper (line 116)
Build failed with error:
'ld: warning: ignoring file '/Users/santosh1/packages/ct_dev_version/lib/libcantera_shared.3.2.0.dylib': found
architecture 'x86_64', required architecture 'arm64'
Undefined symbols for architecture arm64:
"_bdry_massFraction", referenced from:
(anonymous namespace)::FPassThrough91(void*, void (*)(void*, int, matlab::data::impl::ArrayImpl**), int,
matlab::data::impl::ArrayImpl**, void (*)(void*, char const*, char const*)) in ctMatlabInterface.o
"_bdry_mdot", referenced from: