Archived

This topic is now archived and is closed to further replies.

ZYirAH

Distro / IDE suggestions for Mesa/OpenGL experimenting?

Recommended Posts

Hi, I've been reading through the posts from the past 100 days to try to get some ideas but I still have some quetions. So I thought I'd ask. I'm interested in experimenting with Mesa on Linux. I'm wondering what combination of Distro / IDE people might suggest? I'm not a Linux pro. I've only installed Mandrake on a desktop and a laptop in the past just to try out software. This is a personal learning project. But, I'd like to keep most of the learning focused on getting comfortable with compiling under Linux and experimenting with Mesa itself, so I'm thinking along the lines of an easy installing distribution. I'm also thinking of using a relatively full featured IDE becaue I'm most familiar with VC++ so I was considering Anjuta. Do Redhat and Anjuta jive well? I've noticed some people mention problems with installing Anjuta on Mandrake. And lastly, are there any 'gotchas' when developing with Mesa on any particular distributions or IDEs? Thanks in advance. I understand a lot of this is personal preference but I'm mostly looking for ease of install and compatibility between the distro, the ide and the mesa library. [edited by - ZYirAH on March 8, 2003 12:52:35 PM]

Share this post


Link to post
Share on other sites
Experimenting with Mesa? Whadaya mean?

For a distro I''d recommend Mandrake. Its easy to use, and I''d rather be programming than fidling with config files and junk, so it works for me.

For an IDE i''d recommend Anjuta. You''ve probably heard me "mention problems with installing Anjuta on Mandrake." I think it was because I tried to use the RedHat 8.0 RPMs, which require Glibc 2.3, which Mandrake 9.0 doesn''t have. If you use the 7.x RPMs, it oughta work. But I think Mandrake 9.1 is going to come with GLibc 2.3, so when that comes out (i think they said March 12. Its very soon whenever it is) the 8.0 RPMs should work.

As far as any ''gotchas'', I dunno. I''ve never really used Mesa that much, just straight plain ol'' OpenGL.

Share this post


Link to post
Share on other sites
Guest Anonymous Poster
BradDaBug-- that''s cool that you mentioned it cause that brings me to another question. When I started searching around for ''Linux OpenGL programming'' I kept seeing references to Mesa. Any tutorials would say: first download Mesa and Glut ...blah blah. So what''s the story there? If I want to experiment with OpenGL on Linux do I need anything else other than say Mandrake and Anjuta?

Thanks, I''m a little confused. I figured this was a more valid question for this forum other than the OpenGL one.

Share this post


Link to post
Share on other sites
Most distro''s come so that you won''t have to bother with setting up Mesa or GLUT (for GLUT you might need to install a package on the CD or online, but that''s easy to do).

For hardware accelerated OpenGL in Linux with X, the OpenGL libraries could be a number of implementations. The common open source implementation of OpenGL is Mesa, and most open source drivers use DRI. Mesa can be built to render through DRI (it''s included in the DRI source tree, so no ''seperate'' Mesa is needed). Other OpenGL library implementations (e.g., NVidia''s closed drivers) exist too.

For software rendered OpenGL in *nix with X, the OpenGL libraries will probably be a ''default'' Mesa built to render in software mode.

Share this post


Link to post
Share on other sites
quote:
Original post by BradDaBug
Experimenting with Mesa? Whadaya mean?

For a distro I''d recommend Mandrake. Its easy to use, and I''d rather be programming than fidling with config files and junk, so it works for me.

For an IDE i''d recommend Anjuta. You''ve probably heard me "mention problems with installing Anjuta on Mandrake." I think it was because I tried to use the RedHat 8.0 RPMs, which require Glibc 2.3, which Mandrake 9.0 doesn''t have. If you use the 7.x RPMs, it oughta work. But I think Mandrake 9.1 is going to come with GLibc 2.3, so when that comes out (i think they said March 12. Its very soon whenever it is) the 8.0 RPMs should work.

As far as any ''gotchas'', I dunno. I''ve never really used Mesa that much, just straight plain ol'' OpenGL.


