AOA Forums AOA Forums AOA Forums Folding For Team 45 AOA Files Home Front Page Become an AOA Subscriber! UserCP Calendar Memberlist FAQ Search Forum Home


Go Back   AOA Forums > Software > OS, Software, Firmware, and BIOS


Reply
 
LinkBack Thread Tools Rate Thread
  #1 (permalink)  
Old 29th November, 2004, 07:00 PM
Gizmo's Avatar
Chief BBS Administrator
BassTeroids Champion, Global Player Champion, Aim & Fire Champion, Puzzle Maniax Champion, Othello Champion, Canyon Glider Champion, Unicycle Challenge Champion, YetiSports 9: Final Spit Champion, Zed Champion
 
Join Date: May 2003
Location: Webb City, Mo
Posts: 16,178
Send a message via ICQ to Gizmo Send a message via AIM to Gizmo Send a message via MSN to Gizmo Send a message via Yahoo to Gizmo Send a message via Skype™ to Gizmo

Help with Linux

Ok, I'm basically a Linux noob. I can make my way around the command line and do basic stuff (our proxy/firewall runs on Redhat, and I set up all of the rules used by iptables), but when it comes to compiling apps or doing anything that doesn't fit into the preconfigured scenarios, I'm pretty much out in the cold.

I've got a project that I'm getting ready to work on (it's open source) that requires me to build some code, which means I'll have to compile code under Linux.

The best way to learn this stuff is to dive right in, so that's what I'm gonna do.

I've got a box that I've dedicated for this project; it has an HP mobo that is based on the Asus P3C-D (dual PIII at 700 MHz). The only difference between the HP mobo and the regular Asus mobo is some tweaks in the bios and the addition of a thermal hardware monitor; other than that, it is the Asus board. I am using a plain 4 GB IDE drive and a CD-ROM. I've got 256 MB of Rambus memory. I've got on-board sound, a PCI S3 Virge video card, and a D-Link DWL-520 wireless NIC. All the hardware works flawlessly under WindowsXP using the stock Windows drivers (or the D-Link driver, in the case of the NIC).

I've played with the SuSE 9.1 Pro distro and I wasn't real wowed by it; it screwed up my graphics card and hasn't got a clue how to deal with my NIC (I take that back; it seems to know what my NIC is, and even loads a device driver for it, but I have no idea how to tell the IP stack to use it, and SuSE doesn't seem to, either). I know Kaitain is big on the Gentoo distro, and I figure the only way I'm really gonna understand how this stuff works is if I build it up.

So, anybody wanna take me under their wing and guide me here? LOL

Oh yah, this machine will be folding when I'm not using for other things.
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
  #2 (permalink)  
Old 29th November, 2004, 07:01 PM
Kaitain's Avatar
Member
Mars Rover Champion, Joust Champion
 
Join Date: September 2001
Location: MK10, UK.
Posts: 4,372
Send a message via MSN to Kaitain Send a message via Skype™ to Kaitain

Sure thing - where do you want to start?
__________________
It is by coffee alone I set my mind in motion...
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
  #3 (permalink)  
Old 29th November, 2004, 07:03 PM
Gizmo's Avatar
Chief BBS Administrator
BassTeroids Champion, Global Player Champion, Aim & Fire Champion, Puzzle Maniax Champion, Othello Champion, Canyon Glider Champion, Unicycle Challenge Champion, YetiSports 9: Final Spit Champion, Zed Champion
 
Join Date: May 2003
Location: Webb City, Mo
Posts: 16,178
Send a message via ICQ to Gizmo Send a message via AIM to Gizmo Send a message via MSN to Gizmo Send a message via Yahoo to Gizmo Send a message via Skype™ to Gizmo

Start with the basics. What do I need to download?

Edit: Said another way, how do I bootstrap this puppy?
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
  #4 (permalink)  
Old 29th November, 2004, 07:14 PM
Kaitain's Avatar
Member
Mars Rover Champion, Joust Champion
 
Join Date: September 2001
Location: MK10, UK.
Posts: 4,372
Send a message via MSN to Kaitain Send a message via Skype™ to Kaitain

