(Untitled)

Jan 27, 2004 00:44

installed freebsd.. woohoo! in case you're wondering why, it was mostly after reading this article: http://www.over-yonder.net/~fullermd/rants/bsd4linux/bsd4linux1.php

Leave a comment

oh, one other point vnangia January 28 2004, 07:50:12 UTC
almost forgot ( ... )

Reply

Re: oh, one other point stak January 28 2004, 16:17:21 UTC
the whole point of compiling is just that: everyone's system config is different, and compiling it on your machine specifically makes sure that it works the most efficiently it possibly can. it's tailored specifically for your machine. making programs compatible the way windows does also makes it hugely bloated and inefficient. both methods have their advantages and disadvantages - its your call if you want to stick with windows ( ... )

Reply

Re: oh, one other point vnangia January 28 2004, 17:05:02 UTC
there is quite some truth in the fact that if you write a program and then optimize it for your machine and then use it, you would end up with a very much more optimized system than if you used a pre-built program, because pre-builts have to worry about a bunch of different systems to run on - but you see, i don't see the point of compiling a generic code on your system. what i mean is: the code you downloaded for each port is the same, no matter which system you're running - it's code. the libraries that you've downloaded are generic as well. as such, the port that you compile will be identical to 99% of other such compiled ports - because you're used the same source code both for the port and for the associated libraries. so to me, it seems wasteful to have to compile something that normally shouldn't vary from system to system ( ... )

Reply

Re: oh, one other point stak January 28 2004, 17:17:03 UTC
The code that you download is the same, but the code that gets compiled is not. The magic of ifdef's and the wonder of system variables make all the difference.

Reply

Re: oh, one other point vnangia January 28 2004, 19:54:01 UTC
I would have assumed that most system variables are designed to be set up and changed on the fly, and are variables, not constants. Ifdefs is admittedly a different matter - they do change parts of the code, but I would doubt substantially - I mean, the most dramatic examples I can think of is the addition of a math coproc, and that's not that radically different for most applications, just for a few specialized apps...

Reply

Re: oh, one other point stak January 29 2004, 06:18:58 UTC
system variables tell the compile process what is specific about your system. they vary across systems, not within them. what you're referring to are environment variables - stuff like the path and whatnot. that doesn't make as much of a difference. the point is that it's system variables that tell the compiler that you're running freebsd on an i386 or whatever, so that the compiler can make the appropriate optimizations for that specific OS/hardware. if you're running a sparc and for example, the leftshift operation happens to be slower than the multiply (highly unlikely, but this is an example), then the compiler will recognize this and compile all leftshifts into multiplys instead. that sort of thing. it doesn't make that big of a difference with smaller apps, but the larger the app, the better the gain. specially when you get to the OS - recompiling your kernel with exactly the modules you need can speed it up a whole lot.. i'm planning on doing that at some point.

Reply

Re: oh, one other point stak February 1 2004, 13:20:40 UTC
one exception.. i tried to install java (jdk 1.4) and because of sun's license, i had to go to their website and manually download a bunch of stuff before i could do the 'make install' for it. it worked fine after that (although it took a really long time and used up a huge amount of HD space). the whole process wasn't a big deal since it told me exactly which files i had to download, but still, just thought you'd want to know.

Reply


Leave a comment

Up