C/C++ Command Line Linux Programming Ubuntu

fatal error: curl/curl.h: No such file or directory | Ubuntu 12.04

fatal error: curl/curl.h: No such file or directory

If you’re missing the curl/curl.h header file, chances are you’re just missing the correct dev package file for the curl library.

sudo apt-get install libcurl4-gnutls-dev

That should fix it.

Command Line HowTo Linux Ubuntu

fatal error: libconfig.h: No such file or directory | Ubuntu 12.04

If you’re getting the following error:

fatal error: libconfig.h: No such file or directory

Then you’re probably missing the libconfig-dev package from your system. Simply run the following command and it’ll fix it:

sudo apt-get install libconfig-dev
Linux Ubuntu

gimp: error while loading shared libraries: cannot open shared object file: No such file or directory

After upgrading from Ubuntu 11.10 to 12.04 I found gimp couldn’t access the shared libraries it needed, most likely an error with symbolic links as described by lovelyindia in this post.

Fix 1:

He managed to fix the issue by removing gimp and purging the offending libraries and then letting apt deal with the libraries when he re-installed gimp, as per the below commands:

sudo apt-get update 
sudo apt-get purge gimp libgegl* libbabl* 
sudo apt-get install gimp 
sudo apt-get clean

While this is likely to work for most people encountering this issue, it didn’t for me.

Fix 2:

Then I remembered I had used the repogen source list generator, in which I chose to include the gimp svn build. While you may not have gone about it the same way, you may also have a different repository in your sources.list file which is causing this issue, if the previous method did not resolve the issue.

In order to fix this, I had to open the sources.list file and comment out the offending repo.

sudo gedit /etc/apt/sources.list

Now search for any reference to gimp, in my case this was the lines I changed:

#### Gimp SVN -
## Run this command: sudo apt-key adv --recv-keys --keyserver 405A15CB
deb precise main

I commented out the line linking to the repo by adding a ‘#’ to the front, as below:

#### Gimp SVN -
## Run this command: sudo apt-key adv --recv-keys --keyserver 405A15CB
# deb precise main

I then uninstalled gimp, once I knew it may have been the newly added repository that I had added:

sudo apt-get purge gimp

Then I saved and exited the file and updated apt:

sudo apt-get update

I then re-installed gimp:

sudo apt-get install gimp

This solved the issue for me, I hope this helps!

Command Line Linux Ubuntu

Ubuntu 12.04 – Removing conflicting operating system files…

If you’re trying out the latest version of Ubuntu, 12.04 or Precise Pangolin and you want to keep your old /home partition, chances are you’ve come across the installation hanging on a process “Removing conflicting operating system files…”. No worries, this seems to be a common bug and there’s a pretty easy work around.

Continue with the installation, without asking for the /home partition to be mounted. Only set the root partition (/) and your swap space.

Once the installation is complete, reboot and load it up.

Now, you’ll want to find the partition that /home is mounted under, this will likely be /dev/sdxN, where x is the drive letter and N is the partition number (i.e mine is located under /dev/sda5).

If you’re unsure, you can list the possible drives using the following command:

ls /dev/ | grep sd

And then you can mount each drive under in a temp directory and check what’s in there:

mkdir temp
mount /dev/sda1 temp

Once you know which partition you want, it’s time to edit your /etc/fstab/

sudo gedit /etc/fstab

For those who don’t go digging around in the config files of linux, this may look pretty daunting, but it isn’t. All you really need to do is add a new line to mount your home partition. Here’s mine:

/dev/sda5	/home/		ext4	defaults	1	2

The first part is the partition that’s being used, next what the partition is. Next is the file system type. Followed by default options and then the dump and pass values.

Once you’ve saved this file with the appended line, reboot your system. Now you should find your old home partition is mounted normally and you can get on with your install.

Command Line Linux Ubuntu

Ubuntu 12.04 – Moving The Windows Buttons Back To The Right.