If you're interested in Gentoo, then your first port of call is their excellent installation handbook. There is one error in the handbook, which is in the "installation of Grub" chapter. When you get to that point (in about 24 hours time) I'll dig out older revision of the handbook and put the relevant commands up.

You are best off doing this with a wired NIC. If you really MUST have wireless right from the get-go then you're best off downloading AT LEAST a stage 2 tarball and starting from there.
__________________
It is by coffee alone I set my mind in motion...
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
  #5 (permalink)  
Old 29th November, 2004, 07:38 PM
Gizmo's Avatar
Chief BBS Administrator
BassTeroids Champion, Global Player Champion, Aim & Fire Champion, Puzzle Maniax Champion, Othello Champion, Canyon Glider Champion, Unicycle Challenge Champion, YetiSports 9: Final Spit Champion, Zed Champion
 
Join Date: May 2003
Location: Webb City, Mo
Posts: 16,178
Send a message via ICQ to Gizmo Send a message via AIM to Gizmo Send a message via MSN to Gizmo Send a message via Yahoo to Gizmo Send a message via Skype™ to Gizmo

Quote:
Originally Posted by Kaitain
If you're interested in Gentoo, then your first port of call is their excellent installation handbook. There is one error in the handbook, which is in the "installation of Grub" chapter. When you get to that point (in about 24 hours time) I'll dig out older revision of the handbook and put the relevant commands up.
Righto - except that it will probably be more than 24 hours. LOL.

Quote:
Originally Posted by Kaitain
You are best off doing this with a wired NIC. If you really MUST have wireless right from the get-go then you're best off downloading AT LEAST a stage 2 tarball and starting from there.
I suspected you'd say something like that, so I have aquired a D-Link DFE-530TX+.
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
  #6 (permalink)  
Old 29th November, 2004, 08:31 PM
Kaitain's Avatar
Member
Mars Rover Champion, Joust Champion
 
Join Date: September 2001
Location: MK10, UK.
Posts: 4,372
Send a message via MSN to Kaitain Send a message via Skype™ to Kaitain

Quote:
Originally Posted by gizmo
I suspected you'd say something like that, so I have aquired a D-Link DFE-530TX+.
You'll only need it for your initial installation, up until you reboot with your own kernel. After that, you can build the driver for your DWL-520 card. I'm glad you chose that card as it's the exact same one I have, so I can send the odd config file your way.

So last thing first...

Assuming you're using Gentoo and have no graphical desktop yet, then
1) make sure your kernel is compiled with wireless support. You'll spot it as you browse through features.
2) log in as root
3) type in:
Code:
emerge -pv wireless-tools
If you like what you see, then type in
Code:
emerge wireless-tools
This builds a lot of those nice little tools for setting up wireless.
4) Get this file: http://madwifi.otaku42.de/madwifi-cvs-current.tar.bz2
You can do this quickly with the command Unpack it with:
Code:
 tar xvjf madwifi-cvs-current.tar.bz2
5) The package comes preconfigured for i386 systems (yours). For users of other architectures, there is an option file that needs to be changed. I forget which one, and I'm not at home to check. You can compile and install it quickly thus:
Code:
make && make install
6) Assuming it all went well, there are just a couple more steps:
a) To use the card now: type in these comands
Code:
 modprobe ath_pci
iwconfig ath0 essid "MY SSID" enc my_encryption_key_as_hexadecimal commit
# for dhcp routers
dhcpcd ath0
# for static IP - first set the ip address
ifconfig ath0 ppp.qqq.rrr.sss broadcast ppp.qqq.rrr.255 netmask aaa.bbb.ccc.ddd up
# then tell it the gateway
route add default gw mygateway.as.dot.quad
# then make sure the nameservers are correct
nano -w /etc/resolv.conf
# append the following line(s)
nameserver mynameserver1.as.dot.quad
nameserver mynameserver2.as.dot.quad
# etc
b) To use it automatically in the future - at the moment this is tricky in Gentoo. There is a very good system currently in the testing branch (I use it myself), which brings ath0 (the Atheros wireless device) up on boot. In the stable branch, there is only the older version, which I don't recommend. I'll link the howto for the "unstable" scripts later. In all cases, you need to
* load the module on boot
Code:
echo "ath_pci" >>  /etc/modules.autoload.d/kernel-2.6
* type in that whole irritating iwconfig stuff from part A on boot, or alternatively put it into a script that you can run once you log in. Irritating, ain't it? The version in testing is better
__________________
It is by coffee alone I set my mind in motion...

