2011-11-07 96 views
3

我想修改Ubuntu Oneiric上的GTK2。如何编译GTK2源代码?

我下载源:

apt-get source libgtk2.0-0 
cd gtk+2.0-2.24.6/ 

我尝试编译并覆盖当前GTK2:

./configure --prefix=/usr 
sudo make 

Soemhow我得到一个错误(我拥有所有必要的库和建立必要的包等):

In file included from gtkquery.c:26:0: 
gtkquery.h:31:2: error: #error "gtkfilechooserprivate.h is not supported API for general use" 

顺便说一句,我能够修改和重新编译GTK3没有问题wi同样的步骤。

如果使用debuild,我得到成千上万的

dpkg-source: error: cannot represent change to gtk+2.3.0-2.24.6/gtk+2.0-2.24.6/something: binary file contents changed 
+2

你真的不应该使用'sudo'运行'make',因为奇怪的事情可能发生。但是,安装时很好'sudo make install'。 – rodrigo

+0

谢谢。其实这就是我所做的。我在这里意外地输入了一个sudo。 –

回答

1

,如果你尝试建立它的手这样你不会得到在Ubuntu提供的附近建造任何东西 - 你会错过所有的./configure选项和其他设置。 (请查看debian/rules了解他们所设置的全部细节。)

请改为尝试debian/rules build

由于我还没有调查的原因(可能包括我不理解它应该如何工作),这并不适用于我尝试的第一个包,但设置pbuilder让我建立我想要的包。

将一个干净的chroot作为一个构建环境可能会让人觉得过度使用,但是由于您在本地系统上有一些有趣的东西,因此您可以轻松地构建自己的问题,以避免世界上其他人无法复制的问题。

+0

我可以修改和重新编译GTK3,没有任何问题。使用你的方法,即使使用pbuilder,我也会得到另一个错误。 –