# Buildworld using modern software



## falkman (Jul 13, 2011)

Hello,

I like performance, as we all probably do. FreeBSD nails performance on the head as a kernel, but the 4 year old GCC is really starting to get to me, especially with modern day i7s and Xeons. Essentially, I want to make a bleeding edge system from FreeBSD. Luckily, with ports, this isn't a problem for 'most' of the system, but what I'm really focusing on this installation are the utilities that come with FreeBSD (the 'world').

In a perfect world (pun intended), I'd have the most modern versions of all the software in the world, but really I don't think there would be much of a difference as most of it is already up to date. All I'm really worried about are binutils and GCC, which have been held back due to licensing. I'm wondering if anyone has been successful using a modern version of GCC and binutils for making the world, and the kernel. If it hasn't been done, then I'm going to try my hardest, and document it as much as I can. If it has been done, well, I'd love some feedback and maybe some tips.

-Brandon


----------



## poh-poh (Jul 13, 2011)

Have a look at [thread=19149]HOWTO: Install FreeBSD with gcc45[/thread]. I for one build kernel with *-O3* + *-fno-inline-functions -fno-inline-functions-called-once -fno-inline-small-functions*. Extra inlining causes zfs.ko to behave strangely on setting dataset properties.


----------



## phoenix (Jul 13, 2011)

You can skip GCC entirely and build the world/kernel and most ports using CLang.  CLang was imported into -CURRENT awhile back.  Granted, you have to run 9-CURRENT, but you seem to be gung-ho on running the bleeding edge anyway (not really sure why; stable always been newest for me).


----------



## falkman (Jul 13, 2011)

phoenix said:
			
		

> You can skip GCC entirely and build the world/kernel and most ports using CLang.  CLang was imported into -CURRENT awhile back.  Granted, you have to run 9-CURRENT, but you seem to be gung-ho on running the bleeding edge anyway (not really sure why; stable always been newest for me).



Heh, I know I came off as pro bleeding edge, but I just like the most recent stable builds, and gcc 4.2.1 isn't very recent. And thanks for mentioning CLang, I forgot the name of it and I wanted to look into it. I'll post results given what route works best for me.


----------