Last edited by Kaitain; 30th November, 2004 at 06:52 PM.
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
  #7 (permalink)  
Old 30th November, 2004, 04:14 PM
Gizmo's Avatar
Chief BBS Administrator
BassTeroids Champion, Global Player Champion, Aim & Fire Champion, Puzzle Maniax Champion, Othello Champion, Canyon Glider Champion, Unicycle Challenge Champion, YetiSports 9: Final Spit Champion, Zed Champion
 
Join Date: May 2003
Location: Webb City, Mo
Posts: 16,178
Send a message via ICQ to Gizmo Send a message via AIM to Gizmo Send a message via MSN to Gizmo Send a message via Yahoo to Gizmo Send a message via Skype™ to Gizmo

I'm in the process of downloading the Gentoo LiveCD right now (actually have been all night).
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
  #8 (permalink)  
Old 5th December, 2004, 06:40 PM
Gizmo's Avatar
Chief BBS Administrator
BassTeroids Champion, Global Player Champion, Aim & Fire Champion, Puzzle Maniax Champion, Othello Champion, Canyon Glider Champion, Unicycle Challenge Champion, YetiSports 9: Final Spit Champion, Zed Champion
 
Join Date: May 2003
Location: Webb City, Mo
Posts: 16,178
Send a message via ICQ to Gizmo Send a message via AIM to Gizmo Send a message via MSN to Gizmo Send a message via Yahoo to Gizmo Send a message via Skype™ to Gizmo

Ok. I downloaded the LiveCD, booted up. I have an AMI SCSI controller that I would like to get running on this thing, but the LiveCD just hangs when I run 'gentoo doscsi', and when I try 'modprobe megaraid' it says 'module not found'. I've gathered from poking around that this is some kind of problem with the Gentoo LiveCD, so I'm using the IDE drive for now. I figure I'll build Gentoo on the IDE drive and then bring the SCSI controller online later.

Anyway, I've chrooted into my new installation, downloaded a stage1 tarball, and I am setting options in make.config. Here's what I've got:

CFLAGS=
"-Os -mcpu=i686 -pipe -fomit-frame-pointer -fno-default-inline -fno-inline -falign-functions=8 -falign-jumps=8 -f-prefetch-loop-arrays"
CHOST="i686-pc-linux-gnu"
MAKEOPTS="-j3"
CXXFLAGS="${CFLAGS}"
USE=
"X Xaw3d aalib acl acpi adns aim alsa apache2 apm arts audiofile avi bash-completion bcmath bzlib caps calendar cdb cdr cpdflib crypt cscope ctype cups curl curlwrappers dga dio divx4linux doc dvb dvd dvdr emacs emacs-w3 encode esd ethereal evo exif fam fastcgi fbcon fftw flac flash foomatic ftp gd ggi gif ginac gmp gphoto2 gpm gstreamer gtk gtk2 iconv icq imagemagick imap imlib innodb iodbc jabber java jikes joystick jpeg junit kde kerberos krb4 ladcca lcms ldap libedit libwww mad maildir mailwrapper mbox mcal memlimit mhash mikmod milter mime ming mmx mng motif mozilla mpeg mpi msession msn mysql mysqli ncurses netcdf nptl odbc oggvorbis openal opengl oscar oss pam pcntl pcre pdflib perl php png portaudio posix ppds python quicktime readline recode ruby samba sasl sdl session sharedmem simplexml slang sndfile snmp soap sockets sox speex spell spl sse ssl svga sysvipc szip tcltk tcpd tetex theora tidy tiff tokenizer truetype unicode usb videos wddx wmf wxwindows xface xine xml xml2 xmlrpc xmms xpm xsl xv xvid yahoo zlib x86"
GENTOO_MIRRORS=
"ftp://ftp6-uni-erlangen.de/pub/mirrors/gentoo ftp://ftp.ipv6.uni-muenster.de/pub/l...butions/gentoo ftp://vlaii.snt.ipv6.utwente.nl/pub/os/linux/gentoo http://ftp6-uni-erlangen.de/pub/mirrors/gentoo"
(I realize the GENTOO_MIRRORS setting is largely irrelevant to this discussion. I just included it for completeness.)