Those pesky windows buttons (maximise, minimise and close) default to the left of the menu bar after a new Ubuntu installations, and it’s been happening since 10.04. Most people, like myself, are stuck in our ways and just want them back where they belong. It’s pretty easy to do this, just open up a terminal (ctrl+alt+t) and copy in the following:

gconftool -s /apps/metacity/general/button_layout -t string menu:minimize,maximize,close

Once you hit enter, you should see the buttons return to their rightful place on the right, also in the right order.

Featured Linux Ubuntu

Toggle Touchpad With Keyboard Shortcut in Ubuntu

Install Jupiter

Instructions for Ubuntu 11.10, 11.04, 10.10, 10.04:

sudo add-apt-repository ppa:webupd8team/jupiter 
sudo apt-get update 
sudo apt-get install jupiter

Jupiter comes with a useful script to disable and re-enable the touchpad/track pad, it can be ran using the following command:

sudo /usr/lib/jupiter/scripts/touchpad

Now all you’ll need to do is add this command to a keyboard shortcut, below are instructions for several desktop environments.

In xfce:

Applications > Settings > Settings Manager

Click Keyboard

Click on the “Applications Shortcuts” tab.

Click Add:

Here you will be promped with a new window asking for the command you wish to run, enter the following:

sudo /usr/lib/jupiter/scripts/touchpad

Click OK and it will now ask for a keyboard shortcut. Simply press the key combination you want to assign to disabling the touchpad (for example, I used Alt+F1) the keys you’re pressing will show up and the window will close.

You’ll now see the command and shortcut in the list and you can now press that key combo to disable the trackpad and press it again to re-enable it.

In Gnome:

In Unity:

bish bash bosh.

Command Line Linux Ubuntu

Ubuntu 11.10 Proxy Settings

Temporary proxy:

Where proxy.addr is the proxy address, 4040 is the port number. Some proxies may require “http://” before the address.

export http_proxy="proxy.addr:4040"
export ftp_proxy="proxy.addr:4040"
export https_proxy="proxy.addr:4040"

If you run this in a terminal, any programs opened from that terminal will adhere to the proxy you set but any other applications will not. This makes it useful if you just want to launch a browser for a quick browsing session but don’t need the whole system to access the internet.

If you do need your entire system to access the network, you can add these to the bottom of “~/.bashrc” this will enable any new programs running and the whole system (after a restart) to use the settings. Essentially ~/.bashrc are commands run when a terminal is opened.

NOTE: If you do this, when you remove them your machine will likely need a restart to undo the changes.

Proxy with login

If your proxy server requires a login, this is an addition of the above however the syntax is as follows:


APT Proxy:

APT (used for system updates) has its own proxy settings, which seem to ignore the above settings.

Where nano is the editor, if you prefer use a graphical one such as gedit, kedit etc.

sudo nano /etc/apt/apt.conf.d/02proxy


Acquire::http::Proxy "http://proxy.addr:4040";

Source :

Linux Ubuntu

HP Pavilion dm1 (E-450/HD 6320) and Ubuntu 11.10

Wireless (BMC4313) Drivers:

There seems to be some issues with the current range of broadcom drivers, there are several options and some barely work and give very poor wireless signal and flaky connections.

Check you wireless card
lspci | grep Broadcom


03:00.0 Network controller: Broadcom Corporation BCM4313 802.11b/g/n Wireless LAN Controller (rev 01)

There are two options here:

Option 1

You should also be able to use the drivers in Additional Drivers, the “Broadcom STA proprietary wireless driver”, however before doing this you need to run these commands to install the required headers and tools as it seems this step was missed out:

sudo apt-get install build-essential linux-headers-generic
sudo apt-get build-dep linux

To check to see if you have this directory do this:

ls /lib/modules/`uname -r`/build

Now go to Settings > Additional Drivers and simply click install on the “Broadcom STA proprietary wireless driver”, reboot and you should experience much better wireless signal and connection stability.

Option 2

If this doesn’t work for you un-install those drivers and download the source drivers and build them from source and this works well, these can be found here:


Graphics (HD 6320) Drivers:

These can be found in Settings > Additional Drivers.

Install and reboot.

NOTE: This driver doesn’t account for sound over HDMI, the sound will continue to come out of the speakers. I’m looking in to a fix for this.

Fixing the “AMD Ubsupported hardware” Watermark:

You’ll probably now notice a watermark at the bottom right hand of the screen, reading “AMD Ubsupported hardware”. While the drivers are working away, they seem to think it’s unsupported. You can either remove the propriotry drivers and use the open source version. Or you can run the following script (found here) to remove it:


To run, either right click and save as on the link to “view raw” or copy and paste in to a file and save the file as “”

Make executable:

chmod +x


sudo ./

(Thanks to Andy pointing out in his comment, this needs to be run as root (I’ve added the sudo above).
Reboot your system and the driver will still be running but the watermark will be removed.

Linux Ubuntu

AL lib: pulseaudio.c:331: PulseAudio returned minreq > tlength/2; expect break up – Ubuntu 11.10

connect failed: No such file or directory
ndof: spacenavd not found
AL lib: pulseaudio.c:331: PulseAudio returned minreq > tlength/2; expect break up
Floating point exception

Download and install the associated package to your processor from here :

Restart your computer and the issue should now be resolved.

Arch Linux Fedora HowTo Linux Ubuntu

Heat Management in Linux

When you first switch from Windows or OSX to Linux, one of the things you’ll probably first notice (especially if you’re using a laptop) is that it can run considerably hotter than the alternatives. There are a few things you can do to remedy this, however. The following software packages help you keep track of and cool down your laptop/netbook, how much will depend per machine but my HP Pavilion dm1 goes from around 60-70degrees without these tools installed to around 50-60degrees and the same goes for my older Acer Travelmate which dropped from 70-80degrees to 60-70degrees. Hopefully this information will help you shave off 10degrees from your laptop, making it cooler, easier to use and hopefully extending its life a little too!


First thing that you’re going to want to do is be able to see what the temperature readings of the components (that have temperature sensors) inside your computer/laptop. This can be done by installing lm-sensors:

sudo apt-get install lm-sensors

Now you’ll want to run the script which probes all the possible sensors in your laptop:

sudo sensors-detect

You’ll be asked if you want to scan for sensors and what not, follow the on-screen instructions, mostly just pressing enter, if YES is written in capitals this is the default answer and it will scan. After several times it’ll ask you if you want to save the changes, make sure you do and then you’re done.

Now you can see the temperature the sensors are reading by using the following command:


cpufreq is a utility which scales the frequency of the CPU, either by monitoring the systems status (if it needs more, it’ll get more) or by user controlled settings. This essentially underclocks the CPU while it isn’t in use, reducing power usage and thus heat.


sudo apt-get install cpufreq

The best choice would be to set cpufreq to on-demand (default) or to power-saving. Alternatively, if you’re using a laptop or netbook let jupiter take care of it for you:


Jupiter is a light weight power and hardware control applet for Linux. It is designed to improve battery life of a portable Linux computer by integrating with the operating system and changing parameters of the computer based on battery or powered connection.

Additionally, Jupiter provides quick access to some of the commonly needed hardware controls like screen output and resolution, WIFI, and bluetooth.

If you use Linux on a portable computer, let Jupiter take the effort out of going mobile.

By using this to intelligently control the CPU frequency when on battery and AC along with the tuning to the kernel and hardware, it can make a huge difference to the temperature expelled by your laptop.

Ubuntu 11:10 installation instructions: here

Graphics Card Drivers

If you have a dedicated graphics card in your laptop, you’ll also be better off installing the proprietary graphics drivers provided by the hardware vendor. While the open source ones do an awesome job of getting the card to work, more often than not they don’t include any control over the frequency scaling and keep the card running at max, along with all those other little features the card has, they’ll probably all always be running.

Nvidia : Link
ATI/AMD : Link