Re: Compiling software with same options

2013-01-28 Thread Lanoxx

On 27/01/13 17:33, Lanoxx wrote:

When I tried to install it on my local system just now I was told this:

dpkg: error processing libglib2.0-0:amd64 (--install):
 package libglib2.0-0:amd64 2.34.1-1ubuntu2 cannot be configured 
because libglib2.0-0:i386 is at a different version (2.34.1-1ubuntu1)

dpkg: error processing libglib2.0-0:i386 (--install):
 package libglib2.0-0:i386 2.34.1-1ubuntu1 cannot be configured 
because libglib2.0-0:amd64 is at a different version (2.34.1-1ubuntu2)

Errors were encountered while processing:
 libglib2.0-0:amd64

I guess I need to invest another hour and build the 32bit package as 
well. I find it unbelievable that I need one hour of package building 
to apply a fix that is a single line of code. Particulaly since 'make' 
finishes the task in about a minute.
I was not able to convince sbuild to build both 32 and 64 bit packages. 
Now I have a broken package manager that does not let me install new 
packages anymore. Trying to downgrade the 64 to the version 1ubuntu1 
gives strange errors:


Preparing to replace libglib2.0-0:amd64 2.34.1-1ubuntu2 (using 
.../libglib2.0-0_2.34.1-1ubuntu1_amd64.deb) ...

Unpacking replacement libglib2.0-0:amd64 ...
dpkg: error processing 
/var/cache/apt/archives/libglib2.0-0_2.34.1-1ubuntu1_amd64.deb (--unpack):
 trying to overwrite shared 
'/usr/share/doc/libglib2.0-0/changelog.Debian.gz', which is different 
from other instances of package libglib2.0-0:amd64

Errors were encountered while processing:
 /var/cache/apt/archives/libglib2.0-0_2.34.1-1ubuntu1_amd64.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)

How can I fix that and get back to a working state.



Regards
Lanoxx

[1] http://wiki.debian.org/sbuild




--
Ubuntu-devel-discuss mailing list
Ubuntu-devel-discuss@lists.ubuntu.com
Modify settings or unsubscribe at: 
https://lists.ubuntu.com/mailman/listinfo/ubuntu-devel-discuss


Re: Compiling software with same options

2013-01-27 Thread Lanoxx

Hi,

On 27/01/13 07:42, Emmet Hikory wrote:

apt-get source glib2.0
cd glib2.0-*
export QUILT_PATCHES=debian/patches
quilt import ${path-to-new-patch}
quilt push
dch -i
debuild -S -us -uc
cd ..
sbuild -A -d quantal-amd64 ${path-to-updated-dsc}
thanks a lot for this explanation. I tried it and everything works until 
the last step. When I run sbuild, then it get a warning like this:


W: No chroots are defined in ‘/etc/schroot/schroot.conf’ or 
‘/etc/schroot/chroot.d’


And the build finishes with this message:
Finished at 20130127-1604
Build needed 00:00:00, 0k disc space

So it appears that no .deb package was generated, right? Do I need to do 
something to set up the chroots?


Regerds
Lanoxx



--
Ubuntu-devel-discuss mailing list
Ubuntu-devel-discuss@lists.ubuntu.com
Modify settings or unsubscribe at: 
https://lists.ubuntu.com/mailman/listinfo/ubuntu-devel-discuss


Re: Compiling software with same options

2013-01-27 Thread Emmet Hikory
Lanoxx wrote:
 thanks a lot for this explanation. I tried it and everything works
 until the last step. When I run sbuild, then it get a warning like
 this:
 
 W: No chroots are defined in ‘/etc/schroot/schroot.conf’ or
 ‘/etc/schroot/chroot.d’
 
 And the build finishes with this message:
 Finished at 20130127-1604
 Build needed 00:00:00, 0k disc space
 
 So it appears that no .deb package was generated, right? Do I need
 to do something to set up the chroots?

Yes, to use sbuild, you would need to set up build chroots.  The
sbuild documentation discusses a few ways to do this, and there are
many variations you might find online.  The simplest to document
is to install the ubuntu-dev-tools package and run `mk-sbuild`,
although this makes many assumptions about your environment and
build preferences.

-- 
Emmet HIKORY

-- 
Ubuntu-devel-discuss mailing list
Ubuntu-devel-discuss@lists.ubuntu.com
Modify settings or unsubscribe at: 
https://lists.ubuntu.com/mailman/listinfo/ubuntu-devel-discuss


Re: Compiling software with same options

2013-01-27 Thread Lanoxx


On 27/01/13 17:21, Emmet Hikory wrote:

Lanoxx wrote:

thanks a lot for this explanation. I tried it and everything works
until the last step. When I run sbuild, then it get a warning like
this:

W: No chroots are defined in ‘/etc/schroot/schroot.conf’ or
‘/etc/schroot/chroot.d’

And the build finishes with this message:
Finished at 20130127-1604
Build needed 00:00:00, 0k disc space

So it appears that no .deb package was generated, right? Do I need
to do something to set up the chroots?

 Yes, to use sbuild, you would need to set up build chroots.  The
