我应该使用啥 makefile 来构建 gtk-3-examples 应用程序?
Posted
技术标签:
【中文标题】我应该使用啥 makefile 来构建 gtk-3-examples 应用程序?【英文标题】:What makefile should I use to build a gtk-3-examples application?我应该使用什么 makefile 来构建 gtk-3-examples 应用程序? 【发布时间】:2021-02-21 12:13:40 【问题描述】:我对图形编程并不是很熟悉,但我很好奇。我在我的 Debian 10.7 机器上安装了 libgtk-3-dev 和 gtk-3-examples。从那里我列出了使用dpkg-query -L gtk-3-examples
的示例包文件以查找一些示例程序。
在示例目录中,我找到了以下 README 文件:
== Building the examples ==
The examples in this directory are built alongside the rest of GTK+.
The examples under the `application[1-10]` directories are also included in
the GTK+ API reference documentation, and can be built independently, using
the system libraries, by doing:
$ cd application1
$ make -f Makefile.example
向前看。但是,完全遵循指示会产生以下结果:
make: Makefile.example: No such file or directory
make: *** No rule to make target 'Makefile.example'. Stop.
应用程序文件夹中没有“Makefile.example”文件。在示例目录中运行 find -name "Makefile*"
会产生:
./application7/Makefile.in.gz
./application7/Makefile.am
./Makefile.in.gz
./application5/Makefile.in.gz
./application5/Makefile.am
./bp/Makefile.in.gz
./bp/Makefile.am
./application9/Makefile.in.gz
./application9/Makefile.am
./application6/Makefile.in.gz
./application6/Makefile.am
./application2/Makefile.in.gz
./application2/Makefile.am
./application10/Makefile.in.gz
./application10/Makefile.am
./application3/Makefile.in.gz
./application3/Makefile.am
./application1/Makefile.in.gz
./application1/Makefile.am
./application8/Makefile.in.gz
./application8/Makefile.am
./application4/Makefile.in.gz
./application4/Makefile.am
./Makefile.am
我没有任何运气使用上述文件构建示例程序。我猜是因为我不熟悉汽车工具?有没有一种简单的方法可以使用上述文件构建示例 GTK 程序,或者我是否需要了解更多有关 make/autotools/configure 的信息才能运行有效的示例?
更新:
cant-run-makefile-am-what-should-i-do 帖子提供了丰富的信息,但不提供在包中找不到配置、引导或自动生成程序时的操作过程。以下命令在我的示例目录中执行时不会产生任何结果:find -type f | grep -i -E "*conf*|*auto*|*boot*"
。我需要提供其中一个文件才能成功构建(据我所知)。
【问题讨论】:
这能回答你的问题吗? Can't run Makefile.am, what should I do?autoreconf
似乎不需要任何“配置”文件。我将开始更多地阅读 autotools,但我认为我还不能构建一个示例。
【参考方案1】:
对不起,大惊小怪!我习惯于安装常规软件包并且错过了我需要下载完整的 源代码 以使示例正常工作。所以,最初我提到我安装了 libgtk-3-dev 和 gtk-3-examples。我这样做是使用apt-get install libgtk-3-dev && apt-get install gtk-3-examples
。
但是,要在本地构建 GTK 及其示例,看起来您想要做的是使用 apt-get source gtk-3-examples
(或类似的)获取源包存档。我认为它实际上为我选择了不同的元包运行该命令)。
然后,在我的新 gtk+3.0-3.24.5 目录中,我可以运行一个不错的 configure 二进制文件(以及随后的 make
和 make install
命令) 生成许多文件,包括示例程序二进制文件。
所以./gtk+3.0-3.24.5/examples/application1/exampleapp
我得到了一个运行示例。瞧!
【讨论】:
以上是关于我应该使用啥 makefile 来构建 gtk-3-examples 应用程序?的主要内容,如果未能解决你的问题,请参考以下文章
我应该如何从 Makefile.am 运行预构建的 Makefile?
如何在没有 MSYS2 的 Windows 上构建 GTK+3 程序?
如何使用 Visual Studio 2019 构建 GTK+ 应用程序?