首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在linux中生成Gsettings文件

在linux中生成Gsettings文件
EN

Stack Overflow用户
提问于 2020-01-03 11:28:29
回答 1查看 269关注 0票数 0

我正在使用G设置模式并拥有com.test.gschema.xml文件。现在,模式中的一些键是enum,因此我需要com.test.enums.xml文件。

现在我使用的是gsettings_ENUM_NAMESPACEgsettings_ENUM_FILES.,因此不能使用CMakeLists在搜索时,我发现我们可以使用灵芝实用程序,但是我尝试使用它生成*.enums.xml文件,方法是为它提供具有枚举声明和定义的.c和.h文件,但是它所做的只是生成一个没有枚举的空文件。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-01-04 02:44:21

glib-mkenums实用程序为枚举定义解析C文件,并可用于生成其他文件--通常是GType枚举定义与GObject一起使用的C源。同样的实用工具也可以用于生成其他文件类型,比如GSettings模式的。

您可以查看由gsettings.m4提供的GLib宏文件,以获得宏在使用Autotools时为您生成的glib-mkenums咒语:

代码语言:javascript
复制
glib-mkenums \
  --comments '<!-- @comment@ -->' \
  --fhead "<schemalist>" \
  --vhead "  <@type@ id=\'$NAMESPACE.@EnumName@\'>" \
  --vprod "    <value nick=\'@valuenick@\' value=\'@valuenum@\'/>" \
  --vtail "  </@type@>" \
  --ftail "</schemalist>" \
  --output $OUTPUT_FILE \
  $INPUT_FILES

其中,$NAMESPACE是库的命名空间,它将是gsettings_ENUM_NAMESPACE值;$INPUT_FILES包含定义枚举类型以用作设置值的文件列表;$OUTPUT_FILE是正在生成的$OUTPUT_FILE文件。

我建议阅读glib-mkenums手册页面,其中列出了所有的扩展和选项。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59577832

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档