So, does this look sane, or am I completely off base?
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
  #9 (permalink)  
Old 6th December, 2004, 01:14 AM
Kaitain's Avatar
Member
Mars Rover Champion, Joust Champion
 
Join Date: September 2001
Location: MK10, UK.
Posts: 4,372
Send a message via MSN to Kaitain Send a message via Skype™ to Kaitain

Quote:
Originally Posted by gizmo
So, does this look sane, or am I completely off base?
Half and half

Your CFLAGS are quite interesting. I'm gonna assume that you understand compiler flags better than I do, given that I don't write software. I was, however, under the impression that everything you called in that setup was already covered by -O2. I was also under the impression that -falign-functions=4 was faster. I could well be wrong though.

Your USE flags are, however, completely barking Use as FEW of these as you can get away with, otherwise portage will compile a lot of needless junk into the system to activate obscure features. USE flags are only there to activate or disable specific features that you really really want, not to compose a wish-list of software.

Do you really want pdflib for example? foomatic already depends on ghostscript, which is perfectly capable of handling pdfs. Why have a second encoder? You're asking for at least 4 sound servers to be compiled (arts, alsa, esd and oss)... why? Alsa's the best of the 4. Anyway, I digress. Just try to simplify your use flags to include the minimum features you can't live without, and ban the software you really don't want.

Mine (appended) works like this: I want both 32bit and 64bit support, so I use multilib. You won't have this. I want alsa, not arts (where poss) and not esd. OSS support is neither here nor there since Alsa's OSS emulation is set in the kernel. I don't want Gnome (since I do want KDE), but I don't care whether gtk is used or not. I do want cups, foomatic and ppds support, since I have a DeskJet 720C which needs them. I do want kde support, and its toolkit qt where necessary. When I build xine or mplayer, I do want full dvd and cdr support. I have 2 monitors so I need xinerama to be active.

Also note the DO_NOT_COMPILE bit. This is useless for everything except KDE, and allows me to build KDE by "emerge -v kde" without getting all the games, edutainment, toys and pointless office tools.

Thus:
Code:
# These settings were set by the catalyst build script that automatically built this stage
# Please consult /etc/make.conf.example for a more detailed example
CFLAGS="-O2 -pipe -fomit-frame-pointer -falign-functions=4"
CHOST="x86_64-pc-linux-gnu"
CXXFLAGS="${CFLAGS}"
MAKEOPTS="-j2"
USE="multilib alsa -arts -gnome -esd divx4linux cups dvd cdr foomaticdb ppds kde qt png mng sse sse2 ssl xinerama"
DO_NOT_COMPILE="kdepim knode libkdepim libkpimexchange libkpimidentities kgantt kmailcvt libkcal kitchensync kresources kaddressbook kdgantt kfile-plugins certmanager kalarmd kor
ganizer kabc ksync kmag kmousetool kmouth kdat kdebugdialog khelpcenter klipper kpager kxkb flashkard kalzium kbruch keduca khangman kig kiten klettres kmathtool kmessedwords kmp
lot kpercentage kstars ktouch kverbox kvoctrain atlantik kasteroids katomic kbackgammon kbattleship kblackbox kbounce kenolaba kfouleggs kgoldrunner kjumpingcube klickety klines
kmines kolf konquest kpat kpoker kreversi ksame kshisen ksirtet ksnake ksokoban kspaceduel ktron ktuberlin kwin4 lskat kamera kgamma kruler juk kaboodle noatun kdict knewsticker
kopete krdc krfb kwifimanager kalarm kandy karm kmail knotes konsolekalendar kontact korganiser korn kpilot ktnef cervisia kbabel kbugbuster kcachegrind kompare umbrello amor kmo
on kodo kteatime kweather kworldclock"
LINGUAS="en_GB"
__________________
It is by coffee alone I set my mind in motion...
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
  #10 (permalink)  
