c++ - 在 OSX10.15 上将自己的 dylib 与 libtool 链接时未定义的符号“__Unwind_Resume”
问题描述
尝试在 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 找到它,如果正确理解,编译器应该自己弄清楚。
感谢任何建议
解决方案
推荐阅读
- python - 如何使用 python 绘制从 RTL SDR 接收到的信号的实时图表?
- javascript - 处理完数据后如何刷新kafka队列?
- c# - 如何使用 Selenium C# 将数值发送到输入标签
- c++ - 是否可以捕获全局鼠标事件
- go - 使用 govmomi 库在 golang 中的零点尊重
- apache - Roundcube 显示 net::ERR_ABORTED 403 (Forbidden) 错误
- html - 水平滚动容器?
- linux - 为什么这个程序会出现段错误?
- css - 如何重新定位 google rechapta 弹出窗口?
- android - Google Play 服务 SMS 和 CALL LOGS 权限问题