These are the notes that were taken down during the SLUGlet meeting on
Friday night.

* download some source from the INTERNET
  wget http://foobar.org/downloads/foobar-1.0.tar.gz

* unpack the source tarball:
  tar zxf foobar-1.0.tar.gz

  tarballs can also be bzipped:
  tar jxf foobar-1.0.tar.bz2

* change into the source directory of the newly unpacked source tree
  cd foobar-1.0/

  - check the INSTALL and README files first - they may have dependencies
    or special instructions

  - you may need development libraries (-dev or -devel packages)

  - you will definitely need a compiler for the language the code is written
    in! (gcc for C, g++ for C++, binutils, make)

* configure the software (a pre-compilation step that readies the source code
  for your system, errors go in config.log, configure --help will give you
  help information):
  ./configure

* build the software
  make

* install the software (depending on where you want to install to, you may
  need to be root, it normally puts in in /usr/local, but you or developers
  can change that, most RPM or .deb packages go in /usr):
  make install 

making a package for RPM based systems:
foobar-1.0.tar.gz contains a file called foobar.spec
 rpmbuild -ta foobar-1.0.tar.gz
 rpm -i /usr/src/redhat/RPMS/i386/foobar-1.0-1.i386.rpm

making a debian package:
foobar-1.0.tar.gz contains a debian/ directory
 tar zxf foobar-1.0.tar.gz
 cd foobar-1.0
 dpkg-buildpackage -rfakeroot -uc -us
 dpkg -i ../foobar_1.0-1_i386.deb

 - you need fakeroot, dpkg-dev, and build-essential packages installed
 - read the manpage for dpkg-buildpackage and the documentation on
   www.debian.org/devel for more information
 
 ->  checkinstall  <- magical package building software

compiling from source = high maintenance

how do I know when to update your software?  how do I find out when new
versions come out, and how do I know whether I need to update?
- project website
  + announce mailing list
  + changelog on website
- freshmeat.net
- word of mouth
- security mailing lists (for hard core software builders)

-- 
[EMAIL PROTECTED]                           http://spacepants.org/jaq.gpg
-- 
SLUG - Sydney Linux User's Group - http://slug.org.au/
More Info: http://lists.slug.org.au/listinfo/slug

Reply via email to