BlitzMAX and Linspire 5.0

Archives Forums/Linux Discussion/BlitzMAX and Linspire 5.0

computercoder(Posted 2005) [#1]
Hello everyone!

I am new to BlitzMAX, and have followed Blitz Research from the days of BlitzBasic.

I finally pulled out the green and purchased this fine product from Blitz Research Inc! I must say IT IS GREAT! (uh... I have used only the Windows version with a full compile, but the Linux edition is much the same!)

That said. Now to the point.

I have been a Lindows/Linspire user for several years, and this document is for users of Linspire 5.0 (I am unsure what would happen in 4.5, as 5.0 is a major upgrade -- new kernel! I am guessing BM would still need the same packages, and you could still install all what is required under the older kernel). I Purchased BlitzMAX to finally create X-Platform programs, where the commands will work the SAME on each platform (Windose, Mac OS-X, and Linux), usually resulting in minimal code changes (if ANY)

The same problem keeps arising with different distros "What packages are required for BM to run on their distro?" Hmmm...

Although I cannot answer this at the moment, I am working on the Linspire distro, which should relate to ALL Debian based systems, if not most major Distros. Linux is all based on the same Kernel, just a different version/revision. 2.4.x, 2.6.x, etc. Mainly, those are revisions with added technology advancements built into the Kernel (2.4.x was USB, and some other goodies, 2.6.x improved it,and so on)

Having noted what Mark Sibly went through, and everyone else, I would like to add my experience thus far. What a ride it has been!

First, and foremost, I have YET to get BlitzMAX to fully build and run a program (even though it says it compiled, but I never see a thing). Also, remember, Linspire uses STABLE releases and CNR follows suit. Realize that you can by-pass all the nice Linspire appeal, and do things the traditional Linux way :)

1) If you ARE a CNR member, DO NOT use the "X11 Development Library". It is OLDER than what is required. This is version 6.8.1 STABLE <g>, and Mark is using the UNSTABLE version of 6.8.2

2) Use the Debian website, and pull out the latest X11 development libraries. At this point, I am still trying to get the X11 Development Library off my box.

3) Linspire is built rather intuitively for which GFX drivers to install. nVidia is what I use, and it already installed all the necessary drivers for GL, GLU, and configuring the xorg.cf... I am not sure that you really need *any* mesa drivers unless your card is that generic.

4) Linspire, as well as Debian itself, uses the new X-org wrapper to XFree86, and not the XFree86 itself. So if you must play with the config file, use the /usr/X11R6/lib/X11/config/xorg.cf


Here's the list of what I see so far that was upgraded:
gcc
g++
gobjc (3.3)
X11 Development Library (using CNR, like I said, DO NOT use this, go to the Debian website)
This package contains all the stuff you need, but an older 6.8.1 version.

The list as described by mark Sibly for the X11 stuff:
libx11-dev (6.8.2-10)
libxext-dev (6.8.2-10)
libxi-dev (6.8.2-10)
libxkbfile-dev (6.8.2-10)
x-dev (6.8.2-10)

The the GFX stuff, but I am unsure at this point is needed (unless you have a generic GFX card or one not supported in Linux for acceleration):
freeglut3-dev (2.2.0-8)
libglut3-dev (3.7-25)
xlibmesa-gl-dev (6.8.2-10)
xlibmesa-glu-dev (6.8.2-10)

Where I think the problem is that I am getting is maybe in the Mesa driver... as I think more about it. Here's my error I get when doing a 'Build and Run' in BlitzMAX:

[Start Output]
Building rockout
Compiling:rockout.bmx
flat assembler version 1.52
6 passes, 113037 bytes.
Linking:rockout
Executing:rockout
/home/dan/BlitzMax/samples/hitoro/rockout: symbol lookup error: /home/dan/BlitzMax/samples/hitoro/rockout: undefined symbol: XF86VidModeGetAllModeLines

Process Complete

[End Output]

I am working on a new freshly built PC with Linspire 5.0, sooooo... I will retry all this with nothing on it, as this PC has been morphed over the years with Lindows/Linspire.