I''ve never used Mandrake, but ppl says it''s good, and i''m curious about one thine: does it suffers from dependency hell too (like RedHat does)?

Victor.

Share this post


Link to post
Share on other sites
Null and Void-- Thanks, that helps clear it up. So basically I just need to make sure the GLUT packages get installed while installing Linux right? I''m interested in messing around with hardware accelerated OpenGL. I''ve read something about dependencies on X11 for this? Is that just another package that I should make sure gets installed with Linux? Thanks, as you can tell I''m pretty new to this. I''m taking this one step at a time. I just want to get my environment set up to the point where I can compile some OpenGL sample code under Linux then I can start working from there.

BradDaBug-- Thanks for the clarification on Anjuta. Will I be ''missing out on anything'' by using the 7.x RPMs without Glibc 2.3 ?

Share this post


Link to post
Share on other sites
quote:
Original post by ZYirAH
I''ve read something about dependencies on X11 for this?

X11 is also known as X or the X Window System; it''s the network transparent windowing system standard that XFree86 implements and is the most common graphics layer you''ll find in unix (and unix-like) environments. Most ''easy'' distros (as well as some others) are going to assume you want it installed and setup by default.

Share this post


Link to post
Share on other sites
quote:
Original post by ZYirAH
BradDaBug-- Thanks for the clarification on Anjuta. Will I be ''missing out on anything'' by using the 7.x RPMs without Glibc 2.3 ?


Not that I''m aware of. I use it and I don''t see any problems with it.

And Mandrake suffers from the same dependency hell that Red Hat does, since they both use the RPM system for managing packages. Not that Dependency Hell is something you''re constantly in, only when you need to install anything.

Share this post


Link to post
Share on other sites
Go the hardcore way Slackware. Use ed for writing code, hehe

Seriously though, Slackware is the distro that suits me best. Try it on. It comes with less crap, no RPM-shit, better (IMO) organized init scripts, etc.

And on top of that I just use some text-editor (be it jed, emacs or vi) and make or the automake/autoconf/etc-suit.

Besides, installing programs from source tarballs seems easier than fiddling with those rpms... just untar it, ./configure it, make and make install (... or you just have to try to decipher the INSTALL/README file and pass ten different cryptic flags to ./configure). Uninstalling programs are, well, sometimes worse.

Share this post


Link to post
Share on other sites
I didn''t have any problems installing Anjuta 1.0 on my Mandrake 9.0 distro at all. However, while it worked with RPM package, it didn''t install from the tarball (and I can''t recall anymore what the missing dependencies were).

-vic-
Basically all distro''s suffer from dependency hell except for two...Debian and Gentoo. Debian uses a package system called DEB and uses a system called apt-get to help retrieve and install and dependencies. Gentoo borrowed a concept from BSD called Ports and it''s packaging system is called Portage. Essentially the "packages" are source, but Portage uses "ebuild" scripts which not only install the package for you, but also gets all dependencies for you and will also install extra features for you (sort of like having some built in ./configure --options pre-scripted for you).

I do have a question about Mesa/OpenGL/Glut....since my video card is a Radeon 8500, and Xfree 4.2.0 does not have 3d support for this card, when I finally upgrade to 4.3.0 which does have 3d support via DRI, how do I get Mesa up and running with it? I figure I have to set up the Mesa libraries so that DRI can use it, but how do I that...just set up some symbolic links and run ldconfig?

Share this post


Link to post
Share on other sites
Maybe this is heresy, but I just can''t get used to either vi or emacs. Cooledit seems okay as does jed, but really, I haven''t found any pure linux text editors that I like.

Which is why it''s all the more embarrassing that the editor I''ve gotten most comfy with so far is jEdit. Don''t ask me why. I guess I got used to it after trying to find a simple editor with a few nifty plugins. It''s not really that powerful, though it does have some useful macros, search functions, and decent bookmarking capabilities. The biggest disadvantage though is that it''s a memory hog (what java app isn''t?). And speed-wise, sometimes it does choke when you ask it to do certain things.

