mex failing to compile function

169 Ansichten (letzte 30 Tage)
Ron Crump
Ron Crump am 30 Sep. 2025
Kommentiert: Robert am 28 Okt. 2025 um 15:42
Hi.
I'm trying to compile functions previously compiled with mex in MATLAB
>> mex Cbetabinornd.cpp
Now gives the following error message:
Renamed options file '/Users/lfslbx/Library/Application Support/MathWorks/MATLAB/R2025b/mex_C++_maca64.xml' to '/Users/lfslbx/Library/Application Support/MathWorks/MATLAB/R2025b/mex_C++_maca64_backup.xml'.
Building with 'Xcode Clang++'.
Error using mex
Undefined symbols for architecture arm64:
"_mexCreateMexFunction", referenced from:
<initial-undefines>
"_mexDestroyMexFunction", referenced from:
<initial-undefines>
"_mexFunctionAdapter", referenced from:
<initial-undefines>
ld: symbol(s) not found for architecture arm64
clang++: error: linker command failed with exit code 1 (use -v to see invocation)
If I use the -v option there is a lot of information, I can paste it here if required.
I think this has happened since my last MacOS upgrade (to Sequoia 15.7) and/or xcode command line tools update (clang++ version 17.0.0).
I have tried uninstalling and reinstalling the xcode command line tools and have installed MATLAB 2025b (it was failing on 2023b also).
Any suggestions welcomed.
Thanks.

Akzeptierte Antwort

Ron Crump
Ron Crump am 8 Okt. 2025
Verschoben: Torsten am 8 Okt. 2025
The two .cpp files in question were using the C API. We have recoded them to use the C++ API and they now compile.
  3 Kommentare
Ron Crump
Ron Crump am 10 Okt. 2025 um 11:04
Thanks, Bruno. Good to know.
Robert
Robert am 28 Okt. 2025 um 15:42
Thanks Bruno, fixed my problem with this message as well, for now.
FYI, on my 2024b LINKFLAGS didnt' work, I had to use LDFLAGS
also note the: ld: warning: -ld_classic is deprecated and will be removed in a future release

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Write C Functions Callable from MATLAB (MEX Files) finden Sie in Help Center und File Exchange

Produkte


Version

R2025b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by