Bazel 7.1.0在含日文字符的文件夹中构建失败求助
Bazel 7.1.0在含日文字符路径下构建报错的解决建议
问题描述
我使用英文版本Linux Mint 21系统与Bazel 7.1.0,在包含日文字符的文件夹(如/tmp/ワーク)中构建简单C++ Hello-World项目时,触发如下报错:
/tmp/ワーク:$ bazel build //...
Starting local Bazel server and connecting to it...
ERROR: Client cwd '/tmp/ワーク' is not inside workspace '/tmp/???'
/tmp/ワーク:$
该错误在构建初期就出现,BUILD文件的具体内容不影响问题触发。我了解到该问题在2017年已有相关工单提交,但未修复便被关闭。
请问是否有可用参数解决该问题?我推测可能是环境配置问题,因为网上相关讨论较少。
解决建议
- 修正字符编码环境:在执行Bazel命令前,设置UTF-8编码的环境变量,确保系统能正确解析日文字符路径:
执行后再重新运行export LC_ALL=en_US.UTF-8bazel build //...。 - 强制指定工作区路径:启动Bazel时通过
--workspace_directory参数明确指定工作区的完整路径,绕过自动识别的编码问题:bazel build --workspace_directory=/tmp/ワーク //... - 临时规避方案:将项目移动到不含非ASCII字符的路径下(如
/tmp/work),这是最直接避免路径编码问题的方式。
内容的提问来源于stack exchange,提问作者Peter S
相关产品推荐
相关产品推荐