But it''s pretty, it has most of the features I like and even has built in Python shell, and several Java utilities. I also use it for XML/XSLT work, since it has a XML tree plugin and an XSLT tool as well. I know emacs is powerful as hell, and vi is a speed demon, but somehow I just can''t bring myself to work in them.

As for IDE''s, I prefer Anjuta, though Kdevelop isn''t bad either.

Share this post


Link to post
Share on other sites
quote:
Original post by -vic-

I''ve never used Mandrake, but ppl says it''s good, and i''m curious about one thine: does it suffers from dependency hell too (like RedHat does)?

Victor.




All distros, except the Gentoo, Debian, Mandrake, RedHat 7.3 and up, and FreeBSD, suffer from dependency hell as you refer to it but it''s not that complicated to resolve. As for Mandrake, most of the dependencies are resolved if you use "urpmi" which is also part of Redhat as of 7.3 and up( at least, those are the ones where I''ve found and used it before ).




[Cyberdrek | the last true sorcerer | Spirit Mage - mutedfaith.com][ Administrator TheLinuxForum.tk]

Share this post


Link to post
Share on other sites
quote:
Original post by ZYirAH
Null and Void-- Thanks, that helps clear it up. So basically I just need to make sure the GLUT packages get installed while installing Linux right? I''m interested in messing around with hardware accelerated OpenGL. I''ve read something about dependencies on X11 for this? Is that just another package that I should make sure gets installed with Linux? Thanks, as you can tell I''m pretty new to this. I''m taking this one step at a time. I just want to get my environment set up to the point where I can compile some OpenGL sample code under Linux then I can start working from there.

BradDaBug-- Thanks for the clarification on Anjuta. Will I be ''missing out on anything'' by using the 7.x RPMs without Glibc 2.3 ?


The best way to start is by learning how linux works, then you can get around to learning how to setup Mega/GLUT using an IDE or just plain old VI for that matter. For that, you can do a search in your favorite search engine for HOWTO, this should bring you to a great deal of Linux HowTos which explain in pretty good details how to get things done.


As far as Glibc 2.3 goes, you''ll be sure to have a glibc, might not be 2.3 but you''ll have one as it is a required lib when using GCC.

I really recommend that you get a good book on Linux Programming to help get you started. Also maybe a book for Linux newbies to help out, if you get stuck. Not that linux is really complicated but just to help you understand the system a bit.




[Cyberdrek | the last true sorcerer | Spirit Mage - mutedfaith.com][ Administrator TheLinuxForum.tk]

Share this post


Link to post
Share on other sites
quote:
Original post by BradDaBug
And Mandrake suffers from the same dependency hell that Red Hat does, since they both use the RPM system for managing packages. Not that Dependency Hell is something you''re constantly in, only when you need to install anything.



True but false. As of Mandrake 7.x and Red Hat 7.1( and up ), URPMI is installed and usually works for solving dependencies. Although, the one in Mandrake versions 7.x was a bit of an *ss, it has been solved in later versions.


[Cyberdrek | the last true sorcerer | Spirit Mage - mutedfaith.com][ Administrator TheLinuxForum.tk]

Share this post


Link to post
Share on other sites
quote:
Original post by Staffan
Go the hardcore way Slackware. Use ed for writing code, hehe

Seriously though, Slackware is the distro that suits me best. Try it on. It comes with less crap, no RPM-shit, better (IMO) organized init scripts, etc.

And on top of that I just use some text-editor (be it jed, emacs or vi) and make or the automake/autoconf/etc-suit.

Besides, installing programs from source tarballs seems easier than fiddling with those rpms... just untar it, ./configure it, make and make install (... or you just have to try to decipher the INSTALL/README file and pass ten different cryptic flags to ./configure). Uninstalling programs are, well, sometimes worse.


FYI, the hardcore way as you call it, is dead. Slackware is much more easier to use than when I first got it. ( around version 1.x or something like that ). Oh and for your information, it has just as much crap as all other distros you just get a better util to select which you want installed and which you don''t want. And RPM can also be installed on Slack also.

