Take the 2-minute tour ×
Ask Ubuntu is a question and answer site for Ubuntu users and developers. It's 100% free, no registration required.

In summary I am quite new to Linux, but have the task of writing some software. The software has to run on a particular hardware board and the manufacturers of this board have provided a custom build of the kernel that I am guessing is non standard. I have managed to install Ubuntu 8.04 onto a compact flash card on this board, and applied their kernel modifications. Now when I go to install g++ using

    sudo  apt-get install build-essential

I get an error

    E: Couldn't find package build-essential

I have seen this error in other questions, and I am not asking here why I get this problem but I do want to know if it would be safe for me to update my version of Ubuntu to a more recent version and then apply the vendor kernel modifications. The vendor kernel is labelled by them as 2.6.30 so would it be safe to apply this on a version that has a 3.2 kernel version? If I cannot install g++ it will not be safe for me to develop an application but I simply do not know enough about the inner workings of linux to know the effects of using a newer version and applying the vendor kernel modifications.

share|improve this question
add comment

3 Answers

up vote 0 down vote accepted
+50

Unpack the *.deb file containing the modification to see in what form the module is distributed. Also have a look at the content of the other package and see what files are shipped there. If some files are precompiled modules for a specific kernel version (*.ko files), then those modules will almost certainly fail to cooperate with a more recent kernel, and updating Ubuntu without updating the kernel is asking for trouble as well.

If, on the other hand, the kernel modules are distributed in a source format (*.c), perhaps containing some binary blob, then the deb package will likely use dkms or similar to have modules compiled for the current kernel, and the shell script might do some compilation for the current kernel as well. In those cases, you should see whether the modules do compile against the sources of a current Ubuntu kernel. You should be able to compile them on a test system, not using the target hardware just yet.

If they do compile successfully, chances are good that they will run as intended, although there are of course no guarantees. If they fail to compile, you can see whether you can locate a kernel version recent enough to support an upgrade but still old enough to be compatible with those modules. Or you could adjust the module sources to take kernel API changes into account.

share|improve this answer
    
OK I unpacked it and tried find . -name '*.c' which returned nothing but find . -name '*.ko' returned a huge list. What I dont understand is that the vendor .deb package says it is compatible with 8.04 and 9.04 and 10.04. I am only using 8.04 because this is the only .iso installation disc that would work installing onto a compact flash card. I think i might just give up and use DOS. –  mathematician1975 Jun 22 '12 at 11:21
    
If the vendor claims compatibility with multiple versions of Ubuntu, then it will ship modules for multiple kernel versions. You should see files /lib/modules/<kver>/**/*.ko for multiple values of kver, so you can see which kernels are supported. If installation onto a cf card fails due to size limitations, you might want to have a look at debootstrap. That will allow you to use a normal ubuntu setup to create a stripped version for cf. squashfs might help to keep the fs size down. Anything hardware that works with DOS should not require exotic kernel changes imho. Can you give details? –  MvG Jun 25 '12 at 10:30
    
I have actually received a copy of the .iso image that the vendor uses for ubuntu 10.04. If I were able to install this my problem would essentially be solved. Unfortunately this install also fails so I think that what I am going to have to do is lean on the vendor some more - if they want my company's custom they will have to help some more. I will take a look at debootstrap. Your final sentence is unclear to me? What specifically would you like me to give details of? –  mathematician1975 Jun 26 '12 at 6:33
    
Details on what this special module is, who is distributing the driver for it, can the iso image you mention be found on the web, could it be that drivers for the device in question are included in recent mainline kernels, where would you obtain a DOS driver for it. Stuff like that, so those who want to come up with answers know what we are dealing with. You might also want to be more specific on the “install also fails” point, or turn that into a separate question. –  MvG Jun 26 '12 at 6:46
    
OK. The hardware in question is found here dmp.com.tw/tech/vortex86dx This is where I get the vendor *.deb kernel modification package from also.This vendor also supplies DOS drivers which is where I would be getting them from. As for the failed installation of 10.04, all I get is "A unrecoverable error has occurred" right about the 78% completed updater progress bar. –  mathematician1975 Jun 26 '12 at 8:17
show 4 more comments

The minimal kernel required for Ubuntu 12.04 is 2.6.24

Ubuntu 12.04 should install and run successfully on any kernel that is newer than 2.6.24. The root cause of this requirement is the libc libraries shipped with 12.04 -- libc is the basis on which every single Ubuntu binary/library depends. This requirement can be bypassed too.

For 10.04 (or newer), your manufacturer requires you to use a special 2.6.34 kernel

You must use the special 2.6.34 kernel DMP supplies here, which is required to install Ubuntu 10.04 (or newer, if possible).

This fact is made perfectly clear on their support page:

enter image description here

Can you use the 2.6.34 kernel with Ubuntu 12.04?

I see no reason why you can't. DMP's FTP directory provides the kernel source as well as all patches. Of course, no one without a Vortex86DX/SX can confirm if it will work out of the box, or what you will need to make sure it works.

I very much doubt the manufacturer is going to hand you official 12.04 support on a platter since they seem to be having problems even with 10.10 and are stuck on 10.04. Unfortunately, that's how proprietary embedded hardware often is.

share|improve this answer
    
Thanks for your reply. I believe that the kernel mod is extra drivers for hardware. I dont think I will be able to get explicit details of their changes but I will try. The mod is in the form of a .deb package provided by the vendor which requires unpacking and dpkg -i xxx.deb , update-initramfs –k 2.6.30-vortex86mx -c, update-grub. –  mathematician1975 Jun 22 '12 at 8:18
    
There is also a vga driver that is installed using a install.sh script. –  mathematician1975 Jun 22 '12 at 8:19
add comment

I do not know of official sources, but from 3.2 to 2.6 kernel versions there is a huge leap. If you install an Ubuntu 12.04 on that board and then apply a 2.6 kernel on top of that you will surely run into incompatibility issues (hardware and software wise, libraries, etc). Essentially you might end up with a barely usable system. Newer versions of ubuntu rely heavily on the latest kernel developments.

Looks to me that you have a problem with your DNS server configuration in your 8.04 version. If you fix that you should be able to install build-essential without any issues.

Run

sudo apt-get update

and check what the output tells you.

If you do have internet connection, then you can go here: and download the .deb package of build-essential for ubuntu 8.04.

share|improve this answer
    
I did what you suggested - I basically get a multitude of errors all along the lines of "Failed to fetch "htt_p://XYZ" ". A common error is "Could not connect to gb.archive.ubuntu.com:80 - connect (113 No route to host)". Presumably this is because this version is no longer supported. Thanks for the suggestion anyway. –  mathematician1975 Jun 21 '12 at 16:14
    
Do you have internet connection at all? Can you google 'ubuntu' for instance? Looks to me that is a problem with DNS address in your router. –  leousa Jun 21 '12 at 17:05
    
You can also try this: Open a terminal (CTRL+ALT+t) and type: ping ubuntu.com –  leousa Jun 21 '12 at 17:11
    
Yes definitely have internet connection. –  mathematician1975 Jun 21 '12 at 18:25
    
you did not reply to any of my comments. Can you open firefox and google for ubuntu? Sorry to insist, but it looks to me that you have some internet issues from your apt-get update output. –  leousa Jun 21 '12 at 18:30
show 4 more comments

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.