When I attempted to compile the latencytop software from the Makefile, much to my surprise, I got the rather newbie errors associated with not being able to find stdio.h. Luckily, I have years of compiler jockey and system software engineering experience to be able to figure out what I need to to in cases like this.
Looking into the matter, it appears that the Live CD gcc is not fully installed, as were neither a number of other packages.
Here is how to get the full complement of compiling tools, headers and libraries needed to compile latencytop. A further Note: This may not yet be enough to execute latencytop as it then encourages you to enable the CONFIG_LATENCYTOP configuration in your kernel. That is on my ToDo list - I may have to contact the author of latencytop about that issue. Here is what you need to get to that step if you are running Ubuntu Gutsy Gibbon (7.10) and only have the equivalent of a Live CD environment installed:
You will need to install several packages. Here is the Synaptic Package Manager History of my installations:
Synaptic Package Manager History:
1) Commit Log for Mon Jan 21 11:50:35 2008
Installed the following packages:
cpp-4.2 (4.2.1-5ubuntu4)
gcc-4.2 (4.2.1-5ubuntu4)
libgomp1 (4.2.1-5ubuntu4)
2) Commit Log for Mon Jan 21 12:27:25 2008
Upgraded the following packages:
libc6 (2.6.1-1ubuntu9) to 2.6.1-1ubuntu10
libc6-i686 (2.6.1-1ubuntu9) to 2.6.1-1ubuntu10
Installed the following packages:
build-essential (11.3ubuntu1)
dpkg-dev (1.14.5ubuntu16)
g++ (4:4.1.2-9ubuntu2)
g++-4.1 (4.1.2-16ubuntu2)
libc6-dev (2.6.1-1ubuntu10)
libstdc++6-4.1-dev (4.1.2-16ubuntu2)
linux-libc-dev (2.6.22-14.47)
patch (2.5.9-4)
3) Commit Log for Mon Jan 21 13:21:35 2008
Installed the following packages:
libglib2.0-dev (2.14.1-1ubuntu1)
4) Commit Log for Mon Jan 21 13:26:31 2008
Installed the following packages:
libncurses5-dev (5.6+20070716-1ubuntu3)
5) Commit Log for Mon Jan 21 13:33:24 2008
Installed the following packages:
libncursesw5-dev (5.6+20070716-1ubuntu3)
Next, in order to complete your understanding of all of the files that have been installed onto my vanilla Ubuntu Gutsy Gibbon (7.10) Live CD environment, here is a list of the files (by package list, i.e. each .list file contains the absolute file names installed of that particular package) in /var/lib/dpkg/info that were installed:
-rw-r--r-- 1 root root 1072 2008-01-21 13:34 libncursesw5-dev.list
-rw-r--r-- 1 root root 48545 2008-01-21 13:31 libncurses5-dev.list
-rw-r--r-- 1 root root 4239 2008-01-21 13:23 libglib2.0-dev.list
-rw-r--r-- 1 root root 390 2008-01-21 12:58 build-essential.list
-rw-r--r-- 1 root root 3511 2008-01-21 12:58 dpkg-dev.list
-rw-r--r-- 1 root root 501 2008-01-21 12:58 g++-4.1.list
-rw-r--r-- 1 root root 211 2008-01-21 12:58 g++.list
-rw-r--r-- 1 root root 28970 2008-01-21 12:58 libstdc++6-4.1-dev.list
-rw-r--r-- 1 root root 337 2008-01-21 12:58 patch.list
-rw-r--r-- 1 root root 12322 2008-01-21 12:58 libc6-dev.list
-rw-r--r-- 1 root root 1807 2008-01-21 12:58 libc6-i686.list
-rw-r--r-- 1 root root 21753 2008-01-21 12:58 linux-libc-dev.list
-rw-r--r-- 1 root root 8965 2008-01-21 12:58 libc6.list
-rw-r--r-- 1 root root 2574 2008-01-21 12:01 gcc-4.2.list
-rw-r--r-- 1 root root 383 2008-01-21 12:01 cpp-4.2.list
-rw-r--r-- 1 root root 115 2008-01-21 12:01 libgomp1.list
What I do to retain the installed files is to combine the .list files, and create a .tar file of all of the files by full (absolute) pathname from the root directory, /, as follows:
cd /
tar -cf /home/ubuntu/Desktop/installed-files.tar `cat combined-lists-installed-files`
You can ignore the fact that the leading '/' is dropped when tar executes.
I read the .list files into a new file named, combined-lists-installed-files, and run a script I have fashioned that eliminates the directory names so that the result contains only the full (absolute) pathname of files. Then I execute the above two commands.
After that, I compress the .tar file with bzip2, save it to disk, and integrate installing the compressed tar file with my initialization script which accesses where on hard drive I have saved my incrementally installed new environment each time I boot up my computer.
-- Tom
P.S. I'll repost to this thread once I have figured out how to enable the switch in my kernel (or, if that is not possible in my case which is running a Live CD).