2

操作系统:Ubuntu 16.04 LTS
编译器:Gcc7.2

我想将 Gtkmm3.9 添加为我的一个项目的第三方依赖项,并尝试从源代码编译。我不熟悉 autoconf 或 automake 工具集。

浏览文档https://developer.gnome.org/anjuta-build-tutorial/stable/create-autotools.html.en我发现您可以使用 autogen.sh 生成配置文件。但是该项目无法配置,因此也无法生成任何 make 文件。

Gtkmm/gtkmm-3.91.2$ sh autogen.sh 
autogen.sh: 5: autogen.sh: mm-common-prepare: not found
autoreconf: Entering directory `.'
autoreconf: configure.ac: not using Gettext
autoreconf: running: aclocal --force --warnings=all -I build 
${ACLOCAL_FLAGS}
autoreconf: configure.ac: tracing
autoreconf: running: libtoolize --copy --force
libtoolize: putting auxiliary files in AC_CONFIG_AUX_DIR, 'build'.
libtoolize: copying file 'build/ltmain.sh'
libtoolize: putting macros in AC_CONFIG_MACRO_DIRS, 'build'.
libtoolize: copying file 'build/libtool.m4'
libtoolize: copying file 'build/ltoptions.m4'
libtoolize: copying file 'build/ltsugar.m4'
libtoolize: copying file 'build/ltversion.m4'
libtoolize: copying file 'build/lt~obsolete.m4'
autoreconf: running: /usr/bin/autoconf --force --warnings=all
autoreconf: running: /usr/bin/autoheader --force --warnings=all
autoreconf: running: automake --add-missing --copy --force-missing --
warnings=all
configure.ac:51: installing 'build/compile'
configure.ac:51: installing 'build/config.guess'
configure.ac:51: installing 'build/config.sub'
configure.ac:28: installing 'build/install-sh'
configure.ac:28: installing 'build/missing'
Makefile.am:26: error: ENABLE_DOCUMENTATION does not appear in 
AM_CONDITIONAL
automake: error: cannot open < build/dist-changelog.am: No such file  or directory
autoreconf: automake failed with exit status: 1
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking whether make supports nested variables... yes
checking whether UID '1000' is supported by ustar format... yes
checking whether GID '1000' is supported by ustar format... yes
checking how to create a ustar tar archive... gnutar
checking whether make supports nested variables... (cached) yes
checking whether to enable maintainer-specific portions of Makefiles... yes
./configure: line 3211: syntax error near unexpected token `0.9.10'
./configure: line 3211: `MM_PREREQ(0.9.10)'

我想使用 C++17,似乎在 Gtkmm 3.81 之后支持现代 C++ 作为现有 Gtk3 的并行构建。我找不到 Gtkmm3.81 的任何 ubuntu 预构建包。

  • Gtkmm3.9 存储库是否包含其存储库中的所有依赖项。
  • 可以与 C++17 一起使用吗(我使用 gcc7.2 编译器)我无法使用 C++17 编译带有旧 Gtkmm3 的任何程序,因为标头中有一些已删除的函数。

我打算将该库与 C++17 一起使用。对自己构建库更感兴趣。任何构建说明也会非常有帮助。

谢谢强尼

4

0 回答 0