5

我正在尝试在启用 Bitcode 的情况下重建 WebRTC iOS 框架,但它不工作它给了我错误。错误信息是

clang++:错误:未知参数:'-ffile-compilation-dir=.'

clang++:错误:-fembed-bitcode 不支持 -gdwarf-aranges

如果我在没有 bitcode enable true 的情况下构建它,那么它就可以工作。谁能知道我为什么会遇到这个问题?我的 Xcode 版本是 12.5.1

4

3 回答 3

1

我使用llvm12在arm64 linux上构建webrtc,一开始遇到同样的错误 clang++: error: unknown argument: '-ffile-compilation-dir=.'


在 中src/build/config/compiler/BUILD.gn,有一些设置如下:

if (is_nacl) {
# TODO(https://crbug.com/1231236): Use -ffile-compilation-dir= here.
cflags += [
"-Xclang",
"-ffile-compilation-dir",
"-Xclang",
".",
]
} else {
# -ffile-compilation-dir is an alias for both -fdebug-compilation-dir=
# and -fcoverage-compilation-dir=.
cflags += [ "-ffile-compilation-dir=." ]
}

我把所有的都换了,-ffile-compilation-dir然后fdebug-compilation-dir效果很好!

于 2021-08-28T19:25:24.390 回答
1

看起来这已经在树顶铬中得到解决。根据此拉取请求,use_xcode_clang由于树顶 clang 支持而被删除-fembed-bitcodehttps ://github.com/chromium/chromium/commit/6edcf847d80f13740e1a26a86d3b95a0bb9fbcad

于 2021-12-16T20:32:39.837 回答
1

该错误是由于 Xcode 中的旧版本 clang 导致的。我使用给定的参数执行了脚本:

build_ios_libs.py --extra-gn-args 'use_xcode_clang=false enable_dsyms=true' --bitcode --arch device:arm64 simulator:x64

在 webRTC dist 中,有一个新版本的 LLVM (clang) 包,它将构建正确的框架!

于 2021-08-11T13:02:06.090 回答