Differences between revisions 15 and 16
Revision 15 as of 2004-05-10 20:09:26
Size: 3055
Editor: anonymous
Comment:
Revision 16 as of 2004-05-10 20:10:33
Size: 3182
Editor: anonymous
Comment:
Deletions are marked like this. Additions are marked like this.
Line 25: Line 25:
 * Build an image using one of the build_ targets (build_netboot, all_build, etc).

 * Look in dest/ for the completed images.

Debian-Installer: Build yourself

Originally from http://lists.debian.org/debian-boot/2002/debian-boot-200207/msg00441.html but probably much changed since.

HOWTO

Here are the steps to build debian-installer:

  • check out the d-i sources from subversion:

      svn co svn://svn.debian.org/d-i/trunk debian-installer
  • read debian-installer/installer/build/Readme
  • Install the build-dependencies on the host system

      (cdebconf, libcdebconf0 and libcdebconf-dev, 
       libdebian-installer, libdebian-installer4,
       libdebian-installer-extra4 and libdebian-installer4-dev)

-> hint: run dpkg-checkbuilddeps in the parent installer/ directory.

  • Create your own sources.list.udeb.local
  • Run "make" to get a list of available targets.
  • Build an image using one of the build_ targets (build_netboot, all_build, etc).
  • Look in dest/ for the completed images.


Alternatively build those libs by hand:

  • build cdebconf ( cd tools/cdebconf ; dpkg-buildpackage ) then look in .. (i.e., tools/) for the results)
  • install libcdebconf0 and libcdebconf-dev in the host system. (these were produced in the previous step) -- actually I seem to have libdebconfclient0 and libdebconfclient0-dev

  • build libdebian-installer ( cd libdebian-installer ; dpkg-buildpackage then look in .. for the results) -- build-deps don't include automake1.7, and it is needed for building from cvs versions, so install it first; build-deps don't appear to require autoconf either - it needs to be installed too. Additionally I seemed to need to uninstall automake1.4 which was getting in the way of this build on my system.

  • install libdebian-installer4, libdebian-installer-extra4 and libdebian-installer4-dev in the host system. (these were produced in the previous step)
  • build the different modules by cd-ing into them and building using dpkg-buildpackage.
  • link those new udebs into build/localudebs
  • simply to make symlinks inside build/localudebs that point at the udebs. (else it will try to download them, and the dir structure isn't set up on the mirrors (since debian-installer isn't the current installer))
  • One way: build all the udebs you're gonna build -first-...

    then do cd build/localudebs; for i in $(find ../.. -name ".udeb"); do ln -s $i; done

  • run make demo or make boot_floppy in build/

You will need sudo access or be root to do this.

This will give you a network-enabled installer, if you'd rather want a cdrom installer, run make TYPE=cdrom or TYPE=cdrom144.

This will break on every arch but i386; any help fixing this is very much appreciated.

NOTE that it's possible to build this under woody, but it's difficult. It might require packages from unstable during the build process. I actually got thru the build process, but haven't seen the thing work yet. I had to install libc from unstable and then my original libc again, then the libc from security.debian.org which might work in the first place. I'm going to redo the build with that lib to see if that clears up problems. If not, I'll search the open seas for a good floppy :)

-Jim Lynch