FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Linux Version

 
Post new topic   Reply to topic     Forum Index -> Derelict
View previous topic :: View next topic  
Author Message
JJR



Joined: 22 Feb 2004
Posts: 1104

PostPosted: Thu Jul 22, 2004 2:09 pm    Post subject: Linux Version Reply with quote

We really need to a linux version of Derelict to make it the "one-and-only."

Looking it over, I see you've done a tremendous amount of work. It's hard for me to guess how much more work it would be to get a linux version up and running, but std.loader should work properly for the linux version too since it interfaces with the dl.so library.

The linux versions of the OpenGL library should reside in /usr/lib and are called libGL.so, libGL.so.1.3, libGLU.so, etc.

I'm not sure if the bindings as you've defined them for windows would work as is for linux with a only separate loader for the linux dynamic library startup.

The one current problem with std.loader on linux is that it isn't currently compiled into phobos on Linux! I don't have any idea why, since the loader is included with the distribution. Not that it's a big deal. One could easily just include the loader.d module in the project, or one could just recompile phobos with the module included.

Any thoughts on this?

Later,

John
Back to top
View user's profile Send private message
aldacron



Joined: 05 May 2004
Posts: 1322
Location: Seoul, South Korea

PostPosted: Fri Jul 23, 2004 5:21 am    Post subject: Reply with quote

I'll have to look more closely into the GL on Linux issue. I was under the impression that GLee was designed in such a way that it did the right thing even on Linux (with regards to GL 1.2+). If not and Linux needs to be special-cased, then some thought will need to be given into rewriting the entire package such that it is identical on both platforms.

re std.loader: This should have no effect on Derelict itself at all. Each package can still include std.loader as usual. Since the Derelict packages build to libs, phobos is not linked in anyway until an application using Derelict is built. It will be up to the client to deal with phobos issues when compiling the executable.

As to actually getting the Linux version done, I feel I'm really not the man for the job (or more accurately, I don't want to be). I can install an older version of RedHat (7.1 IIRC) and fool around with it if need be, but I'm really hoping someone else steps up and takes care of it. I have used Linux sparingly over the last several years and have never been comfortable with it. I truly despise having so many different directories where files are installed, so many different configuration files, and the fact that it takes ages to learn enough of the system to be competent at trouble shooting. I put together a Linux From Scratch system earlier this year in an attempt to learn more, but there was nothing enjoyable about it. I doubt I'd have much trouble getting Derelict ported and built, but I'm still reluctant to do so.

If no one takes care of it between now and the time I get everything other than DX on Windows, I'll bite the bullet and do it myself.
Back to top
View user's profile Send private message Send e-mail
Jaymz031602



Joined: 18 Aug 2004
Posts: 14

PostPosted: Thu Aug 19, 2004 8:33 am    Post subject: Reply with quote

This sounds like a Job for me. Exclamation Once I get back to skool (Aug 22nd) with a decent internet connection Shocked , I can tackle this Linux version quite easily. I'll grab your latest SVN trunk and patch it up for Linux. Hey, it only took me an hour to come up with the SDL_mixer port. Wink
_________________
"Yeah, well you're hogging all the ... UGLY!" - Chris (Family Guy)
Back to top
View user's profile Send private message AIM Address
clayasaurus



Joined: 21 May 2004
Posts: 857

PostPosted: Thu Aug 19, 2004 9:23 pm    Post subject: It works on linux for me ;) Reply with quote

The only things that are keeping linux from derelict are

#1) loader is not compiled into phobos on linux, which can be remedied by linking a loader.o file to your project after compiling loader.d. remember to change version(Linux) to version(linux) in loader.d

#2) need to add

version (linux)
{
hsdl = ExeModule_Load("libSDL.so");
}

and do the same for libGL.so, libGLU.so, libSDL_image.so, and all future libs.

#3) in gl.d, put

loadPlatformGL() into a version(Windows) block, since that loads all windows wgl functions which linux doesn't have/need

#4) get syswm.d working on linux. i just did some stupid aliases but there is probably a better solution.

Ah whatever. I got it to work in linux for me yippie!
So derelict is the "one and only" for me lol.
Back to top
View user's profile Send private message AIM Address
clayasaurus



Joined: 21 May 2004
Posts: 857

PostPosted: Thu Sep 02, 2004 11:40 am    Post subject: i just switch to mepis linux (debian based) Reply with quote

I just switch to mepis linux, and to get the DL's to load I had to change the names.
I don't know if these are more correct (most likely are) so here you go if you ever want to add the

version(linux)
// load .so (shared object)

libGL.so.1
libGLU.so.1
libSDL-1.2.so.0
libSDL_image-1.2.so.0
libopenal.so.0
Back to top
View user's profile Send private message AIM Address
aldacron



Joined: 05 May 2004
Posts: 1322
Location: Seoul, South Korea

