我正在尝试在 Debian 9 上为 android 编译 chromium,但出现此错误,有人可以帮我解决这个问题吗?
dacod@phoenix:~/Devel/chromium/src$ ninja -C out/Default cast_shell_apk
ninja: Entering directory `out/Default'
[0/21317] ACTION //third_party/WebKit/Source/bindings/modules/v8:generate...snapshot_external_references(//build/toolchain/android:android_clang_arm)
ninja: error:
WriteFile(__third_party_WebKit_Source_bindings_modules_v8_generate_v8_context_snapshot_external_references___build_toolchain_android_android_clang_arm__rule.rsp):
Unable to create file. File name too long
ninja: build stopped: .
最佳答案
您正在构建的文件系统不支持足够长的名称大小以容纳 150 个字符的文件名:
__third_party_WebKit_Source_bindings_modules_v8_generate_v8_context_snapshot_external_references___build_toolchain_android_android_clang_arm__rule.rsp
典型的文件系统将支持 255 个字符的文件名。这是一个引用:
https://serverfault.com/questions/9546/filename-length-limits-on-linux
然而,eCryptfs如果还配置为加密文件名本身,则仅支持 143 个字符的文件名 [ source ].你在你的主文件夹中构建并且它是加密的吗?如果是这样,这可能是原因。要检查文件名大小,请在构建文件夹中运行以下命令:
$ getconf NAME_MAX 。
143
如果它不是 255,您可能正在 ecryptfs 分区上构建。尝试在/tmp 中构建,因为它可能未加密。您可以通过以下方式检查:
$ getconf NAME_MAX/tmp
255
关于android - 无法在 Debian 9 上为 android 编译 Chromium - 无法创建文件。文件名太长,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47439114/