compiling ports with more than one job

Josh Paetzel josh at
Wed Feb 28 16:44:35 UTC 2007

On Wednesday 28 February 2007 04:32, Christian Baer wrote:
> Good morning[1], folks!
> I am currently setting up a Sun U60 with FreeBSD. A few amount of
> apps will be installed on it, when I'm through with it. And that is
> where it gets a little frustrating.
> The packages for SPARC64 aren't really up to date. That is why
> using them isn't really an option. Besides, some programs actually
> get a real boost if they are compiled with an -mcpu flag, which
> probably isn't set when the packages are compiled. So, I'm down to
> installing them over the ports collection.
> That isn't bad in itself. But even a U60 isn't really a fast
> machine and if you compile bigger collections (like, kde,
> firefox etc.) you can watch yourself aging while the machine is at
> it. It would be a great help if I could really use both CPUs in
> this machine. But somehow that doesn't work. I have observed two
> things so far (in general):
> Some ports (like mc) have a menu for choosing the compile options.
> If I try to make one of those with more than one job (make -j 2) I
> can't hit any of the boxes on the list of options or even hit the
> "ok" button. It would seem that make went on to the next job
> without actually waiting for the input.
> The same background but with a slightly different effect is also
> true for ports without a menu. I couldn't make xorg with more than
> one job because make just ran on without waiting for the required
> things to be there and stopped with a "no such file or directory".
> That is quite a drag as on UltraSPARC II CPUs compiling isn't much
> fun even if you use all the CPU-power there is.
> Normally you'd think that a meta-port like xorg just hast to be
> compiled step by step. However, a far more complex system (make -j
> 4 buildworld) works just fine.
> Am I too thick to get the point here or is it really true that the
> ports in general will only compile correctly one job at a time?
> Regards
> Chris

The issues with the config screen sounds like a bug, but one that is 
unlikely to get fixed any time soon.  You can avoid it by doing a 
make config-recursive before building the port, but you're still 
going to run in to the problem that ports are not guarranteed to 
by -jX safe, some will work, some won't, and there's no way of 
knowing without trying it.  In general you can save yourself a lot of 
headaches by not trying in the first place.


Josh Paetzel

More information about the freebsd-questions mailing list