Old 6th December, 2004, 04:43 AM
Gizmo's Avatar
Chief BBS Administrator
BassTeroids Champion, Global Player Champion, Aim & Fire Champion, Puzzle Maniax Champion, Othello Champion, Canyon Glider Champion, Unicycle Challenge Champion, YetiSports 9: Final Spit Champion, Zed Champion
 
Join Date: May 2003
Location: Webb City, Mo
Posts: 16,178
Send a message via ICQ to Gizmo Send a message via AIM to Gizmo Send a message via MSN to Gizmo Send a message via Yahoo to Gizmo Send a message via Skype™ to Gizmo

Quote:
Originally Posted by Kaitain
Your CFLAGS are quite interesting. I'm gonna assume that you understand compiler flags better than I do, given that I don't write software. I was, however, under the impression that everything you called in that setup was already covered by -O2. I was also under the impression that -falign-functions=4 was faster. I could well be wrong though.
IMHO, compilers are doing some ****amamie things with optimization these days because nobody has bothered to really think about the problem in some years.

Here's the deal:
Todays CPUs have, and have had for quite some time, relatively large L1 caches, and very large L2 caches. Things like loop unrolling and code inlining, which are a staple of performance optimizations on cacheless architectures, actually hurt performance on caching architectures, because they effectively take an algorithm that would have fit entirely into the cache as a loop or a bsr or jsr, and expand them so that they can no longer fit, or a piece of code that is repeated many times in the application never gets executed more than once at any particular address, rendering caching useless.

The Os option optimizes for size, and so doesn't do loop unrolling, which the 02 option does. It also doesn't ignore the 'inline' directive, which I actually want to do, for the reasons stated above. However, it doesn't pull variable initialization out of loops because that can increase executable size. For performance, though, you want to do this (and the 02 option does) so I have to explicitely turn this option on now. In addition, the Pentium and above architectures use a 64-bit databus, so you want to align your function entry points and data structures on 8-byte boundaries if at all possible (for the 486 and down, you align on 4-byte boundaries), since that allows you to make the most efficient use of the data stream you bring in. However, jumps to different places in the code can play havoc with things, since it is quite common to have two different code paths that end up at the same place. Aligning jumps to 8-byte boundaries could result in the execution of several NO-OPs, which are wasteful, and could actually end up hurting performance compared to jumping to a non-8-byte-aligned address, so we leave those out.

Clear as mud?

Quote:
Originally Posted by kaitain
Your USE flags are, however, completely barking Use as FEW of these as you can get away with, otherwise portage will compile a lot of needless junk into the system to activate obscure features. USE flags are only there to activate or disable specific features that you really really want, not to compose a wish-list of software.

Do you really want pdflib for example? foomatic already depends on ghostscript, which is perfectly capable of handling pdfs. Why have a second encoder? You're asking for at least 4 sound servers to be compiled (arts, alsa, esd and oss)... why? Alsa's the best of the 4. Anyway, I digress. Just try to simplify your use flags to include the minimum features you can't live without, and ban the software you really don't want.
I was afraid of this. See, I wasn't sure what I needed to get the functionality I wanted, so I included everything that looked like it might be relevant. If ghostscript can handle pdfs, then I can see that I don't need pdflib, but I didn't know that before. I included the 4 sound servers because I wasn't sure if I would need them for different things or not.

However, it looks like I'm going to have to start peeling things out as I can't get it to compile right now. I get some error about not having the right linux-headers to go with my kernel.
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
  #11 (permalink)  