This is where it stands now. I am hoping to get the process for nailing down what should go with the "complete" usage of Linspire and BlitzMAX!

If anyone has suggestions, ideas, or corrections, please post a message!


computercoder(Posted 2005) [#2]
I did some more research, and apparently something is still missing from the X11 system. I re-did BlitzMAX from scratch, starting with fresh downloads for both 1.09 and 1.10.

I installed 1.09, then updated it with 1.10, Syncronized the modules, then did a Rebuild Modules.

Once I did the Rebuild Modules, I was faced with an error of something to the effect that a header file could not be located, and was found in the X11/extensions, referencing a gl header (I am not at my Linux PC at the moment, so I can't give the actual error message it is still displaying). My guess is that I am still missing an x11-dev something package (x11-dev_ext??) This is why I get the error in the previous message I posted above. I will try locating the missing package, install it, then report back with my progress. Hopefully, I can establish how to build a working BlitzMAX Linspire 5.0 distro! :)


Craig Watson(Posted 2005) [#3]
Thanks for doing this, it will probably help out quite a few people.

And also, I wouldn't touch Linspire with a 40 foot pole, so I'm glad someone else is looking at it :P


computercoder(Posted 2005) [#4]
Linspire is the Windose look alike but upon a solid foundation :)

I realize it could be more beneficial to use another Distro, but since I PAID for this one, I am gonna use it!

No problem helping others out! Thats really the point here :P

I may even brach out and build some other PCs and put other distros on them, and do the same with each for BlitzMAX.


Craig Watson(Posted 2005) [#5]
Generally you will need all of the Mesa stuff installed, at least for ATI cards, as they don't include a full set of headers.

If you can post the exact error message I might be able to help, as long as you're using Debs.

You can try http://www.debian.org/distrib/packages#search_contents and look for the specific file too.


computercoder(Posted 2005) [#6]
I have nVidia GeForce 4 MX cards. They are all set, and don't need any Mesa drivers (as nVidia built their own GL drivers for them).

The error I am getting is the X11/extensions/xf86vmode.h is missing (when I am re-building the modules), which indicates that the X11 development extensions package is missing. I looked in the directory, and none there! The folder doesn't even exist!!

I am assuming that I will need the dev and runtime extensions packages... Any thoughts there?


Craig Watson(Posted 2005) [#7]
Look for something like xlibs-dev or xlibs-static-dev. It might also be in libxxf86vm-dev.


computercoder(Posted 2005) [#8]
Ok. I'll give it a try...


BlitzSupport(Posted 2005) [#9]

undefined symbol: XF86VidModeGetAllModeLines


From my Googling around, there does seem to have been a missing xf86vmode.h in Debian at some point. Apparently it's part of libxxf86vm-dev, but don't quote me on that.

Someone had a similar problem in Debian here and got it fixed, so that might be of some use (using xlibs-dev as Craig mentions).


skidracer(Posted 2005) [#10]
Any software that enables you to go full screen at a specific resolution will require xf86vmode.h to build it I think.

It might be worth trying something like the crystal space package as it might have such an ability and include / install the correct dependencies for you.

http://www.linspire.com/lindows_products_details.php?product_id=1021


Craig Watson(Posted 2005) [#11]
I don't think it was missing, I think they just changed the package it was in.

It used to be xlibs-static-dev, but now (I think) it's in libxxf86vm-dev. Or it may be the other way round. Perhaps there's some Debian expert around here that can confirm that.


computercoder(Posted 2005) [#12]
SUCCESS!!!! well... It compiles and runs, but... NO SOUND.

I get the message "linuxaudio failed", so I double-checked the libsdl1.2-dev package, and it states its in there... Any other thoughts? Reference ion my Hardware: SoundBlaster 16 PCI, and works under Linspire just fine. (Its one of the o'le reliables!)

1) Just to let everyone know, I started EVERYTHING, down to rebuilding Linux with a fresh build, yes using Linspire 5.0...

2) Installed BlitzMax109, then did a "Rebuild All Modules" (which allowed it to use the system headers), and closed BlitzMAX.

3) Extracted BlitzMax110, opened the folder and copied everything to BlitzMax109 folder, Auto-Skipping when asked. (These were empty folders... /svn)

4) Opened BlitzMAX and did a "Syncronize Modules..."

5) Followed that with "Build Modules", again using the system headers

6) I loaded rockout, and did a Build and Run... AND FOR THE FIRST TIME IN LINUX... (drum roll here) Full Screen colorful madness of rockout came to life!!!

Simply Awesome site to see after a few weeks of messing around with getting it to run under Linux.

I am planning on making a Public Aisle in Linspire's CNR for BlitzMAX installation.

I am also gonna make another entry to this Post later with the process of how to get the distribution to work with the tools CNR provides.

I appreciate ALL help everyone in this forum and particularly this topic thread has afforded to me. :-) THANKS!


computercoder(Posted 2005) [#13]
I was wrong about the Mesa issue with nVidia... turns out they work in conjunction with each other. I am now confused with this since previous distros I used did state (IE RedHat, Mandrake, SuSE - even nVidia's installation readme) it was either nvidia drivers OR mesa. I guess times have changed? Either way, I learned something new tonight.

I have written up the HOW-TO for installing BlitzMax in Linspire successfully (excluding sound, as I am still stumped here with that - maybe I need to do something in the config files for sound?)

My question is do I post that file here, or should Support take it and place it where they'd like it? Its quite long, but well documented process. I am going to make some touch-ups first to it before I release it.


LarsG(Posted 2005) [#14]
I did get the no-sound problem on one of the distros I tried, when I was testing different distros with BlitzMax (and also to test which one I liked best).
I did get it resolved however, with the help of someone on the #blitzbasic channel on IRC..
The bad thing, is that I can't for the life of me remember what it was that I did..

I *think* it might have something with (re)installing the alsa driver, or something along those lines..
(it might be it was one of the other sound systems as well.. :/)

anyways.. someone on this forum might know how...

oh, and thanks for making the how-to.. I bet it'll come in handy for others running Linspire...


computercoder(Posted 2005) [#15]
Thanks for that tid-bit :) I will search around and see whats going on with it.


BlitzSupport(Posted 2005) [#16]
The sound problem was covered here -- worked for me, anyway!


Craig Watson(Posted 2005) [#17]
You might also want to check if you're running a sound daemon, I think Linspire uses KDE so that would be arts, or if it's Gnome it's maybe esound. Either way it could be conflicting with sound playing in some programs.

You can try doing "killall esd" from a console window for esound, or "killall artsd" for arts. See if this makes any difference.

There are also ways to disable these through control panels/control centre if you're worried about using a console.


computercoder(Posted 2005) [#18]
Console is not a problem! I use it when the GUIs frustrate me anyways! I'll check this out Craig.

From the looks of it, I should be hearing all sorts of sounds soon! :-)

Thanks James for the link to the sound module fix!


computercoder(Posted 2005) [#19]
Tested just about every possible means of changing that driver and the sound server... CANNOT get outta "Jack Audio Connection Kit" within KDE's sound system configuration tool.

Is there another way to change the server type from console?


skidracer(Posted 2005) [#20]
If you are using KDE there is an option somewhere (gui based desktop config thingy) that says how long it will hold onto the audio system after using it, setting this to 1 second instead of the bizarre default should allow non KDE apps access to the audio hardware.

After a quick google you should be looking to "reduce the artsd timeout in kcontrol".


computercoder(Posted 2005) [#21]
sweet! I will try it out :-)


computercoder(Posted 2005) [#22]
FINALLY! I have SOUND!

Last night I got Linspire configured to support sound outside the JACK system. Actually, I used a Plugin for alsa.conf, and redirected the sound into the JACK sound system. Everything runs great with NO latency issues!

I am working on the completion of the HOWTO for Linspire and BMax. I should have this file complete tonight.

If you are using Linspire, and would like a copy of the file, please send me an email. Just click on my name above, and use the email listed there. Preferably, reference in the subject about "Linspire BlitzMax HOWTO", this way I will know exactly what you are looking for :-)