如何在 Mac OS X EI Captain 上构建 GTK2?

如何在 Mac OS X EI Captain 上构建 GTK2?

我尝试从源代码构建 GTK2 到 Mac OS X EI Captain。但是通过环境变量(INCLUDE?),发生了错误,我无法构建。请帮助我提供建议吗?

难道没有人遇到过以下错误吗?

hash.c:111:3:错误:使用未声明的标识符“free”
  obstack_init (&htab->mem_pool);
  ^
./obstack.h:294:65:注意:从宏“obstack_init”扩展
                  (空白) (长)) obstack_chunk_alloc, (void (*) (void *)) obstack_chunk_free)
                                                                              ^
hash.c:53:28:注意:从宏“obstack_chunk_free”扩展
#定义 obstack_chunk_free 自由
                           ^
我认为 gcc 找不到包含文件 malloc.h 。我不明白这是正确的。

首先,我下载了以下软件包。 gtk+-2.24.30、glib-2.28.0、atk-1.29.2、pango-1.20.0、gdk-pixbuf-2.21.3、gettext-0.10.40

我执行了以下操作。

$ cd gettext-0.10.40
$ ./配置
$ 制作
然后,出现以下错误。
hash.c:111:3:错误:使用未声明的标识符“free”
  obstack_init (&htab->mem_pool);
  ^
./obstack.h:294:65:注意:从宏“obstack_init”扩展
                  (空白) (长)) obstack_chunk_alloc, (void (*) (void *)) obstack_chunk_free)
                                                                              ^
hash.c:53:28:注意:从宏“obstack_chunk_free”扩展
#定义 obstack_chunk_free 自由
                           ^
hash.c:121:3: 警告:函数“free”的隐式声明在 C99 中无效
      [-W隐式函数声明]
  自由(htab->表);
  ^
生成 1 个警告和 1 个错误。
Linux 通常发行版的 malloc.h 存在于 /usr/include 中,但 Mac OS X EI Captain 的 malloc.h 存在于 /usr/include/sys 中。所以我执行了以下操作。
$ cd gettext-0.10.40
$ env CPPFLAGS=-I/usr/include/sys ./configure
$ 制作
然而,同样的错误发生了。这对我来说太难处理了。

谢谢。

相关内容