尝试编译Gimp时无法编译gegl

时间:2018-08-15 16:06:13

标签: git compiler-errors gimp gegl

我正在尝试使用git源和this method编译Gimp版本2.10。我是具有多年经验的Gentoo用户,所以不是初学者。 Gentoo Portage的版本为2.8,但2.10看起来确实不错。我是一位敏锐的摄影师。

好的依赖项...。​​我需要babl,gegl和pango,因为安装的版本还不够晚。 按照上面的说明,我已经在$ HOME / gimp-git /中编译了babl,并在$ PREFIX / share / config.site

文件中设置了一个环境。
export PREFIX="$HOME/gimp-git"
export PATH="$PREFIX/bin:$PATH"
export PKG_CONFIG_PATH="$PREFIX/lib/pkgconfig:$PKG_CONFIG_PATH:/usr/lib64/pkgconfig"
export LD_LIBRARY_PATH="$PREFIX/lib:$LD_LIBRARY_PATH"
export ACLOCAL_FLAGS="-I /usr/bin/"

我已经发出命令

source $PREFIX/share/config.site

现在,当我尝试使用编译gegl

./autogen.sh --prefix=$PREFIX

这没问题,所以我发出“ make”命令,并抛出错误

<--- snip --->
gegl-tile-source.h:23:23: fatal error: babl/babl.h: No such file or directory
 #include <babl/babl.h>

该文件位于

$PREFIX/include/babl-0.1/babl/babl.h

我什至也把它放在这里,但是同样的错误

include/babl/babl.h

任何有关如何获取gegl构建文件以找到babl.h文件的想法都会受到赞赏吗?

好的,因为我写了这篇文章,所以将其添加到我的$ PREFIX / share / config.site文件中

export BABL_CFLAGS="$PREFIX/bin -I $PREFIX/include/babl-0.1/"
export BABL_LIBS="$PREFIX/lib/"

编译一直进行到此:

gcc: warning: /home/francis/gimp-git/bin: linker input file unused because linking not done
./.libs/libgegl-0.4.so: undefined reference to `babl_format_with_space'
./.libs/libgegl-0.4.so: undefined reference to `babl_format'
./.libs/libgegl-0.4.so: undefined reference to `babl_format_get_n_components'
./.libs/libgegl-0.4.so: undefined reference to `babl_format_get_space'
./.libs/libgegl-0.4.so: undefined reference to `babl_format_get_type'
./.libs/libgegl-0.4.so: undefined reference to `babl_format_get_bytes_per_pixel'
./.libs/libgegl-0.4.so: undefined reference to `babl_type'
./.libs/libgegl-0.4.so: undefined reference to `babl_init'
./.libs/libgegl-0.4.so: undefined reference to `babl_model'
./.libs/libgegl-0.4.so: undefined reference to `babl_process'
./.libs/libgegl-0.4.so: undefined reference to `babl_ticks'
./.libs/libgegl-0.4.so: undefined reference to `babl_get_name'
./.libs/libgegl-0.4.so: undefined reference to `babl_exit'
./.libs/libgegl-0.4.so: undefined reference to `babl_format_has_alpha'
./.libs/libgegl-0.4.so: undefined reference to `babl_process_rows'
./.libs/libgegl-0.4.so: undefined reference to `babl_format_exists'
./.libs/libgegl-0.4.so: undefined reference to `babl_fish'
./.libs/libgegl-0.4.so: undefined reference to `babl_format_get_model'
collect2: error: ld returned 1 exit status
linking of temporary binary failed: Command '['/bin/sh', '../libtool', '--mode=link', '--tag=CC', '--silent', 'gcc', '-o', '/home/francis/FG-Docs/Downloads/gimpDeps/gegl-0.4.6/gegl/tmp-introspectomm_pwos/Gegl-0.4', '-export-dynamic', '-g', '-Ofast', '-mmmx', '-msse', '-ftree-vectorize', '-ffast-math', '-Wall', '-Wdeclaration-after-statement', '-Wmissing-prototypes', '-Wmissing-declarations', '-Winit-self', '-Wpointer-arith', '-Wold-style-definition', 'tmp-introspectomm_pwos/home/francis/FG-Docs/Downloads/gimpDeps/gegl-0.4.6/gegl/tmp-introspectomm_pwos/Gegl-0.4.o', '-L.', 'libgegl-0.4.la', '-lgio-2.0', '-lgobject-2.0', '-Wl,--export-dynamic', '-lgmodule-2.0', '-pthread', '-lglib-2.0']' returned non-zero exit status 1.
make[3]: *** [/usr/share/gobject-introspection-1.0/Makefile.introspection:160: Gegl-0.4.gir] Error 1
make[3]: Leaving directory '/home/francis/FG-Docs/Downloads/gimpDeps/gegl-0.4.6/gegl'
make[2]: *** [Makefile:906: all-recursive] Error 1
make[2]: Leaving directory '/home/francis/FG-Docs/Downloads/gimpDeps/gegl-0.4.6/gegl'
make[1]: *** [Makefile:635: all-recursive] Error 1
make[1]: Leaving directory '/home/francis/FG-Docs/Downloads/gimpDeps/gegl-0.4.6'
make: *** [Makefile:542: all] Error 2

所以我又有点卡住了!

1 个答案:

答案 0 :(得分:0)

我如下解决了这个问题。 我正在使用Gentoo,并为gimp-2.10.4发现了一个“ ebuild”,因此卸载了gimp-2.8并安装了ebuild gimp-2.10.4