sbuild documentation discusses a few ways to do this, and there are
many variations you might find online.  The simplest to document
is to install the ubuntu-dev-tools package and run `mk-sbuild`,
although this makes many assumptions about your environment and
build preferences.

Thanks a lot. I found some documentation earlier and was able to setup 
the chroot environment. I used [1] with some specific changes to fix 
Ubuntu 12.10 such as


distribution=quantal
mirror=http://at.archive.ubuntu.com/ubuntu

The package has been building for a long time now (must been 30 minutes 
or so). When I tried to install it on my local system just now I was 
told something this:


dpkg: error processing libglib2.0-0:amd64 (--install):
 package libglib2.0-0:amd64 2.34.1-1ubuntu2 cannot be configured 
because libglib2.0-0:i386 is at a different version (2.34.1-1ubuntu1)

dpkg: error processing libglib2.0-0:i386 (--install):
 package libglib2.0-0:i386 2.34.1-1ubuntu1 cannot be configured because 
libglib2.0-0:amd64 is at a different version (2.34.1-1ubuntu2)

Errors were encountered while processing:
 libglib2.0-0:amd64

I guess I need to invest another hour and build the 32bit package as 
well. I find it unbelievable that I need one hour of package building to 
apply a fix that is a single line of code. Particulaly since 'make' 
finishes the task in about a minute.


Regards
Lanoxx

[1] http://wiki.debian.org/sbuild

--
Ubuntu-devel-discuss mailing list
Ubuntu-devel-discuss@lists.ubuntu.com
Modify settings or unsubscribe at: 
https://lists.ubuntu.com/mailman/listinfo/ubuntu-devel-discuss


Compiling software with same options

2013-01-26 Thread Lanoxx

Hi,

I have a question regarding the options that are used to build the 
source code of a package, there are often some options that can be 
passed to either ./autogen.sh or ./configure which influence what module 
are build or how a libarary or program is build. How can I find out 
which options were used originally when the package was build by Ubuntu?


For example I would like to rebuild the glib2.0-x source from Ubuntu 
12.10 with a small patch. I have already downloaded patched and compiled 
the Ubuntu source of glib2.0 with:


apt-get source glib2.0-...
//apply patch ...
./autogen.sh --prefix=/opt/...  make  sudo make install

And now I want to compile and install it into the prefix=/usr for fix 
the bug on the system.


However given that glib is quite an essential library I am a bit afraid 
that I am forgetting some important options and that something might be 
broken afterwards. Could anyone give me a hint how to properly compile 
this package?


Regards

--
Ubuntu-devel-discuss mailing list
Ubuntu-devel-discuss@lists.ubuntu.com
Modify settings or unsubscribe at: 
https://lists.ubuntu.com/mailman/listinfo/ubuntu-devel-discuss


Re: Compiling software with same options

2013-01-26 Thread Emmet Hikory
Lanoxx wrote:
 I have a question regarding the options that are used to build the
 source code of a package, there are often some options that can be
 passed to either ./autogen.sh or ./configure which influence what
 module are build or how a libarary or program is build. How can I
 find out which options were used originally when the package was
 build by Ubuntu?
 
 For example I would like to rebuild the glib2.0-x source from Ubuntu
 12.10 with a small patch. I have already downloaded patched and
 compiled the Ubuntu source of glib2.0 with:
 
 apt-get source glib2.0-...
 //apply patch ...
 ./autogen.sh --prefix=/opt/...  make  sudo make install
 
 And now I want to compile and install it into the prefix=/usr for
 fix the bug on the system.
 
 However given that glib is quite an essential library I am a bit
 afraid that I am forgetting some important options and that
 something might be broken afterwards. Could anyone give me a hint
 how to properly compile this package?

Compilation and build of Debian-format packages is controlled by
the debian/control and debian/rules files.  Chapters 4 and 5 of Debian
Policy describe these in some detail.  For best results, you would want
to add your patch to those already being applied in the packaging, build
an updated source package, and create binary packages with sbuild, pbuilder,
or a PPA (or other archive build system).  In the specific case of glib-2.0,
one set of commands to accomplish this would be:

apt-get source glib2.0
cd glib2.0-*
export QUILT_PATCHES=debian/patches
quilt import ${path-to-new-patch}
quilt push
dch -i
debuild -S -us -uc
cd ..
sbuild -A -d quantal-amd64 ${path-to-updated-dsc}

For quick local testing, you may often approximate this by ensuring
that all the Build-Depends, Build-Depends-Indep, and Built-Using packages
are installed and that none of the Build-Conflicts or Build-Conflicts-Indep
packages are installed, applying your patch, updating the changelog, and
running `dpkg-buildpackage -us -uc -b` (or calling debian/rules targets
directly if you prefer).  Note that the results of this procedure may differ
from that above due to differences between your local system and the pristine
environments used by build management tools, so this may not be a complete
test of how the patch would integrate if applied to the package generally.

-- 
Emmet HIKORY

-- 
Ubuntu-devel-discuss mailing list
Ubuntu-devel-discuss@lists.ubuntu.com
Modify settings or unsubscribe at: 
https://lists.ubuntu.com/mailman/listinfo/ubuntu-devel-discuss