As for packages, RPMS are way easier to use, even if sometimes they are a pain. rpm -ivh blah.rpm to install and that''s it( no messing around with configure scripts or having to compile ). Although, I personally prefer tarballs myself, most users will prefer rpms. As for Slackware, it''s not the only one. If you want a distro that''s even better organised than that, get SoL. Every config( for most services and some apps) file is XML based.

Now, concerning what you use to code, I believe, the question was about IDEs, not editors and not about make or autoconf and that suite.


[Cyberdrek | the last true sorcerer | Spirit Mage - mutedfaith.com][ Administrator TheLinuxForum.tk]

Share this post


Link to post
Share on other sites
quote:
Original post by Staffan
Go the hardcore way Slackware. Use ed for writing code, hehe

Seriously though, Slackware is the distro that suits me best. Try it on. It comes with less crap, no RPM-shit, better (IMO) organized init scripts, etc.

And on top of that I just use some text-editor (be it jed, emacs or vi) and make or the automake/autoconf/etc-suit.

Besides, installing programs from source tarballs seems easier than fiddling with those rpms... just untar it, ./configure it, make and make install (... or you just have to try to decipher the INSTALL/README file and pass ten different cryptic flags to ./configure). Uninstalling programs are, well, sometimes worse.


FYI, the hardcore way as you call it, is dead. Slackware is much more easier to use than when I first got it. ( around version 1.x or something like that ). Oh and for your information, it has just as much crap as all other distros you just get a better util to select which you want installed and which you don''t want. And RPM can also be installed on Slack also.

As for packages, RPMS are way easier to use, even if sometimes they are a pain. rpm -ivh blah.rpm to install and that''s it( no messing around with configure scripts or having to compile ). Although, I personally prefer tarballs myself, most users will prefer rpms. As for Slackware, it''s not the only one. If you want a distro that''s even better organised than that, get SoL. Every config( for most services and some apps) file is XML based.

Now, concerning what you use to code, I believe, the question was about IDEs, not editors and not about make or autoconf and that suite.


[Cyberdrek | the last true sorcerer | Spirit Mage - mutedfaith.com][ Administrator TheLinuxForum.tk]

Share this post


Link to post
Share on other sites
Thanks everyone for the suggestions and help.

Cyberdrek-- I agree the best starting point is getting used to the Linux itself. I''m trying to do that indirectly by taking on this ''project''. It''s a ''holistic'' approach. I''m keeping it light but with a general focus of playing with OpenGL eventually.

Progress so far: I wiped my laptop and put Mandrake on it (and XP). There''s a GF4 mobile in the laptop so I had to look around to find out how to get X to agree with the card. After searching around I learned how to wget the kernel and glx from NVIDIA and set them up so I can now run X with Gnome (I''m happy with my progress ). I installed Anjuta and managed to create, compile, and run a terminal app (hello world). So that''s cool.

Now it seems I need ?Glade? installed / configured to be able to make Gnome applications. So I''m searching around to see how exactly I do that. It''ll probably be quite a while before I try to figure out exactly how to install / configure GLUT and / or Mesa. I''m taking this one step at a time.

Thanks again for the suggestions and thoughts, it''s been helpful.

Share this post


Link to post
Share on other sites
quote:
Original post by ZYirAH
Now it seems I need ?Glade? installed / configured to be able to make Gnome applications.

You don''t need Glade to make Gnome applications, but it does help a lot. You''ll still need to know a little about GTK+ and related libraries to do anything moderately complex.

quote:
Original post by ZYirAH
It''ll probably be quite a while before I try to figure out exactly how to install / configure GLUT and / or Mesa.

You said you''ve installed the closed NVidia drivers. If you''ve done this, you do not need to really do anything with Mesa (NVidia provides its own OpenGL implementation as part of their GLX package since they don''t want to interact with DRI for whatever reason).

You might need to get OpenGL headers if you don''t already have them though (a ''mesa-dev'' type package; for example: Debian calls this xlibmesa-gl-dev).

