Tizen Studio构建Stopwatch模板失败,如何解决编译报错?
解决Stopwatch模板构建时edje_cc执行失败的问题
从你给出的构建日志来看,核心问题是edje_cc工具执行时系统找不到指定文件,进而引发了Ninja的句柄错误。下面是几个针对性的解决方案,你可以逐一排查:
检查edje_cc工具的存在性与环境变量配置
首先确认Tizen SDK中是否包含edje_cc.exe,它通常位于E:/Tizen/tools/edje-editor/bin这类路径下。如果文件存在,但系统找不到,说明这个目录没加入系统PATH环境变量:- 打开系统环境变量设置,把
edje_cc所在的bin目录添加到PATH中; - 重启你的IDE或终端,让环境变量生效后再尝试构建。
如果找不到edje_cc.exe,大概率是Tizen SDK安装不完整,重新安装时确保勾选了Elementary/Edje相关的工具组件。
- 打开系统环境变量设置,把
验证EDC文件的资源路径正确性
构建命令里的-id/-sd/-fd参数指定了资源文件的搜索路径,你需要逐一确认:- 相对路径如
../edje/images是否和项目实际目录结构匹配,有没有拼写错误; - 绝对路径
E:/Tizen/tools/edc-editor/share/enventor/images是否真实存在,当前用户是否有访问权限。
任何一个路径无效都会导致edje_cc无法找到依赖资源,进而执行失败。
- 相对路径如
清理构建缓存后重新构建
增量构建的缓存有时会出现异常,导致工具调用出错:- 手动删除项目的
build目录,或者在Tizen Studio中执行Clean Project操作; - 也可以在终端进入构建目录,执行
ninja clean清理缓存,再运行ninja all重新构建。
- 手动删除项目的
排查Ninja工具的兼容性问题
日志里的ReadFile: Referensen (handle) is wrong是句柄错误,可能是Ninja版本与Tizen工具链不兼容:- 尝试更新Ninja到最新稳定版;
- 或者改用Tizen SDK自带的Ninja工具(一般在SDK的
tools目录下),确保工具链版本匹配。
确认项目配置中的Edje Compiler路径
在Tizen Studio的项目设置中,找到Edje相关的配置项,检查Edje Compiler的路径是否指向正确的edje_cc.exe位置,避免配置了无效路径导致调用失败。
内容的提问来源于stack exchange,提问作者David Ruland




