我想构建一个同时在Gtk 2和Gtk 3环境上运行的应用程序。我有什么选择?
我在Linux机器上将C++与
cmake
一起使用。
最佳答案
- Have two separate projects?
当然,这是一个选择。
- Have two separate build steps?
那也是,但是这里的主要目标是产生两个不同的二进制文件(虽然不一定是两个独立的可执行文件,但是请参见下文)。
- Can a single executable be built so that it is able to run on both environments?
是的,但是这样做并不简单。您构建的每个二进制文件都将链接到特定的库。否则不能这样,因为v2和v3库之间存在多种名称冲突。
但是,如果您愿意抽象化Gtk用法,以便提供可插拔的后端,则可以同时提供Gtk + 2和Gtk + 3后端。还有其他。但是,这并非易事,特别是如果您已经使用直接Gtk调用编写了应用程序。
关于c++ - 可以将Gtk +应用程序编译为在Gtk 2和3上运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59986010/