Old 6th December, 2004, 07:09 AM
Gizmo's Avatar
Chief BBS Administrator
BassTeroids Champion, Global Player Champion, Aim & Fire Champion, Puzzle Maniax Champion, Othello Champion, Canyon Glider Champion, Unicycle Challenge Champion, YetiSports 9: Final Spit Champion, Zed Champion
 
Join Date: May 2003
Location: Webb City, Mo
Posts: 16,178
Send a message via ICQ to Gizmo Send a message via AIM to Gizmo Send a message via MSN to Gizmo Send a message via Yahoo to Gizmo Send a message via Skype™ to Gizmo

Ok, I'm confused as hell now.

WHAT do I NEED in my kernel?

I want to be able to do software development. I want to run KDE for my window manager. I want to have sound. I want to be able to play cds and dvds. I want to be able to handle streaming media of various forms. I want to be able to download docs off the internet in various formats and actually read them. I'd like to be able to play the odd game or two although my video card doesn't support 3D graphics. I want to be able to run Trillian and connect to ICQ, AIM, MSN, and Yahoo. I want to be able to run java apps and even do java development. I want to be able to do web application development which means I need to be able to run, at a minimum, Apache, MySQL, and PHP. I want to be able to do HTTP and FTP. And I'd like, at some point, to be able to boot off my farkin' SCSI controller (but being able to at least access it would be good).

To do all of these things, do I have to compile them into my kernel? What happens if I happen to want to run something that doesn't have support compiled into my kernel?

The Gentoo USE documentation page tells me all kinds of things about what the various USE flags do, but it doesn't tell me what the USE flags DO, if you follow my meaning.
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
  #12 (permalink)  
Old 6th December, 2004, 09:35 AM
Kaitain's Avatar
Member
Mars Rover Champion, Joust Champion
 
Join Date: September 2001
Location: MK10, UK.
Posts: 4,372
Send a message via MSN to Kaitain Send a message via Skype™ to Kaitain

Quote:
Originally Posted by gizmo
Ok, I'm confused as hell now.

WHAT do I NEED in my kernel?
Most of what you want to do isn't governed by the kernel. The kernel simply gets the hardware up and running, and sets up the software environment so that you can do everything else in userspace.

In your kernel, you want to decide on the hardware you have, as well as networking support, character set and a few things that have to be set at boot time, like frame buffer support.

What you need in your kernel depends largely on your hardware. I could send you the .config for my laptop's kernel, if you want a guideline?

Quote:
Originally Posted by gizmo
To do all of these things, do I have to compile them into my kernel? What happens if I happen to want to run something that doesn't have support compiled into my kernel?
No. You will have to have networking support, and an appropriate network card driver. Framebuffer support's nice for a graphical bootup screen (XP style). Sound and graphics support are best compiled as modules unless you're sure you're not going to upgrade them at all. Wireless LAN support needs to be enabled, though you'll be building your own module for the D-Link later.
__________________
It is by coffee alone I set my mind in motion...

Last edited by Kaitain; 6th December, 2004 at 09:41 AM.
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
  #13 (permalink)  
Old 6th December, 2004, 09:38 AM
Kaitain's Avatar
Member
Mars Rover Champion, Joust Champion
 
Join Date: September 2001
Location: MK10, UK.
Posts: 4,372
Send a message via MSN to Kaitain Send a message via Skype™ to Kaitain

Quote:
Originally Posted by gizmo
The Os option optimizes for size, and so doesn't do loop unrolling, which the 02 option does. It also doesn't ignore the 'inline' directive, which I actually want to do, for the reasons stated above. However, it doesn't pull variable initialization out of loops because that can increase executable size. For performance, though, you want to do this (and the 02 option does) so I have to explicitely turn this option on now. In addition, the Pentium and above architectures use a 64-bit databus, so you want to align your function entry points and data structures on 8-byte boundaries if at all possible (for the 486 and down, you align on 4-byte boundaries), since that allows you to make the most efficient use of the data stream you bring in. However, jumps to different places in the code can play havoc with things, since it is quite common to have two different code paths that end up at the same place. Aligning jumps to 8-byte boundaries could result in the execution of several NO-OPs, which are wasteful, and could actually end up hurting performance compared to jumping to a non-8-byte-aligned address, so we leave those out.
Fascinating. Thanks for that

