CLion运行默认C代码报错:文件缺失且无生成规则求助
解决CLion运行默认C代码时的Ninja编译错误
错误原因分析
从报错路径中的Laçin可以看出,你的用户文件夹名称包含非ASCII特殊字符(土耳其语ç),导致CMake/Ninja在解析文件路径时出现编码混乱,无法正确找到main.c源文件。源文件找不到,编译器自然不会生成对应的main.c.obj目标文件。
解决方案
1. 迁移项目到纯ASCII路径(优先推荐)
- 关闭CLion,将当前项目文件夹从
C:/Users/Kagan Laçin/CLionProjects/untitled1移动到无特殊字符的路径,比如C:/CLionProjects/untitled1 - 重新打开CLion,选择
File > Open导入迁移后的项目,点击工具栏的Build按钮重新构建,再运行程序
2. 重置CMake缓存并重新加载项目
- 打开CLion,依次点击
File > Settings > Build, Execution, Deployment > CMake - 点击右侧的
Reset Cache and Reload Project按钮,强制重新生成CMake配置文件,解决缓存中的路径错误
3. 更换纯ASCII名称的Windows用户账户(彻底解决)
如果不想每次创建项目都纠结路径,可以新建一个用户名全为英文/数字的Windows账户,将原账户的文件迁移后,用新账户登录使用CLion。注意:直接修改现有用户文件夹名称容易导致系统软件路径关联出错,不推荐新手操作
注意事项
- 新手创建CLion项目时,务必选择路径仅包含英文、数字和下划线的目录,避免中文、特殊符号或非ASCII字符
main.c.obj是编译过程的中间产物,只有当编译器成功找到并读取main.c源文件后,才会生成该文件
内容的提问来源于stack exchange,提问作者codefather
相关产品推荐
相关产品推荐

