How to build the unity-2d package on Maverick?

Asked by Adi Roiban on 2011-05-03

I am trying to build the unity-2d and bamf-qt on Ubuntu 10.10.

I was able to build the project and install it for development using the answer for Olivier.

Now that I have the latest version of Unity 2d running on Maverick, I would like to create a package for it.

I followed Florian's suggestion or running the following command:
$ apt-get build-dep unity-2d
$ bzr branch lp:unity-2d
$ cd unity-2d
$ debuild -i -us -uc -b

At first, I saw that the debian/obj-${ARCH} folder was empty.

It looks like the debuild rules were not removing the CMakeCache.txt file from the in-source folder.

After removing the CMakeCache.txt the out-source build was working, but it ended up with the following errors:

In unity-2d

dpkg-source: error: add CMakeFiles/CompilerIdCXX/a.out in debian/source/include-binaries if you want to store the modified binary in the debian tarball
dpkg-source: error: cannot represent change to unity-2d/po/fr.gmo: binary file contents changed
dpkg-source: error: add po/fr.gmo in debian/source/include-binaries if you want to store the modified binary in the debian tarball
dpkg-source: error: unrepresentable changes to source
dpkg-buildpackage: error: dpkg-source -b unity-2d gave error exit status 2
debuild: fatal error at line 1337:
dpkg-buildpackage -rfakeroot -d -us -uc -S failed

Here is the full log for unity-2d http://paste.ubuntu.com/603032/

In bamf-qt

dpkg-gensymbols: warning: some new symbols appeared in the symbols file: see diff output below
dpkg-gensymbols: warning: some symbols or patterns disappeared in the symbols file: see diff output below
dpkg-gensymbols: warning: debian/libqtbamf1/DEBIAN/symbols doesn't match completely debian/libqtbamf1.symbols
--- debian/libqtbamf1.symbols (libqtbamf1_0.2.1-0ubuntu1_i386)

Here is the full log for bamf-qt http://paste.ubuntu.com/603007/

Do you have any suggestion of what I should change so that the unity-2d package could be build on Maverick?

Many thanks!

Question information

Language:
English Edit question
Status:
Solved
For:
unity-2d Edit question
Assignee:
No assignee Edit question
Solved by:
Adi Roiban
Solved:
2011-05-17
Last query:
2011-05-17
Last reply:
2011-05-17
Olivier Tilloy (osomon) said : #1

Adi, before building the package for unity-2d, try cleaning up the source tree with the following command:

    bzr clean-tree --unknown --ignored --force

Does this help?

Regarding the issue with bamf-qt, I think the symbols file should be updated in the source tree, this is something that we missed with the latest release, I’m currently investigating how to fix it.

Adi Roiban (adiroiban) said : #2

Cleaning the branch (and updating the symbols) solved the problem for bamf-qt, but I am still not able to build unity-2d

When I try to build the source package I got many errors like these:

dpkg-source: error: add CMakeFiles/CompilerIdC/a.out in debian/source/include-binaries if you want to store the modified binary in the debian tarball
dpkg-source: error: cannot represent change to unity-2d/CMakeFiles/CompilerIdCXX/a.out: binary file contents changed
dpkg-source: error: add CMakeFiles/CompilerIdCXX/a.out in debian/source/include-binaries if you want to store the modified binary in the debian tarball

Full error are here: http://paste.ubuntu.com/605249/

Thanks!

Olivier Tilloy (osomon) said : #3

Adi, it looks to me like the branch you are trying to build from was not clean. It contains binary objects, results of a previous compilation. Did you by any chance version those files and and added them to the tree such that `bzr clean-tree` wouldn’t have deleted them?
Can you run the following two commands and paste the output?

    bzr clean-tree --unknown --ignored --force

    find . -name *.o

Adi Roiban (adiroiban) said : #4

Many thanks!

It was my fault. I was thinking that the debian build script would clean the tree before building a new package.

Explicitly cleaning the tree solved the problem.

To build the source package I also had to do a bzr export ../unity-2d_ver.orig.tar.gz

Many thanks again!