代码之家  ›  专栏  ›  技术社区  ›  stefanB

编译gnustep-gui-0.16.0时出现问题,未定义对png-sizeof的引用

  •  2
  • stefanB  · 技术社区  · 16 年前

    我试图在Linux机器上编译gnustp,但是gnustp-gui-0.16.0包失败了。我下载了gnustep startup stable 0.20.1( http://wwwmain.gnustep.org/resources/downloads.php )并遵循有关如何编译(./configure&make)的说明。我得到这个错误:

    libgnustep-gui.so: undefined reference to 'png_sizeof'

    我已经编译了最新的libpng(1.2.34),我可以看到png的sizeof定义为macro。但是,我不太确定如何修复gnustp-gui-0.16.0构建。我试图传递include/lib目录,其中安装了libpng以配置build,但似乎没有任何帮助。

    我有非常新的Linux设备,但是使用GCC 3.3(升级不是一个选项,但这不应该是一个问题)。

    完全错误:

    Making all for tool set_show_service...
     Compiling file set_show_service.m ...
     Linking tool set_show_service ...
    ../Source/./obj/libgnustep-gui.so: undefined reference to `png_sizeof'
    collect2: ld returned 1 exit status
    gmake[3]: *** [obj/set_show_service] Error 1
    gmake[2]: *** [set_show_service.all.tool.variables] Error 2
    gmake[1]: *** [internal-all] Error 2
    gmake[1]: Leaving directory `/home/bla/local/src/gnustep-startup-0.22.0/build/gnustep-gui-0.16.0'
    gmake[3]: *** [obj/set_show_service] Error 1
    gmake[2]: *** [set_show_service.all.tool.variables] Error 2
    gmake[1]: *** [internal-all] Error 2
    

    有什么建议吗? 谢谢

    2 回复  |  直到 15 年前
        1
  •  1
  •   MKroehnert    15 年前

    注意你可以跑步 make messages=yes 让gnustep更详细地说明它在做什么。

        2
  •  0
  •   stefanB    16 年前

    当我用--verbose(或--debug)编译时我注意到gnustep正在查找它的~/gnustep/system/library/libraries和headers(以及其他地方),所以我将libpng的一个副本移到了该区域中,我刚刚重新编译了它,所有的编译都没有问题。