Is there any small linux distribution which comes with a complete C development environment

I have installed "Damn Small Linux" on my home computer for doing C development in unix. But the distribution doesn't by default come with the C development environment and I am facing some issues when trying to install the gcc.

Is there any other small Linux distribution which by default has the required packages for the C development. And also I don't want additional software which takes up lot of space but still would like to have the graphical environment.

Thanks


Solution 1:

I can not think of a distribution that ships with a complete tool chain. This is for a few reasons:

  1. Not everyone wants to compile programs. Compiler + binutils + headers + debuggers take up room that many people would rather use for other things.
  2. Saves bandwidth. Sure, an ISO is an ISO, but when people update / upgrade, they'll tend to pull in more updates.
  3. Some people view the presence of a compiler as a security risk in certain settings.

No distribution is going to 'please everyone' , however not including a tool chain is a compromise to please as many people as possible.

I build Ubuntu in a very strange way (well, not really strange, just overly pedantic regarding what I install).

I start with debootstrap to get the core utilities installed, then I chroot to the installation and install the stuff that I want. Usually this is:

  1. build-essential
  2. kubuntu-desktop
  3. (a long list of libraries with development header packages)

You could substitute kubuntu-desktop for:

edubuntu-desktop - educational desktop for Ubuntu
edubuntu-desktop-kde - educational desktop for Kubuntu
ubuntu-desktop - The Ubuntu desktop system
xubuntu-desktop - Xubuntu desktop system

I then grab the kernel I want from kernel.org and configure/build/install it.

I can then copy over my newly populated root file system to a logical volume and boot to it, or partition a new drive and copy everything over, then chuck the drive into the new system.

Why, oh why do I spend so much time doing this? I'm anal retentive regarding what I install and use .. and I get a great deal of satisfaction out of using something that I put together myself.

After booting, I install anything else that I may need, as I find a need for it. I also uninstall anything I know that I'm never going to use.

Anyway, the result is a system that should fit your needs very well, which is how it should be :)

Solution 2:

Damn Small Linux comes with tcc (see the package list), which is indeed a standards-compliant compiler. I don't know exactly what libraries you're missing, but it should have at least the standard C libraries available.

Solution 3:

A minimal install of Debian isn't really very big (although not as small as Damn Small Linux), and you can easily add a compile environment to that (just add the gcc, make and libc6-dev packages).