Friday, April 29, 2011

FreeBSD

I’ve been playing around with FreeBSD lately, and I really enjoy the portage system. I like the idea of compiling things optimized for your own computer, and only compiling what you want. Also it helps to learn the intricacies of how computer software works internally.

But I am starting to feel like FreeBSD doesn’t offer the same things Linux does. For example, it uses the old gcc 4.2, which is fine I suppose but the fact that the new gcc 4.6 isn’t used because the FreeBSD team doesn’t like the license kind of irks me. I was able to compile some software with the new gcc in FreeBSD, but if I compiled a library with 4.2 and tried to link a program using 4.6, it wouldn’t compile. So using >4.2 caused more problems than solutions.

Also, there are several applications which are only available for Linux right now, such as Dropbox and Flash. I was able to get Flash running through the Linux emulator, and I was able to compile Dropbox through the source, but nautilus never seemed to pick up the dropbox extension, essentially rendering it useless.

So what to do if I enjoy the portage system but also like the structure of Linux? Well, after some research it seems Gentoo is a good solution. I will be trying out Gentoo in the upcoming days and seeing if I like it.

Oh and FreeBSD didn’t have nvidia 270 yet, which was simple enough to import into /usr/ports myself, but was required for me because of this bug.

3 comments:

  1. Wow! Talk about a blog break!

    I maybe miss you a little bit.

    ReplyDelete
  2. I find 4.5 works well in most cases for me. You can set it up to exclude specific projects in /etc/make.conf, e.g.:

    .if empty(.CURDIR:M/usr/ports/graphics/ming)
    CC=gcc45
    CXX=g++45
    CPP=cpp45
    .endif

    ReplyDelete
  3. Ah yes Clair. I don't really blog too often, but maybe I'll start doing it more. I enjoy reading yours!

    @greenreaper, thanks for the tip. Interesting about being able to exclude certain packages from using the new gcc. I have gentoo set up and also freebsd so I'll see how it goes.

    ReplyDelete