Author Topic: FS2_Open Linux Mini Howto  (Read 69200 times)

0 Members and 1 Guest are viewing this topic.

Col.Fishguts, AFAIK, Knoppix is a Debian mixup right? could you, sometime, perhaps, look into the possibilty of making a FS2 disk with Knoppix, without a GUI, and just running FSO?
that would let me play FS2 at school, and mkae me very happy.
just another newbie without any modding, FREDding or real programming experience

you haven't learned masochism until you've tried to read a Microsoft help file.  -- Goober5000
I've got 2 drug-addict syblings and one alcoholic whore. And I'm a ****ing sociopath --an0n
You cannot defeat Windows through strength alone. Only patience, a lot of good luck, and a sledgehammer will do the job. --StratComm

 

Offline Col. Fishguts

  • voodoo doll
  • 211
Actually, I don't know...I tried Knoppix out only once.

But I like your idea...an all-in-one-boot-OS-FSO-CD ;7

Though, you might run into problems, if you want to get OGL to wirk platform independent...and you sure had to forget about hi-res graphics, because on 1 CD with Knoppix on it you wont have enough space for all the FS stuff.
But definitely a good idea...but first I've got to get this thing to compile properly
"I don't think that people accept the fact that life doesn't make sense. I think it makes people terribly uncomfortable. It seems like religion and myth were invented against that, trying to make sense out of it." - D. Lynch

Visit The Babylon Project, now also with HTL flavour  ¦ GTB Rhea

 

Offline bKtHeG

  • 25
    • http://www.rtk-games.net
I have no real idea why compiling fails on opengl.o - Only to thoughts:
1. Perhaps gcc 2.95 is not the best choice (even if it is very good - it is outdated)
2. You should check the versions of your opengl-libs an weather you can find the function or not

Knoppix:
Knoppix is debian-based but not exactly debian.
The main problem should be the gfx-card support. I don't think knoppix is optimized for games and includes everything that is necessary.
Regarding the size: You can use a dvd (I think there also was a Knoppix-version on dvd (not as iso))

 

Offline Col. Fishguts

  • voodoo doll
  • 211
Quote
Originally posted by bKtHeG
I have no real idea why compiling fails on opengl.o - Only to thoughts:
1. Perhaps gcc 2.95 is not the best choice (even if it is very good - it is outdated)
2. You should check the versions of your opengl-libs an weather you can find the function or not
 


1. OK, I switched to g++-3.0, but the compile error still occurs

2. If I read the error message correctly, then g++ stumbles upon  "glCompressedTexImage2D" the first time in gropengl.cpp, while it should be defined somewhere in a .h header. Shouldn't that be in one of the headers of the FSO source ?
Or should it be included from one of my OGL libraries ? if yes, where should I search for it, to look, if I have it or not ?

EDIT: Since I'm too stupid to get it to compile....could someone who has a working binary pleeeze put it up for download somewhere ?
(and sorry for my n00b'ness, it's been a while that I did something in C++)
« Last Edit: November 05, 2003, 06:30:28 am by 1445 »
"I don't think that people accept the fact that life doesn't make sense. I think it makes people terribly uncomfortable. It seems like religion and myth were invented against that, trying to make sense out of it." - D. Lynch

