I now have kbasic installed and working on Ubuntu 8.04. It was a little tricky because of some design quirks in Ubuntu, but once I figured out what was going on, I was able to deal with it.
First, if you have installed version 8.04 from scratch or as an upgrade from an earlier version, you are also going to need the alternate CD installer version on CD. If you need to add something, then you will be asked for this CD (although it does not use the word "alternate", it does use its numbered reference).
You will likely have to install the Qt4 package. I was shown a link that was written for Ubuntu 7.10 that used the sudo mode in a terminal console window: sudo apt-get install libQt4-sql
. The link claims that this worked for 7.10, but I ran into a problem with 8.04. But do it anyway, as you can resolve the problem going forward.
There are two current versions of kbasic for Linux right now: 1.6 Trial, and 1.69 Beta. They are also working on version 2.0, but that is not currently available. What you get will be a file named something like this: installer_kbasic_professional_linux.bin
(the name may vary in the future).
However, permission to execute it not automatic - you have to right click on the file. select properties, then under permissions you have to add a check in the checkbox to make it an executable. Even then Ubuntu does not know what to do with it. If you are using Kubuntu, which has the KDE desktop environment rather than Gnome, they suggest you do this:
Make the installer file executable with the Konqueror (right click) and run it with the Konqueror (left click).
However, you can get the same results in Gnome by opening a Terminal Console and entering the sudo command, and calling the executable file directly like this:$ ./installer_kbasic_professional_linux.bin
kbasic will install itself. But it may not work, and if it doesn't, then this points up the other problem with Ubuntu: restricted user access.
If you did the install of Qt4 as described above, you should be ready to go. But the installer may not put the contents of this package where they need to be for kbasic to use them. There are two general solutions to this problem: Create symbolic links where they need to be to point to where they actually are, or to move (or copy) them to the right location.
I asked the people at kbasic about what their product was looking for, and the directed me to this link: http://www.kbasic.com/doku.php?id=installation
. At the bottom is a list of all the libraries that kbasic requires to run. I took this list, and using the Places/Search for Files, and designating the File System as where to search under Look in folder, I found all occurances of each one. The arrows show where kbasic expects to find each file, and of course the search shows where they actually are. Here is the list I copied from their web site, and what I found when I went through it trying to make sure all files were on board and properly situated:
If your PC does not show anything after clicking on the installer file, your system does not match the requirements or has not installed all needed software in the right location as Linux Standard Base (LSB) defines it!
Dependencies are (shared libraries, which you must have installed on your system):
libqt-mt.so.3 ⇒ /usr/lib/libqt-mt.so.3
libXft.so.2 ⇒ /usr/lib/libXft.so.2
libQtSql.so.4 ⇒ /usr/lib/libQtSql.so.4
libQtGui.so.4 ⇒ /usr/lib/libQtGui.so.4
libpng12.so.0 ⇒ /usr/lib/libpng12.so.0
libSM.so.6 ⇒ /usr/lib/libSM.so.6
libICE.so.6 ⇒ /usr/lib/libICE.so.6
libXi.so.6 ⇒ /usr/lib/libXi.so.6
libXrender.so.1 ⇒ /usr/lib/libXrender.so.1
libXrandr.so.2 ⇒ /usr/lib/libXrandr.so.2
libXfixes.so.3 ⇒ /usr/lib/libXfixes.so.3
libXcursor.so.1 ⇒ /usr/lib/libXcursor.so.1
libXinerama.so.1 ⇒ /usr/lib/libXinerama.so.1
libfreetype.so.6 ⇒ /usr/lib/libfreetype.so.6
libfontconfig.so.1 ⇒ /usr/lib/libfontconfig.so.1
libXext.so.6 ⇒ /usr/lib/libXext.so.6
libX11.so.6 ⇒ /usr/lib/libX11.so.6
libQtCore.so.4 ⇒ /usr/lib/libQtCore.so.4
libz.so.1 ⇒ /lib/libz.so.1
libpthread.so.0 ⇒ /lib/libpthread.so.0
libdl.so.2 ⇒ /lib/libdl.so.2
libstdc++.so.6 ⇒ /usr/lib/libstdc++.so.6
libm.so.6 ⇒ /lib/libm.so.6
libgcc_s.so.1 ⇒ /lib/libgcc_s.so.1
libc.so.6 ⇒ /lib/libc.so.6
libXdmcp.so.6 ⇒ /usr/lib/libXdmcp.so.6
libXau.so.6 ⇒ /usr/lib/libXau.so.6
libexpat.so.1 ⇒ /usr/lib/libexpat.so.1
ld-linux.so.2 ⇒ /lib/ld-linux.so.2
In checking through this list on my install of Ubuntu 8.04, I found the everything was in place, excep libQtGui.so.4, the fourth entry down from the top. That was in a folder set up under the folder I had added to handle Downloads. So the path from my home folder was Download/qt4-x11-4.3.4, and there were debian, etc, and usr.
The only subfolder contents you are concerned with is usr. You want everything in usr to be copied to /usr.
Now here is the tricky part. If you use this as a command in sudo mode, cp -r usr/* usr, you might get the result that I did, which is that instead of going into /usr, the cp command set up a folder Download/usr and copied the contents there. Adn that did not work.
Apparently, even in sudo mode, Ubuntu does not want you writing into the root folders using cp. To get around this, I positioned into the root folder that I wanted to copy into and posted the copy command this way:
cp ~/Download/qt4-x11-4.3.4/usr/* .
Not that the period at the end of the cp command specifies the current folder as the destination. This is implied in DOS, but mandatory in Linux.
After that, I was able to get the kbide to start right up.
A problem with 1.6 on Ubuntu is that it adds three links to the desktop, and these are all locked - Gnome cannot determine the permissions assigned. Since it cannot determine the permissions, you can't change them here either. Again, this type of problem has to be fixed via the superuser mode and a Terminal Console screen. The kbasic folder may be locked, so enter the termnal mode and use this command:
chmod 777 kbasic
Then you want to make sure the links on the desktop are also cleared of their locked state:
dir [use toolbar Edit to copy results to clipboard]
chmod 777 [use shift+insert to past resutls to command line]
And that should do it. The kbasic link should now open the kbide (kbasic IDE) for you at this point.