尝试在 OSX 10.15 上编译代码。这在 OSX 10.12 上完美运行并被卡住了。非常熟悉使用未定义符号进行链接和问题解决的一般概念,如这里所描述的那样。仅使用命令行工具,libtool 和 clang++ 由 Xcode 提供。似乎是我本地 OSX CLT 链的问题。尝试重新安装完整的 Xcode。
编译文件:
clang++ -g -Wall -arch x86_64 -o ./Permutation.o Permutation.cpp
clang++ -g -Wall -arch x86_64 -o ./MarchingCubes.o MarchingCubes.cpp
然后链接到共享库:
libtool -install_name @rpath/libmodelling.dylib -dynamic -L../../../release/lib/ -lstdc++ -lpthread -lz -lm Permutation.o MarchingCubes.o -o ../../../release/lib//libmodelling.dylib
导致
Undefined symbols for architecture x86_64:
"__Unwind_Resume", referenced from:
__ZN13MarchingCubesD2Ev in MarchingCubes.o
尝试了一些关于stackoverflow的类似问题的提示,例如:设置-mmacosx-version-min=10.9,将-lstdc++更改为-lc++,尝试g++ face of clang++
提供“未定义符号”的 libunwind.dylib 位于我系统上的 /usr/lib/system 中,应该通过伞形框架 System 找到它,如果正确理解,编译器应该自己弄清楚。
感谢任何建议