Taken from ports LLVM. Need -lexecinfo for Backtrace symbols. Index: driver/linker-gcc.cpp --- driver/linker-gcc.cpp.orig +++ driver/linker-gcc.cpp @@ -414,7 +414,6 @@ void ArgsBuilder::addCppStdlibLinkFlags(const llvm::Tr break; case llvm::Triple::Solaris: case llvm::Triple::NetBSD: - case llvm::Triple::OpenBSD: case llvm::Triple::DragonFly: args.push_back("-lstdc++"); break; @@ -424,6 +423,7 @@ void ArgsBuilder::addCppStdlibLinkFlags(const llvm::Tr case llvm::Triple::WatchOS: case llvm::Triple::TvOS: case llvm::Triple::FreeBSD: + case llvm::Triple::OpenBSD: args.push_back("-lc++"); break; default: @@ -665,11 +665,14 @@ void ArgsBuilder::addDefaultPlatformLibs() { args.push_back("-lrt"); args.push_back("-ldl"); // fallthrough + case llvm::Triple::OpenBSD: + args.push_back("-lexecinfo"); + args.push_back("-lc++abi"); + // fallthrough case llvm::Triple::Darwin: case llvm::Triple::MacOSX: case llvm::Triple::FreeBSD: case llvm::Triple::NetBSD: - case llvm::Triple::OpenBSD: case llvm::Triple::DragonFly: addSoname = true; args.push_back("-lpthread");