3

I'm trying to modify GTK2 on Ubuntu Oneiric.

I download the source:

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

I try to compile and overwrite the current GTK2:

./configure --prefix=/usr
sudo make

Soemhow I get an error (I have all the necessary libraries and the build-essential package etc):

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

By the way, I am able to modify and recompile GTK3 with no problems with the same steps.

If use debuild, I get thousands of

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
  • 2
    You really should not run make using sudo because weird things could happen. When installing it is fine sudo make install, however. Commented Nov 7, 2011 at 13:44
  • Thanks. Actually that's what I did. I accidentally typed a sudo here. Commented Nov 7, 2011 at 14:51

1 Answer 1

1

You won't get anything near the Ubuntu-provided build if you try building it by hand that way -- you'll miss all the ./configure options and other settings. (Look into debian/rules for the full details of what they're setting.)

Instead, try debian/rules build.

For reasons I haven't investigated yet (possibly including me not understanding how it should work), that didn't work on the first package I tried, but setting up pbuilder let me build the package I wanted.

It might feel like overkill to get a clean chroot as a build environment, but it is way too easy to build yourself problems that no one else in the world can replicate because you've got something funny on your local system.

Sign up to request clarification or add additional context in comments.

1 Comment

I am able to modify and recompile GTK3 with no problems. With your method I get another error even with pbuilder.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.