Quote:
However, it looks like I'm going to have to start peeling things out as I can't get it to compile right now. I get some error about not having the right linux-headers to go with my kernel.
While you're still bootstrapping, it's often best just to leave the USE flags set to performance optimisations (SSE, SSE2 etc), and software you definitely want (gpg, ssl, png and mng). Everything else can wait 'til later.
__________________
It is by coffee alone I set my mind in motion...
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
  #14 (permalink)  
Old 6th December, 2004, 04:01 PM
Gizmo's Avatar
Chief BBS Administrator
BassTeroids Champion, Global Player Champion, Aim & Fire Champion, Puzzle Maniax Champion, Othello Champion, Canyon Glider Champion, Unicycle Challenge Champion, YetiSports 9: Final Spit Champion, Zed Champion
 
Join Date: May 2003
Location: Webb City, Mo
Posts: 16,178
Send a message via ICQ to Gizmo Send a message via AIM to Gizmo Send a message via MSN to Gizmo Send a message via Yahoo to Gizmo Send a message via Skype™ to Gizmo

Quote:
Originally Posted by Kaitain
Most of what you want to do isn't governed by the kernel. The kernel simply gets the hardware up and running, and sets up the software environment so that you can do everything else in userspace.

In your kernel, you want to decide on the hardware you have, as well as networking support, character set and a few things that have to be set at boot time, like frame buffer support.

What you need in your kernel depends largely on your hardware. I could send you the .config for my laptop's kernel, if you want a guideline?
Ah, ok, this makes things a little more clear. However, we still run into issues of "which module should I use for the hardware?". For example, sound support. I've got alsa, arts, esd, and oss available to me? Why? And which one do I NEED? Further, if the goal of the kernel is to configure the hardware environment, then why do I have all of these freakin' SOFTWARE flags (kde, gnome, mysql, apache2, samba)?

From what you are telling me, it sounds like what I need is this:

USE="acpi alsa apm cups dga dio cdr dvd dvdr fbcon foomaticdb ggi mmx sse x86"

Anything else I want I can simply build and insmod at startup if I need it, right?
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
  #15 (permalink)  
Old 6th December, 2004, 04:20 PM
Chief Systems Administrator
 
Join Date: September 2001
Location: Europe
Posts: 13,075

The software flags (the USE line) are to indicate what dependancies you want. These are NOT HARDWARE!

For example, on one of my server machines I use the flag -X. Why? Well, I don't have X installed, I don't WANT X installed, and one or two of the components have an optional X interface.

If I don't explicitly tell portage I don't want X stuff, then it'll try and build X just to satisfy the dependancies of the optional stuff.

As far as I can tell, it's more of a list to say what you definately don't want. By default portage seems to assume you want all features of a program.

The kernel configuration determines the supported hardware. The USE line gives portage hints as to the software you're expecting to use, and doesn't seem to be too important.
__________________
Any views, thoughts and opinions are entirely my own. They don't necessarily represent those of my employer (BlackBerry).
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
  #16 (permalink)  
Old 6th December, 2004, 04:28 PM
Gizmo's Avatar
Chief BBS Administrator
BassTeroids Champion, Global Player Champion, Aim & Fire Champion, Puzzle Maniax Champion, Othello Champion, Canyon Glider Champion, Unicycle Challenge Champion, YetiSports 9: Final Spit Champion, Zed Champion
 
Join Date: May 2003
Location: Webb City, Mo
Posts: 16,178
Send a message via ICQ to Gizmo Send a message via AIM to Gizmo Send a message via MSN to Gizmo Send a message via Yahoo to Gizmo Send a message via Skype™ to Gizmo

The make.conf.default seems to control that stuff that portage always wants to put in, and it has a lot of stuff in it, including X.

Quote:
Originally Posted by Áedán
The software flags (the USE line) are to indicate what dependancies you want. These are NOT HARDWARE!