PostPosted: Thu Sep 02, 2004 1:58 pm    Post subject: Re: i just switch to mepis linux (debian based) Reply with quote

clayasaurus wrote:
I just switch to mepis linux, and to get the DL's to load I had to change the names.
I don't know if these are more correct (most likely are) so here you go if you ever want to add the

version(linux)
// load .so (shared object)

libGL.so.1
libGLU.so.1
libSDL-1.2.so.0
libSDL_image-1.2.so.0
libopenal.so.0


I'm far from being a Linux guru, but in this case I think you would be better off setting up symbollic links on your system rather than changing the dll names in the code. I'm getting a new system next week, and some time after that I will burn a current linux distro (finally leaving the Dark Ages and getting a CDRW) and get it installed (probably on both machines). Then I'll see what I can do with this stuff. But I think the first version you posted is the correct way to go.
Back to top
View user's profile Send private message Send e-mail
clayasaurus



Joined: 21 May 2004
Posts: 857

PostPosted: Thu Sep 02, 2004 9:02 pm    Post subject: Re: i just switch to mepis linux (debian based) Reply with quote

aldacron wrote:
clayasaurus wrote:
I just switch to mepis linux, and to get the DL's to load I had to change the names.
I don't know if these are more correct (most likely are) so here you go if you ever want to add the

version(linux)
// load .so (shared object)

libGL.so.1
libGLU.so.1
libSDL-1.2.so.0
libSDL_image-1.2.so.0
libopenal.so.0


I'm far from being a Linux guru, but in this case I think you would be better off setting up symbollic links on your system rather than changing the dll names in the code. I'm getting a new system next week, and some time after that I will burn a current linux distro (finally leaving the Dark Ages and getting a CDRW) and get it installed (probably on both machines). Then I'll see what I can do with this stuff. But I think the first version you posted is the correct way to go.


oh cool so you're gonna get linux. yea mepis linux is cool (www.mepis.org) it's a debian based desktop distro live cd that automatically configures your system and gives you the choice to install to the hard drive . You have to install the devel libraries with apt-get so if you wanna do that pm me i can help. otherwise good luck : ) may the penguin be with you

ps. i'm no linux guru either but it sure looks better and is faster than windows IMO (no virus slowdowns on internet etc.) also i can use the live cd to make ANY machine with a cd drive to use linux and Open Office, which is good cause my schools libraries computers are windows without MS Word so i just boot live cd and use Open Office hehe

edit: ps. the libs i listed are symbolic links pointing to more complicated filenames
Back to top
View user's profile Send private message AIM Address
aldacron



Joined: 05 May 2004
Posts: 1322
Location: Seoul, South Korea

PostPosted: Fri Sep 03, 2004 4:45 am    Post subject: Reply with quote

I've toyed with different distros off and on over the past 5 years or so. I'm no stranger to it. But a few months back I sat down and built a Linux From Scratch system. It worked wonderfully. But in the process of going beyond the minimal system they teach you to build, I managed to bork things pretty good. So no more LFS for me. I've been waiting to get a CDRW before I mess with anything again so I can get the very latest of one distro or another.
Back to top
View user's profile Send private message Send e-mail
clayasaurus



Joined: 21 May 2004
Posts: 857

PostPosted: Mon Sep 27, 2004 3:19 pm    Post subject: Reply with quote

aldacron wrote:
I'll have to look more closely into the GL on Linux issue. I was under the impression that GLee was designed in such a way that it did the right thing even on Linux (with regards to GL 1.2+). If not and Linux needs to be special-cased, then some thought will need to be given into rewriting the entire package such that it is identical on both platforms.



Yea, the D port seems to only target win32. I'm looking at the linux glee.h right now and might be able to get a glee.d that works on linux. Also, on linux GLee is a shared library. Surely someone could make a GLee.dll (if not already made) and just do the normal dynamic loading thing?
Back to top
View user's profile Send private message AIM Address
aldacron



Joined: 05 May 2004
Posts: 1322
Location: Seoul, South Korea

PostPosted: Mon Oct 25, 2004 9:30 pm    Post subject: Reply with quote

For what it's worth, I'm downloading Mepis right now. I was going to go with Debian, and started pulling it down with that new jigdo thing (or whatever it's called), but decided to go with Mepis instead. I need to pull one of the HDDs out of my old system and put it in my current one, burn the CD, and install. So sometime in the next few days I'll be up and running. Then I can actually test stuff out myself.

EDIT: On second thought, I think I will go with Debian. Jigdo is much faster than downloading Mepis over ftp/http, and I'm getting impatient Smile
Back to top
View user's profile Send private message Send e-mail
Display posts from previous:   
Post new topic   Reply to topic     Forum Index -> Derelict All times are GMT - 6 Hours
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © 2001, 2005 phpBB Group