Random Note: the 2D acceleration of NVidia''s closed drivers is somewhat broken in the current 4xxx releases (the 3xxx releases were okay). If you have general graphical problems, blame the NVidia drivers .

Share this post


Link to post
Share on other sites
quote:
Original post by Null and Void
You might need to get OpenGL headers if you don't already have them though (a 'mesa-dev' type package; for example: Debian calls this xlibmesa-gl-dev).

Ahh, much appreciated. Would this be a package I would search for on Mandrake sites, or OpenGL sites, or from Nvidia themselves? **EDIT: Never mind. Dumb question. I'm thinking windows. I found and installed mesa and glut dev headers with rpm drake. This is pretty cool. Now I just have to figure out how to link the libraries into a project in Anjuta. **EDIT2: done, found the headers and libs in /usr/X11R6/ , which makes sense. Just gotta look for a piece of sample code that uses glut, opengl, mesa or whatever and if it compiles I might just be on my way. *crosses fingers*

quote:
Original post by Null and Void
Random Note: the 2D acceleration of NVidia's closed drivers is somewhat broken in the current 4xxx releases (the 3xxx releases were okay).

That's good to know. I was wondering if it was my imagination that 2D visuals were choppy looking. Thanks, maybe I'll try 3x and compare.


[edited by - ZYirAh on March 9, 2003 7:01:26 PM]

[edited by - ZYirAH on March 9, 2003 7:47:52 PM]

Share this post


Link to post
Share on other sites
quote:
Original post by ZYirAH
Thanks everyone for the suggestions and help.

Cyberdrek-- I agree the best starting point is getting used to the Linux itself. I''m trying to do that indirectly by taking on this ''project''. It''s a ''holistic'' approach. I''m keeping it light but with a general focus of playing with OpenGL eventually.

Progress so far: I wiped my laptop and put Mandrake on it (and XP). There''s a GF4 mobile in the laptop so I had to look around to find out how to get X to agree with the card. After searching around I learned how to wget the kernel and glx from NVIDIA and set them up so I can now run X with Gnome (I''m happy with my progress ). I installed Anjuta and managed to create, compile, and run a terminal app (hello world). So that''s cool.

Now it seems I need ?Glade? installed / configured to be able to make Gnome applications. So I''m searching around to see how exactly I do that. It''ll probably be quite a while before I try to figure out exactly how to install / configure GLUT and / or Mesa. I''m taking this one step at a time.

Thanks again for the suggestions and thoughts, it''s been helpful.


That''s cool. I thought you just wanted to get into OGL programming without getting to know the system first. I stand corrected. By the way, if you want to know anything about linux, the first thing to do is a search for HOWTOs in your favorite search engine. They should mostly cover all the information you need...

Keep it up..




[Cyberdrek | the last true sorcerer | Spirit Mage - mutedfaith.com][ Administrator TheLinuxForum.tk]

Share this post


Link to post
Share on other sites
Try the new Fox toolkit at: http://www.fox-toolkit.org/fox.html for your gui/gl apps. I''m on win98/d3d/mfc but when ever I move to linux one day I''ll probably use that. There''s also wx-windows windowing toolkit, all these are very similar to window''s MFC api. That glade is nice but I think you can do the gui interface by hand quite nicely. See some fox toolkit screenshots. Linux gui windows have that automatic resizing thingy going unlike mfc windowing. The only difference between mfc and linux gui apis is that mfc writes the macros and msg handlers for you while in linux you have to write them yourself(unless using glade I think). Little bit time consuming but doable. In mfc I have to change wizard generated macros by hand sometimes too.

I wouldn''t use mesa at all if you have nvidia card. Goto sgi.com to download their July, 1.4 gl headers. Nvidia also hosts them on their site. They''re the same version, I checked. After that goto visit nehe''s website for his excellent opengl tutorials. If you don''t mind paying money there''s codecrusader dev. comparable to vc6 I think. It has nice ide and I had zero problems compiling on it back in ''97 I think(when it was free). Don''t know their status but I know they went commercial and merged with an windowing api people.

Share this post


Link to post
Share on other sites