Visit The Babylon Project, now also with HTL flavour  ¦ GTB Rhea

 
Quote
Originally posted by bKtHeG
[BKnoppix:
Knoppix is debian-based but not exactly debian.
The main problem should be the gfx-card support. I don't think knoppix is optimized for games and includes everything that is necessary.
Regarding the size: You can use a dvd (I think there also was a Knoppix-version on dvd (not as iso)) [/B]


i got FS2 without cutscenes and some stuff rarred down to 500MB, and unrarred it's 900 with music and voice and hi-res texes. you can kill everything but the OS, and AFAIK you'd have a lot of space left over.

as for technical problems, i wouldn;t know. i can barely use the RH GUI, and i can't even make out these instructions, i am mister stupid under linux.
just another newbie without any modding, FREDding or real programming experience

you haven't learned masochism until you've tried to read a Microsoft help file.  -- Goober5000
I've got 2 drug-addict syblings and one alcoholic whore. And I'm a ****ing sociopath --an0n
You cannot defeat Windows through strength alone. Only patience, a lot of good luck, and a sledgehammer will do the job. --StratComm

 

Offline taylor

  • Super SCP/Linux Guru
  • Moderator
  • 212
    • http://www.icculus.org/~taylor
Is there a todo list of things I can start going over in an effort to help?  I added the support to the icculus.org project for two roots (${HOME}/., and the install dir) and getting that support into FSO should be simple enough.  Depending on what you've got for osregistry having the ini settings automatically written with defaults should be easy as well.  I ported (not much to it really) the original osregistry-unix stuff to CFILE in order to automatically use root[0] which in this case is in ${HOME} so if that's what you're using it will be simple.  I downloaded the tarball so I'll take a look but if there is anything specifically that needs help first please let me know.  Is there anyone in particular to send patches to?

Also, I ported cfilearchiver and added a couple of smarts to it so that I could make VPs without the need for Wine or anything.  If anyone is interested in that let me know.

 

Offline Bobboau

  • Just a MODern kinda guy
    Just MODerately cool
    And MODest too
  • 213
we can get you CVS write access and access to the internal forum if you realy want to help, I don't know what needs to be done off hand, but if you realy are going to help us this is gona be great :D
Bobboau, bringing you products that work... in theory
learn to use PCS
creator of the ProXimus Procedural Texture and Effect Generator
My latest build of PCS2, get it while it's hot!
PCS 2.0.3


DEUTERONOMY 22:11
Thou shalt not wear a garment of diverse sorts, [as] of woollen and linen together

 

Offline taylor

  • Super SCP/Linux Guru
  • Moderator
  • 212
    • http://www.icculus.org/~taylor
I definitely intend to help in any way that I can.  I don't think that CVS write access is needed at this point.  I'd rather just figure out what needs to be done and get familiar with the FSO code base since it's a bit different than the icculus.org stuff.  The current *nix support isn't in CVS yet, right?  Until that happens I think that just trading patches with someone would be plenty enough to get work done.

 

Offline taylor

  • Super SCP/Linux Guru
  • Moderator
  • 212
    • http://www.icculus.org/~taylor
The "brace-enclosed initializer used..." message is just bad code and has been fixed in icculus.org CVS already, just take the extra braces out.  Some gcc setups are just less strict than others so it gets passed without the error.  [little later] Of course it shouldn't be as bad as it is.  I'll have a look at this since it happens with a fresh install of Fedora Core 1 so if gcc is borked then it's officially borked.  The same code from icculus.org compiles fine on this system so something is wrong.

Why does PSNET_SOCKET_RELIABLE have a typedef of both int and uint in two headers?    Shouldn't it just be a uint a psnet2.h?

This is all from the 20030911 tarball so if there is something newer please let me know.

 

Offline bKtHeG

  • 25
    • http://www.rtk-games.net
This is the last version: here
(There is a newer one on my hd (--enable-debug is working) but the ht&l-opengl code is not working)

I know there are many things that are not very good code but I'm not an expert in gcc.

PSNET_SOCKET_RELIABLE: The whole net-stuf is still windows-only and therefore I didn't check the constants and types.

My todo:
- new version (ht&l)
- write a working audiostream-version (audiostr.cpp)
- find out why there are so many segmentation faults
- implement the rest of the opengl-functions (fullscreen for example)
- rewrite of osapi_unix.cpp (this is bad code)
- implement net-code

The whole code is still not in cvs because I don't have any access to it and nobody else commited it.
One question: could somebody please give me access to the internal forum. It would be a great help to understand what things are still under construction and what patches are commited (and what things are missing)
« Last Edit: November 07, 2003, 05:48:02 am by 1351 »

 

Offline Col. Fishguts

  • voodoo doll
  • 211
Ok, I've tried it out but now I get even more compile errors. All of them appear in gropengl.cpp

Code: [Select]
graphics/gropengl.cpp: In function `void
   gr_opengl_set_tex_state_combine_arb(gr_texture_source)':
graphics/gropengl.cpp:818: `GL_COMBINE_ARB' undeclared (first use this
   function)
graphics/gropengl.cpp:818: (Each undeclared identifier is reported only once
   for each function it appears in.)
graphics/gropengl.cpp:819: `GL_COMBINE_RGB_ARB' undeclared (first use this
   function)
graphics/gropengl.cpp:820: `GL_RGB_SCALE_ARB' undeclared (first use this
   function)
graphics/gropengl.cpp: In function `int opengl_create_texture_sub(int, int,
   ushort*, int, int, int, int, int, int, int, int, tcache_slot_opengl*, int,
   int)':
graphics/gropengl.cpp:3048: `glCompressedTexImage2D' undeclared (first use this
   function)
make[1]: *** [gropengl.o] Error 1


Well I guess I'm still missing some libraries, but I don't know which. This is driving me nuts... I've installed all OpenGL and SDL1.2 libraries I could find....what else am I missing ?!?

Any help would be very appreciated...
:confused:
"I don't think that people accept the fact that life doesn't make sense. I think it makes people terribly uncomfortable. It seems like religion and myth were invented against that, trying to make sense out of it." - D. Lynch

Visit The Babylon Project, now also with HTL flavour  ¦ GTB Rhea

 

Offline taylor

  • Super SCP/Linux Guru
  • Moderator
  • 212
    • http://www.icculus.org/~taylor
bKtHeG:  I had started working on the audiostr stuff for icculus.org but haven't gotten anywhere useful yet.  The only part of it that's working is the parsing function on load.  I'm using SDL_RWops so that makes it easy and the rather large part that's left is to plug in more of the OpenAL code and some utility functions for buffer mangagement and things like that.

