替换glib库的数据类型

2022-03-23 10:17:59 浏览数 (1)

作者: 付汉杰 hankf@xilinx.com hankf@amd.com 测试环境: PetaLinux 2021.2

glib库是Linux平台下最常用的C语言函数库。有一个应用程序使用了glib的数据类型开发。而客户不打算使用glib库。 使用sed工具,可以自动把glib的数据类型,替换成标准C语言的的数据类型。主要命令是“ sed -i "s/旧字符串/新字符串/g"”。

下面是相关脚本,替换本目录的所有文件里的glib的数据类型为标准C语言的的数据类型。

代码语言:javascript复制
  sed -i "s/ gchar / char /g"  *
  sed -i "s/^gchar /char /g"  *
  sed -i "s/(gchar /(char /g"  *
  
  sed -i "s/ gint / int /g"  *
  sed -i "s/^gint /int /g"  *
  sed -i "s/(gint /(int /g"  *
  
  sed -i "s/ gint32 / int /g"  *
  sed -i "s/^gint32 /int /g"  *
  sed -i "s/(gint32 /(int /g"  *
  
  sed -i "s/ guint / uint32_t /g"  *
  sed -i "s/^guint /uint32_t /g"  *
  sed -i "s/(guint /(uint32_t /g"  *
  
  sed -i "s/ uint_t / uint32_t /g"  *
  sed -i "s/^uint_t /uint32_t /g"  *
  sed -i "s/(uint_t /(uint32_t /g"  *
  
  sed -i "s/ gboolean / int /g"  *
  sed -i "s/^gboolean /int /g"  *
  sed -i "s/(gboolean /(int /g"  *
  
  sed -i "s/ gboolean / int /g"  *
  
  sed -i "s/ guint64 / uint64_t /g"  *
  sed -i "s/^guint64 /uint64_t /g"  *
  sed -i "s/(guint64 /(uint64_t /g"  *
  
  sed -i "s/ gint8 / int8_t /g"  *
  sed -i "s/^gint8 /int8_t /g"  *
  sed -i "s/(gint8 /(int8_t /g"  *
  
  
  sed -i "s/ gulong / uint64_t /g"  *
  sed -i "s/^gulong /uint64_t /g"  *
  sed -i "s/(gulong /(uint64_t /g"  *
  
  sed -i "s/ glong / int64_t /g"  *
  sed -i "s/^glong /int64_t /g"  *
  sed -i "s/(glong /(int64_t /g"  *
  
  sed -i "s/ GST_ERROR / printf /g"  *
  sed -i "s/^GST_ERROR /printf /g"  *
  
  sed -i "s/ g_printerr / printf /g"  *
  sed -i "s/^g_printerr /printf /g"  *
  
  sed -i "s/ FALSE/ -1/g"  *
  sed -i "s/ TRUE/ 0/g"  *

0 人点赞