Installing BlitzMax 1.32/MaxGUI 1.32 on Ubuntu 9.0
Archives Forums/Linux Discussion/Installing BlitzMax 1.32/MaxGUI 1.32 on Ubuntu 9.0
| ||
Oops the should have said "Installing BlitzMax 1.32/MaxGUI 1.32 on Ubuntu 9.04" Yesterday I did a clean install of the newest versions of Ubuntu32/Ubuntu64 as a dual boot set up then load BlitzMax 1.32 and MaxGui 1.32. The packages required are basically the same as for 8.04/8.10. First make sure you have the your graphics card drivers installed or use the restricted drivers (System->Administration->Hardware Drivers). If you can't see and drivers listed it's most likely that you have a Intel graphics chipset or an older nVidia or ATI card and are using the MESA DRI driver. This may cause problems as many features may not be available using these drivers as they are open source (3D and GL acceleration is one). If you feel brave you could use the drivers supplied by the video card manufactures. These will be more recent than the restricted drivers, but can be a pain when things go wrong. If you successfully install these drivers make sure that libGL.so (found in /usr/lib or /usr/lib32 or both) is linked to the driver (it may link to another link that is linked to the driver). Note older cards may not be supported so you may have to use older drivers or the restricted drivers. Further on in the post is what addition packages will be installed using the following commands. In a terminal type For 32bit versions of Ubuntu sudo apt-get install gcc libxxf86vm-dev libglu1-mesa-dev build-essential libxft-dev For 64bit version of Ubuntu I don't know much about these packages listed below but I installed them before I ran the command line below and found that I didn't need to do any softlinks to the necessary libraries for BlitzMax to work on a 64bit install. ia32-apt-get ia32-libs-tools ia32-archive Note: found out a bit more on the above packages ia32-archive isn't necessary for BlitzMax to work. ia32-apt-get will automatically select ia32-lib-tools, build-essentials and gcc/g++ as ia32-apt-get relies on these. Edit: Found a better description of ia32-apt-get Ia32-apt-get provides wrappers for dpkg.deb and apt-get that allow installing deb packages from an i386 repository (or local file) directly. The apt-get wrapper handles mangling the Packages file from i386 during download so apt can use it and the dpkg.deb wrapper handles converting i386 debs to amd64 / ia64 during unpacking. Through this every i386 package in Debian (or other apt repositories) becomes available on amd64 / ia64 as well. In case of binary/data packages the package name remains as is while for library packages the name is prefixed with ia32- to allow both 64bit and 32bit flavours of libraries to be installed. Package updates become available to the user the moment they hit the archive without needing an extra upload or testing migration. NOTE UPDATE!: ia32-apt-get has a serious bug and as it's not supported by the canonical, so it wont be fixed in 9.04. But I have seen somewhere that it has been fixed, you just have to build it from source. It's safe for the time being to leave it out but the ia32-libs can not be updated with apt-get. If you have already installed it use apt-get or Synaptic and remove ia32-apt-get ia32-lib-tools. You will also have to remove the repositories that it installs (they have -i386 in them). This is one of the problems as you wont be able to update your system. I have removed the sudo apt-get install ia32-apt-get command from the list be low. sudo apt-get install ia32-libs sudo apt-get install gcc-multilib g++-multilib libxxf86vm-dev libglu1-mesa-dev libxft-dev During installing ia32-apt-get ia32-libs. You will see a window pop-up for postfix configuration. Read the options it gives you and use tab,space and enter to navigate and select the menus. If you don't know what to do select the first item in the list. For both Ubuntu 32/64bit If your using MaxGui you will need to add the package below. sudo apt-get install x11proto-xext-dev Mark lists libxpm-dev as one of the dependences, but it seems to run ok with out it. So if you have any problems with pixmaps it may be a good idea to install it. Additional packages that will be installed with... build-essential dpkg-dev g++ g++-4.3 libstdc++6-4.3-dev patch libxxf86vm-dev libpthread-stubs0 libpthread-stubs0-dev libx11-dev libxau-dev libxcb1-dev libxdmcp-dev x11proto-core-dev x11proto-input-dev x11proto-kb-dev x11proto-xf86vidmode-dev xtrans-dev libglu1-mesa-dev libgl1-mesa-dev mesa-common-dev libxft-dev libexpat1-dev libfontconfig1-dev libfreetype6-dev libxrender-dev x11proto-render-dev zlib1g-dev ia32-apt-get and ia32-libs bsd-mailx build-essential dctrl-tools devscripts diffstat dpkg-dev dput g++ g++-4.3 gettext ia32-libs-tools intltool-debian lib32asound2 lib32gcc1 lib32ncurses5 lib32stdc++6 lib32z1 libapr1 libaprutil1 libauthen-sasl-perl libc6-i386 libdevel-symdump-perl libio-pty-perl libio-stringy-perl libipc-run-perl libmysqlclient15off libneon27-gnutls libparse-debcontrol-perl libpod-coverage-perl libpq5 libstdc++6-4.3-dev libsvn1 libterm-size-perl libtest-pod-perl lintian mysql-common patchutils postfix subversion wdiff gcc-multilib gcc-4.3-multilib lib32gomp1 libc6-dev-i386 g++-multilib g++-4.3-multilib I had some issues with the display on the both versions of Ubuntu and it turned out to be compiz which I disabled as described below. Other video cards may not suffer these problems, but mine's an old ATI X1900 series and there are no upto date restricted drivers any more as AMD/ATI have made this series and some others legacy. There is one issue that I came across when building the Gui samples with MaxGui.. and that is compiz yet again. Turning desktop effects will not work. If you get an error like the one bellow X Error of failed request: BadMatch (invalid parameter attributes) Major opcode of failed request: 70 (X_PolyFillRectangle) Serial number of failed request: 314 Current serial number in output stream: 324 You will have to edit your xorg.conf file directly to solve this (there could be other ways than this). In a terminal type sudo gedit /etc/X11/xorg.conf and add to the bottom the code below, save and restart Ubuntu. Section "Extensions" Option "Composite" "false" EndSection I hope I haven't made any mistakes. I'm going to see if I can get Bruceys MaxGTK mod to fully work. |
| ||
I'm going to see if I can get Bruceys MaxGTK mod to fully work. the GTK module has issues with 1.32. I'm kind of working through them.... but some of the low-level stuff for events has changed a lot in BlitzMax... which messes some things up in the IDE. I've been using 32bit Jaunty since early March, and it runs BlitzMax as expected. Mine's an update from 8.10. Interesting to see it progress through Alpha - one day it would work... next update would break something... following update would fix that, but break something else... But it seems to be pretty solid now it's reached full release. The only issue I'm having is with some bugs in gcc 4.3 - which are fixed in gcc trunk, but will need to be released to ubuntu at some point - (breaks raknet compiling on Linux). |
| ||
the GTK module has issues with 1.32. Thanks for the warning Brucey as I would have spent hours banging my head against a wall trying to get GTK mod working on a 64bit distro. I've been using 32bit Jaunty since early March, and it runs BlitzMax as expected. Mine's an update from 8.10. Interesting to see it progress through Alpha - one day it would work... next update would break something... following update would fix that, but break something else... But it seems to be pretty solid now it's reached full release. I would have found that bl**dy annoying my self, but then someone has to test it so I don't have to worry about it crashing half way through compiling. The last time I used a beta of Ubuntu then upgrade to the release caused a major head ache with the repositories gpg keys, so now I just stick to the release. |
| ||
Thanks for the warning Brucey as I would have spent hours banging my head against a wall trying to get GTK mod working on a 64bit distro. GTK mostly works on 32bit - it's "just" that there a few issues at runtime, rather than wholesale broken-ness. Doesn't make it any easy for Brucey to sort out though! I would have found that bl**dy annoying my self Ditto. I've only just moved to 8.10, and will not be moving to 9.04 any time soon without a very good reason. |
| ||
I would have found that bl**dy annoying my self Well, I've got two development boxes (The new Linux box, and my Mac Mini), so I can happily work on either without major concerns. But it is nice to have both available all the time. What's nice with the quad-core Linux box, is just how fast everything works. If only bmk could build in parallel, a full rebuild of all my modules would take hardly any time at all - I have a plan for this though :-p 9.04 seems to be rock solid (for me) at the moment - if you ignore the gcc 4.3.3 issue (which of course you would have on 8.10 if you were to install 4.3.3...) GTK mostly works on 32bit - it's "just" that there a few issues at runtime I was half considering writing a wxMaxGUI wrapper, but then came to my senses, since I think I'd still have a hard time connecting the two Event systems. I should probably just port the IDE to wxMax and be done with it.... |
| ||
I was half considering writing a wxMaxGUI wrapper LOL. Would be technically nice, but not 100% convinced anyone's likely to make heavy use of it. |
| ||
wow oh my god finally blitzmax on 64bit arch, thank you so much !!! works perfectly |
| ||
dawlane, Just wanted to thank you for posting this. I had been struggling to get Blitz running on Ubuntu, but following your post did the trick. Thanks again! |
| ||
I should have done this a while back when I discovered it. NOTE UPDATE!: ia32-apt-get has a serious bug and as it's not supported by the canonical, so it wont be fixed in 9.04 and I can not see them supporting this in the future. But I have seen somewhere that it has been fixed, you just have to build it from source. It's safe for the time being to leave it out but the ia32-libs can not be updated with apt-get. If you have already installed it use apt-get or Synaptic and remove ia32-apt-get ia32-lib-tools. You will also have to remove the repositories that it installs (they hav i386 in them). This is one of the problems as you wont be able to update your system. |