With the icculus.org code I don't think that there was that much to getting the network stuff working.  Getting to work on OSX is another matter and has required a lot of work and it still doesn't work correctly.  I'll have a look at this and see what actually needs to be done.

I fixed/finished some of the OGL stuff a few months ago for i.o so I'll see what's still missing and try to pull as much as possible from there.  I have no idea what's envoled with HT&L at this moment but I'll look into it.  HT&L will probably be a project best suited for someone who's more familiar with how it all works though.  Is there anything in OGL that should take priority?

The CFILE stuff stuff and osregistry stuff is there so all that's really need is the osapi cleanup and default ini options added.  At first glance to osapi my thought was "WTF!?" so I'll see if I can clean that up a little bit ;)  How big of a deal is it to use threading now or can I just skip the threaded stuff for the time being and get the rest going?

I'll check out stability as soon as I get it to compile all the way.  Oh and for os_sleep() I had previously made a change to use SDL_Sleep() rather than usleep() because it was causing problems for people with NPTL enabled kernels.  I'll make that change here as well unless there are any objections.

 

Offline Goober5000

  • HLP Loremaster
  • Moderator
  • 214
    • Goober5000 Productions
Moved back to the main forum.

 

Offline taylor

  • Super SCP/Linux Guru
  • Moderator
  • 212
    • http://www.icculus.org/~taylor
Got it compiling fine with gcc 2.96 but not 3.3.2.  I'll work on that later.

Forget what I said about os_sleep(), I was thinking of Sleep() when I wrote that and you've already got that change.

 

Offline phreak

  • Gun Phreak
  • 211
  • -1
the ARB_COMBINE extension is used by shinemapping.  if you grab the latest glext.h it should be in there.

cvsroot/code/graphics/gl/
Offically approved by Ebola Virus Man :wtf:
phreakscp - gtalk
phreak317#7583 - discord

 

Offline Col. Fishguts

  • voodoo doll
  • 211
Ah, I see..
But I still get the error
Code: [Select]
graphics/gropengl.cpp:3048: `glCompressedTexImage2D' undeclared (first use this
   function)

..it's the same that I got with the tarball at the beginnig of this thread.

Does anybody know where this function comes from, or in which library it should be ?
"I don't think that people accept the fact that life doesn't make sense. I think it makes people terribly uncomfortable. It seems like religion and myth were invented against that, trying to make sense out of it." - D. Lynch

Visit The Babylon Project, now also with HTL flavour  ¦ GTB Rhea

 

Offline bKtHeG

  • 25
    • http://www.rtk-games.net
I don't have any concrete idea about glCompressedTexImage2D (remember: I know only little about opengl) but it should be part of opengl1.3 or opengl1.4
----

There is a new work-in-progress build: here

This build contains the last version of ht&l and is therefore not very stable. Also  there are a couple of functions that are not written at the moment (I placed empty ones in order to be able to run fs2 - You should be able to see tons of stub-messages).
This version also uses the species-update (to disable it: --disable-more-species but it should end in compile-errors)
I also added the command-line parameter -ng (no-grab) and the configure-option --enable-debug and fixed the "brace-enclosed initializer.." errors

to build it do the same as explained above but replace the ./configure ... command with the following:
./configure --disable-networking --enable-debug

One additional note:
The command-line options parser is not working in the correct way. It only supports one option at the time. Therefore "-ng -htl" won't work.
« Last Edit: November 08, 2003, 09:13:50 am by 1351 »

 

Offline Kazan

  • PCS2 Wizard
  • 212
  • Soul lives in the Mountains
    • http://alliance.sourceforge.net
disabling the species update sholdn't produce any compiler errors.....
PCS2 2.0.3 | POF CS2 wiki page | Important PCS2 Threads | PCS2 Mantis

"The Mountains are calling, and I must go" - John Muir

 

Offline taylor

  • Super SCP/Linux Guru
  • Moderator
  • 212
    • http://www.icculus.org/~taylor
bKtHeG:  Can I send any patches to you or just upload them somewhere and PM you the location?  Right now I've added a couple of little things (to 20031108):

- create userdir
- add the OGL fullscreen and minimize stuff
- automatically create ini with default video setting of 640x480
- fix bug in ds_do_frame that would segfault if sound is disabled
- look for cmdline.cfg in userdir and then gamedir if not found

The bug in ds_do_frame shouldn't be Linux specific so I didn't #ifdef it.  Also I didn't have a problem with the species stuff, just added a new line to the header and it stopped complaining.  I'll have a look at the cmdline parser if you haven't already fixed it.

 

Offline taylor

  • Super SCP/Linux Guru
  • Moderator
  • 212
    • http://www.icculus.org/~taylor
It probably would have been a good idea to look at the parser before posting. :D

It was just chopping off the last two characters.  Changing "arglen += argc - 2;" to "arglen += argc + 2;" fixed the problem and all is well now.