File:  [DragonFly] / src / UPDATING
Revision 1.6: download - view: text, annotated - select for diffs
Tue Nov 18 00:34:20 2003 UTC (10 years, 5 months ago) by dillon
Branches: MAIN
CVS tags: HEAD
clarify the solution for typical build snafus in UPDATING.

    1: $DragonFly: src/UPDATING,v 1.6 2003/11/18 00:34:20 dillon Exp $
    2: 
    3: Updating Information for DragonFly users.
    4: 
    5: This file should warn you of any pitfalls which you might need to work around
    6: when trying to update your DragonFly system.
    7: 
    8: If you discover any problem, please contact the bugs@lists.dragonflybsd.org
    9: mailing list with the details.
   10: 
   11: ------------------------------------------------------------------------------
   12: 
   13: > Compiling DragonFly
   14: ---------------------
   15: 
   16: Compiling DragonFly requires an ISO C90 or higher compliant compiler.
   17: Compilers which support this are, amongst others: The GNU C Compiler, The
   18: Intel C++ Compiler, and The TenDRA Compiler.
   19: 
   20: You can do DragonFly buildworld/buildkernel/installworld/installkernel
   21: on FreeBSD-stable boxen as well as DragonFly boxen.
   22: 
   23: Due to source tree reorganizations at various times header files may have
   24: moved or been deleted, leaving stale header files in /usr/include.  This
   25: can also cause 'make depend' to fail due to make depend getting confused
   26: about old header files.
   27: 
   28: The easiest way to deal with include file messes is to reinstall /usr/include
   29: from scratch as follows:
   30: 
   31: 	rm -rf /usr/include	# safer to type this verses /usr/include/*
   32: 	mkdir /usr/include
   33: 	cd /usr/src
   34: 	make installincludes
   35: 
   36: If your have trouble doing builds due to the make depend stage failing, the
   37: easiest solution is to wipe your object tree and rebuild/reinstall.
   38: 
   39: 	rm -rf /usr/obj		# safer to type this verses /usr/obj/*
   40: 	mkdir /usr/obj
   41: 	cd /usr/src
   42: 	make buildkernel KERNCONF=<KERNELNAME>
   43: 	make installkernel
   44: 	make buildworld
   45: 	make installworld
   46: 
   47: If you are using 'config' manually, note that building kernels via the manual
   48: config / /usr/src/sys/compile/BLAH procedure only works reliably on an
   49: uptodate DragonFly box.  The official way to build kernels is via the
   50: 'make buildkernel KERNCONf=<KERNELNAME>' target from /usr/src.
   51: 
   52: > Kerberos IV
   53: -------------
   54: 
   55: Kerberos IV (eBones) was removed from the tree, please consider moving to
   56: Kerberos 5 (Heimdal).
   57: 
   58: > FreeBSD and DragonFly ports
   59: -----------------------------
   60: 
   61: DragonFly will eventually have its own package management system but at the
   62: moment we leverage off of the FreeBSD ports system.  You should maintain
   63: /usr/ports from the FreeBSD cvs repository via cvsup just like you do now.
   64: 
   65: DragonFly has its own 'port overrides' hierarchy in /usr/dfports.  You can
   66: check this out of the DragonFly cvs repository using:
   67: 
   68: cd /usr
   69: cvs -R -d /cvs checkout dfports
   70: 
   71: You may wish to use a consolidated distfiles directory, in which case you
   72: should make /usr/dfports/distfiles a softlink to your existing distfiles
   73: directory (typically /usr/ports/distfiles).
   74: 
   75: Be sure that you have installed 'relpath' from the DragonFly sources
   76: (/usr/src/usr.bin/relpath) as well as the updated /usr/share/mk files from
   77: /usr/src/share/mk.  As a test you can cd into /usr/ports/sysutils/cpdup and
   78: build the port.  Dragonfly should contain an override and you should see a
   79: warning message that the DragonFly override is being build instead when you
   80: build it from the FreeBSD ports.
   81: