Thread: Why ports?
View Single Post
Old 14th July 2008
TerryP's Avatar
TerryP TerryP is offline
Arp Constable
 
Join Date: May 2008
Location: USofA
Posts: 1,547
Default

the easiest way is to make a package with what ever build options you need.


When you do a 'make package' or 'make package-recursive' in a ports directory (e.g. /usr/ports/x11-wm/blackbox) and use the environment variables out lined in ports(7) to control their placement.


Generally if you create /usr/ports/packages/ they will go there by default; last time I needed to make packages.

A nice trick is to mount the build machines /usr/ports/packages/All/ on the target system over nfs and pkg_add them.



When it comes to deploying them on another PC, you have to watch the optimizations and build options to make sure it will work. For example, if your system is set to generate code that will only execute on an i686 CPU and you need to get the package installed on a system running an i586 you've got to rebuild the package for it.


That's why the GENERIC kernel configuration has 'cpu I486_CPU', cpu I586_CPU', and 'cpu I686_CPU'. The Intel 80486 is basically the lcd, even though most users would hopefully have newer chips even in older serves... (I've bumped into a few netizens with 486/pentium pro servers).


What kind of stuff do you have in make.conf and whats the difference between the build and target machines?
__________________
My Journal

Thou shalt check the array bounds of all strings (indeed, all arrays), for surely where thou typest ``foo'' someone someday shall type ``supercalifragilisticexpialidocious''.
Reply With Quote