Reoptimize-Systems / xfemm

Direct interface to the popular finite element codes from FEMM
47 stars 22 forks source link

compiling mfemm under Matlab 2022b on Mac M1 #16

Open ericmaslen opened 1 year ago

ericmaslen commented 1 year ago

After making some minor code adjustments, I get the message below. It's too arcane for me to follow but I suspect that I need to invoke a different library rather than -static-libstdc++. I'm stumped at this point.

mfemm_setup() mex -O -D_GLIBCXX_USE_CXX11_ABI=1 -I"../cfemm/fmesher" -I"../cfemm/fmesher/triangle" -I"../cfemm/libfemm" -I"../cfemm/libfemm/liblua" -DLINUX -DNDEBUG CXXOPTIMFLAGS="-O2 " GCC="\$GCC" OPTIMFLAGS="-O2" CXXFLAGS="\$CXXFLAGS -std=c++11 -fpermissive" LDFLAGS="\$LDFLAGS -static-libstdc++ '-Wl,--no-undefined,-v'" /Users/ehm7s/Documents/GitHub/xfemm/mfemm/../cfemm/fmesher/fmesher.o /Users/ehm7s/Documents/GitHub/xfemm/mfemm/../cfemm/fmesher/nosebl.o /Users/ehm7s/Documents/GitHub/xfemm/mfemm/../cfemm/fmesher/triangle/triangle.o /Users/ehm7s/Documents/GitHub/xfemm/mfemm/../cfemm/fmesher/writepoly.o /Users/ehm7s/Documents/GitHub/xfemm/mfemm/../cfemm/libfemm/CAirGapElement.o /Users/ehm7s/Documents/GitHub/xfemm/mfemm/../cfemm/libfemm/CArcSegment.o /Users/ehm7s/Documents/GitHub/xfemm/mfemm/../cfemm/libfemm/CBlockLabel.o /Users/ehm7s/Documents/GitHub/xfemm/mfemm/../cfemm/libfemm/CBoundaryProp.o /Users/ehm7s/Documents/GitHub/xfemm/mfemm/../cfemm/libfemm/CCircuit.o /Users/ehm7s/Documents/GitHub/xfemm/mfemm/../cfemm/libfemm/CCommonPoint.o /Users/ehm7s/Documents/GitHub/xfemm/mfemm/../cfemm/libfemm/CElement.o /Users/ehm7s/Documents/GitHub/xfemm/mfemm/../cfemm/libfemm/CMaterialProp.o /Users/ehm7s/Documents/GitHub/xfemm/mfemm/../cfemm/libfemm/CMeshNode.o /Users/ehm7s/Documents/GitHub/xfemm/mfemm/../cfemm/libfemm/CNode.o /Users/ehm7s/Documents/GitHub/xfemm/mfemm/../cfemm/libfemm/CPointProp.o /Users/ehm7s/Documents/GitHub/xfemm/mfemm/../cfemm/libfemm/CSegment.o /Users/ehm7s/Documents/GitHub/xfemm/mfemm/../cfemm/libfemm/CliTools.o /Users/ehm7s/Documents/GitHub/xfemm/mfemm/../cfemm/libfemm/FemmProblem.o /Users/ehm7s/Documents/GitHub/xfemm/mfemm/../cfemm/libfemm/FemmReader.o /Users/ehm7s/Documents/GitHub/xfemm/mfemm/../cfemm/libfemm/FemmStateBase.o /Users/ehm7s/Documents/GitHub/xfemm/mfemm/../cfemm/libfemm/IntPoint.o /Users/ehm7s/Documents/GitHub/xfemm/mfemm/../cfemm/libfemm/LuaInstance.o /Users/ehm7s/Documents/GitHub/xfemm/mfemm/../cfemm/libfemm/PostProcessor.o /Users/ehm7s/Documents/GitHub/xfemm/mfemm/../cfemm/libfemm/cspars.o /Users/ehm7s/Documents/GitHub/xfemm/mfemm/../cfemm/libfemm/cuthill.o /Users/ehm7s/Documents/GitHub/xfemm/mfemm/../cfemm/libfemm/feasolver.o /Users/ehm7s/Documents/GitHub/xfemm/mfemm/../cfemm/libfemm/femmconstants.o /Users/ehm7s/Documents/GitHub/xfemm/mfemm/../cfemm/libfemm/femmenums.o /Users/ehm7s/Documents/GitHub/xfemm/mfemm/../cfemm/libfemm/femmversion.o /Users/ehm7s/Documents/GitHub/xfemm/mfemm/../cfemm/libfemm/fparse.o /Users/ehm7s/Documents/GitHub/xfemm/mfemm/../cfemm/libfemm/fullmatrix.o /Users/ehm7s/Documents/GitHub/xfemm/mfemm/../cfemm/libfemm/liblua/femmcomplex.o /Users/ehm7s/Documents/GitHub/xfemm/mfemm/../cfemm/libfemm/liblua/lapi.o /Users/ehm7s/Documents/GitHub/xfemm/mfemm/../cfemm/libfemm/liblua/lauxlib.o /Users/ehm7s/Documents/GitHub/xfemm/mfemm/../cfemm/libfemm/liblua/lbaselib.o /Users/ehm7s/Documents/GitHub/xfemm/mfemm/../cfemm/libfemm/liblua/lcode.o /Users/ehm7s/Documents/GitHub/xfemm/mfemm/../cfemm/libfemm/liblua/ldblib.o /Users/ehm7s/Documents/GitHub/xfemm/mfemm/../cfemm/libfemm/liblua/ldebug.o /Users/ehm7s/Documents/GitHub/xfemm/mfemm/../cfemm/libfemm/liblua/ldo.o /Users/ehm7s/Documents/GitHub/xfemm/mfemm/../cfemm/libfemm/liblua/lfunc.o /Users/ehm7s/Documents/GitHub/xfemm/mfemm/../cfemm/libfemm/liblua/lgc.o /Users/ehm7s/Documents/GitHub/xfemm/mfemm/../cfemm/libfemm/liblua/liolib.o /Users/ehm7s/Documents/GitHub/xfemm/mfemm/../cfemm/libfemm/liblua/llex.o /Users/ehm7s/Documents/GitHub/xfemm/mfemm/../cfemm/libfemm/liblua/lmathlib.o /Users/ehm7s/Documents/GitHub/xfemm/mfemm/../cfemm/libfemm/liblua/lmem.o /Users/ehm7s/Documents/GitHub/xfemm/mfemm/../cfemm/libfemm/liblua/lobject.o /Users/ehm7s/Documents/GitHub/xfemm/mfemm/../cfemm/libfemm/liblua/lparser.o /Users/ehm7s/Documents/GitHub/xfemm/mfemm/../cfemm/libfemm/liblua/lstate.o /Users/ehm7s/Documents/GitHub/xfemm/mfemm/../cfemm/libfemm/liblua/lstring.o /Users/ehm7s/Documents/GitHub/xfemm/mfemm/../cfemm/libfemm/liblua/lstrlib.o /Users/ehm7s/Documents/GitHub/xfemm/mfemm/../cfemm/libfemm/liblua/ltable.o /Users/ehm7s/Documents/GitHub/xfemm/mfemm/../cfemm/libfemm/liblua/ltests.o /Users/ehm7s/Documents/GitHub/xfemm/mfemm/../cfemm/libfemm/liblua/ltm.o /Users/ehm7s/Documents/GitHub/xfemm/mfemm/../cfemm/libfemm/liblua/lundump.o /Users/ehm7s/Documents/GitHub/xfemm/mfemm/../cfemm/libfemm/liblua/lvm.o /Users/ehm7s/Documents/GitHub/xfemm/mfemm/../cfemm/libfemm/liblua/lzio.o /Users/ehm7s/Documents/GitHub/xfemm/mfemm/../cfemm/libfemm/spars.o /Users/ehm7s/Documents/GitHub/xfemm/mfemm/../cfemm/libfemm/stringTools.o mexfmesher.cpp -output mexfmesher.mexmaca64 Building with 'Xcode Clang++'. Error using mex clang: warning: argument unused during compilation: '-static-libstdc++' [-Wunused-command-line-argument] @(#)PROGRAM:ld PROJECT:ld64-857.1 BUILD 23:13:29 May 7 2023 configured to support archs: armv6 armv7 armv7s arm64 arm64e arm64_32 i386 x86_64 x86_64h armv6m armv7k armv7m armv7em Library search paths: /Applications/MATLAB_R2022b_Beta.app/bin/maca64 /Applications/MATLAB_R2022b_Beta.app/extern/bin/maca64 /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/lib /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/lib Framework search paths: /Library/Frameworks/ /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks/ /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks/ ld: unknown option: --no-undefined clang: error: linker command failed with exit code 1 (use -v to see invocation)

ericmaslen commented 1 year ago

I'm working a branch called MAC_M1_implementation which I will publish shortly.

reos-rcrozier commented 8 months ago

Unfortunately I do not have access to the mac platform to test