For example, on one of my server machines I use the flag -X. Why? Well, I don't have X installed, I don't WANT X installed, and one or two of the components have an optional X interface.
Ok, so now I'm back to software again. Sigh. So, what happens if I use the -X flag, and then go back later and install X? Do I have to recompile all of my apps with X now?
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
  #17 (permalink)  
Old 6th December, 2004, 04:32 PM
Chief Systems Administrator
 
Join Date: September 2001
Location: Europe
Posts: 13,075

No, in the same way you do not need to recompile a DOS binary for it to work in Windows (as long as you weren't expecting it to grow a graphical interface).

I use Nessus, an Opensource vulnerability scanner. Nessus has an X based frontend, but I don't have X on my server. If I use portage to emerge Nessus without any USE flags, portage will build X, just to satisfy the the X based frontend. As I don't want X on the system, then that's bad (for me).

If I put in the -X flag, portage will build everything BUT the X based parts. Should I later install X, then Nessus would still work, but would be less the X based frontend. If I then wanted the X based frontend, I would have to re-emerge Nessus without the -X flag to ensure the X based frontend was built.

If X was already on the machine, then using -X would still ensure that the X parts of Nessus were not built.
__________________
Any views, thoughts and opinions are entirely my own. They don't necessarily represent those of my employer (BlackBerry).
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
  #18 (permalink)  
Old 6th December, 2004, 04:36 PM
Gizmo's Avatar
Chief BBS Administrator
BassTeroids Champion, Global Player Champion, Aim & Fire Champion, Puzzle Maniax Champion, Othello Champion, Canyon Glider Champion, Unicycle Challenge Champion, YetiSports 9: Final Spit Champion, Zed Champion
 
Join Date: May 2003
Location: Webb City, Mo
Posts: 16,178
Send a message via ICQ to Gizmo Send a message via AIM to Gizmo Send a message via MSN to Gizmo Send a message via Yahoo to Gizmo Send a message via Skype™ to Gizmo

Ok. That's what I suspected (it made sense) but I wasn't sure. So, worst that happens if I leave a flag out is that later on down the line I may have to recompile some stuff to take advantage of whatever I add. That's not a problem.
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
  #19 (permalink)  
Old 6th December, 2004, 04:43 PM
Chief Systems Administrator
 
Join Date: September 2001
Location: Europe
Posts: 13,075

I hope you're noting your experiences!
__________________
Any views, thoughts and opinions are entirely my own. They don't necessarily represent those of my employer (BlackBerry).
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
  #20 (permalink)  
Old 6th December, 2004, 05:00 PM
Gizmo's Avatar
Chief BBS Administrator
BassTeroids Champion, Global Player Champion, Aim & Fire Champion, Puzzle Maniax Champion, Othello Champion, Canyon Glider Champion, Unicycle Challenge Champion, YetiSports 9: Final Spit Champion, Zed Champion
 
Join Date: May 2003
Location: Webb City, Mo
Posts: 16,178
Send a message via ICQ to Gizmo Send a message via AIM to Gizmo Send a message via MSN to Gizmo Send a message via Yahoo to Gizmo Send a message via Skype™ to Gizmo

Yep. I've got it all written down on my left arm. Heh.

Actually, part of the reason I started this thread was to have a place to make my notes.
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
Reply



Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Thread Tools
Rate This Thread
Rate This Thread:

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
and then there was linux..... fireball_87 Random Nonsense! 14 31st August, 2009 06:07 PM
Linux Mod Rondog Case Modifications 88 5th September, 2005 07:50 PM
PS3 Add-On HDD to run on Linux Rondog General Hardware Discussion 22 13th June, 2005 07:08 PM
Linux help bigjohnson OS, Software, Firmware, and BIOS 3 19th July, 2003 10:26 PM
Help with Linux robbie OS, Software, Firmware, and BIOS 11 11th May, 2003 03:00 AM


All times are GMT +1. The time now is 04:15 AM.


Copyright ©2001 - 2010, AOA Forums
Don't Click Here Don't Click Here Either

Search Engine Friendly URLs by vBSEO 3.3.0