So, has Windows development of Celestia stopped?

The place to discuss creating, porting and modifying Celestia's source code.
Avatar
t00fri
Developer
Posts: 8772
Joined: 29.03.2002
Age: 22
With us: 22 years 7 months
Location: Hamburg, Germany

Post #21by t00fri » 15.06.2005, 18:56

Evil Dr Ganymede wrote:
I've decided to take the alternative path from Evil Dr Ganymede, and pursue learning how to 'develop' Celestia for myself: starting with installing Linux, compiling under Linux, learning about OOP and C++, hopefully followed by OpenGL, all this GTK, qt, and KDE stuff, maybe even get hold of Octave and learn how to use it to generate PNGs, etc.

...
Good luck with it, but my experiences with Linux have been "this is the most complex, unfriendly, nightmarish OS I have ever had the misfortune to see". I used it only when I had to, never because I wanted to.

(Despite other intentions of mine ) I have to inject here, before your grossly lacking information and your prejudice about the state of LINUX scare away "brave" people like Spiff!

++++++++++++++++++++++++++++
To set up any Linux system and work with the system on a /superficial/ level about equivalent to normal Windows click operations, really takes very little nowadays.
++++++++++++++++++++++++++++

Installation of the better known Linux systems proceeds just with a few clicks, and any peripheral devices are automatically recognized and drivers are loaded. Since I work /both/ with Linux and Windows in parallel I think I can judge and compare pretty well. All this works with ease.

Networking is still much more advanced with Linux while Laptop-typical features like ACPI, Wireless Lan etc are better still in Windows. They are working satisfactorily, too, with /recent/ 2.6 Linux kernels.

However...

Building a highly complex program like Celestia either in Windows or under Linux is a different type of challenge!

Conceptionally it's easy, but it is complicated in practice, since Celestia uses >50 (!!) external libraries. The usual problems of newbie Celestia compilers almost exclusively trace back to lacking libs or lacking header files of those libs! The main point being that the standard configuration scripts running in LINUX before the compile step starts, typically tend to /misinterpret/ lacking headers or libraries. Consequently the unexperienced user faces /misleading/ diagnostic messages!

Spiff's current configure problems are probably a typical example of this!

What is great about UNIX and specifically LINUX systems is their intelligent shells that allow highly sophisticated scripts being executed. Learning UNIX scripting language is a comparatively minor challenge, but it pays off tremendously! By means of such scripts, one may automatize an amazing variety of tasks.

My 'virtualtex' script for cutting VT's is a typical example.

By means of such shell scripts I may also update and rebuild Celestia from CVS (even in a totally alcoholized state ;-) ) in about 30-60 seconds! That's the time it takes for me to incorporate any CVS changes!

So please forgive me if this persistent complaining about compiling source code makes me smile occasionally...

All these benefits of LINUX/UNIX can also be exploited under Windows via a Cygwin/RedHat Linux installation.

That's what I use since > 2years on my Laptop, for example. I.e. I profit from the better Media and ACPI & WLAN support by Windows as well as all the scripting and networking benefits of Cygwin LINUX.

EDG wrote:Do you think that other people have time to do this?!

This "time argument" I simply have heard too often!

Please take into account that "KnowHow" may be a tremendous time saver ;-) .
E.g. (see above) Upgrading & rebuilding of Celestia from CVS only takes 30-60 seconds for me.

Why do I know these things? Because I never resisted to learn. It's as simple as that. I vigorously deny that this requires particular talents or even particular intelligence! It's just a bit of self-discipline and setting priorities...

Also from your extended "visibility" in this and other forums, I gather that your spare time is not all that short...

Last not least, I have a geat wife and daughter and my life certainly does not "evolve around Celestia" ;-)

EDG wrote:To contribute anything to Celestia on the Windows side, I would have to learn C++, OpenGL (and find a development environment for both) and basically have it consume all my time (assuming that I could actually get my head around those languages in the first place). I am just not prepared to do that, and neither am I able to do it.


Clearly it is entirely unnecessary to learn C++, or even OpenGL just to build Celestia from CVS. Nevertheless people with e.g. some elementary knowledge of Fortran could easily make simple changes to the code and recompile....
Last edited by t00fri on 15.06.2005, 19:18, edited 2 times in total.

hank
Developer
Posts: 645
Joined: 03.02.2002
With us: 22 years 9 months
Location: Seattle, WA USA

Post #22by hank » 15.06.2005, 19:14

EDG,

No one really expects you (or most Windows users) to do Celestia development or (pre)releases for Windows. But unless someone from the Windows community is willing and able to do this, the Windows version will lag. This is no different than how it is with the Mac and Linux versions.

Chris has done development and (pre)releases for Windows in the past, but his limited time is really needed for cross-platform development work. It's unfair to the users of other platforms to tie-up Chris doing work for Windows only.

Believe me, I understand your frustration. I had really hoped this discussion would produce a few Windows developer volunteers. Perhaps in time...

- Hank

Topic author
Evil Dr Ganymede
Posts: 1386
Joined: 06.06.2003
With us: 21 years 5 months

Post #23by Evil Dr Ganymede » 15.06.2005, 19:26

I have to inject here, before your grossly lacking information and your prejudice about the state of LINUX scare away "brave" people like Spiff!


I've used Red Hat and Mandrake at least. I had to use them because the image processing program (ISIS) I had to use would only work on Linux. I had to use this for about four years.

And I had to struggle through dealing with stupid permissions problems, hardware conflicts, an extremely drawn out and complex installation procedure, and totally nonsensical interface (you wouldn't think that something as simple as changing the screen resolution would be so damn impossible in Linux, but it is. Even after four years I still couldn't figure out how the hell to do it). Not to mention some really bizarre, completely unobvious text commands with all those stupid swtiches.

Compared to Windows, in terms of usability and accessibility, Linux fails miserably. You WILL be struggling with it - immensely - if you're used to Windows. If you do anything wrong, like screw up a setting, you will be in deep trouble. I had nothing but nonstop frustration with it. Linux may be better for security and technical details, but it still remains the domain of the computer geek, not the average user.

You are evidently used to Unix and all its idiosyncracies. But if you're coming at it from outside, then believe me it's a real nightmare to use.

Avatar
t00fri
Developer
Posts: 8772
Joined: 29.03.2002
Age: 22
With us: 22 years 7 months
Location: Hamburg, Germany

Post #24by t00fri » 15.06.2005, 19:50

Evil Dr Ganymede wrote:
I have to inject here, before your grossly lacking information and your prejudice about the state of LINUX scare away "brave" people like Spiff!

I've used Red Hat and Mandrake at least. I had to use them because the image processing program (ISIS) I had to use would only work on Linux. I had to use this for about four years.

So then please, let us know in which years this was!

Red Hat for example is a successful US -based company. They know the rules of money making! They have not been sleeping during the last few years where competition among LINUX distributors has been steeply rising.

EDG wrote:
And I had to struggle through dealing with stupid permissions problems,

What you call stupid permission problems is nothing but a manifestation of the much higher security standards of LINUX compared to WINDOWS. This is even acknowledged by Microsoft! It just takes a little reading in excellent available texts to understand once for all the UNIX permission system. By the way, the XP security/permission system is about equally fancy meanwhile! You probably have never experienced it since --unlike myself-- you probably were never part of a very large professional Windows NETWORK!

EDG wrote:hardware conflicts, an extremely drawn out and complex installation procedure, and totally nonsensical interface (you wouldn't think that something as simple as changing the screen resolution would be so damn impossible in Linux, but it is.


All scientists in my lab, one of the largest ones on this planet, are working with LINUX since > 10 years. We must all be dumb idiots if what you say is true ;-) . The stability of LINUX is unbeaten and "blue screens" are entirely unknown...Again the superior stability of LINUX is acknowledged even by Microsoft.

We have a 6 storey building full of IT experts that are responsible for the computer support of this site with > 5000 PC's , TERAflop clusters etc...what do you guess anyone of them would think when confronted with
your above complaints ...Can you imagine Chris shouting about LINUX? He uses it himself intensively...

Changing the screen resolution with a NVIDIA graphics driver ( identical in LINUX and Windows) proceeds identically as in Windows. Just take my word for it. All these companies want to make money. So they work hard to make life simple also for LINUX users ;-)

BlindedByTheLight
Posts: 485
Joined: 19.03.2005
With us: 19 years 8 months
Location: Los Angeles, CA

Post #25by BlindedByTheLight » 15.06.2005, 20:23

Evil Dr. Ganymede wrote:To contribute anything to Celestia on the Windows side, I would have to learn C++, OpenGL (and find a development environment for both) and basically have it consume all my time (assuming that I could actually get my head around those languages in the first place). I am just not prepared to do that...


I took this quote as symbolic of what is going on in this thread. Some of what I'm going to write is rehash but I see this thread going in circles so I thought I'd make a list of all the relevant points thus far - so maybe all can agree. Since I don't know a THING about coding (I just learned it was called that, in fact) most of this may be wrong. But here goes (or skip the list for the good part at the end if you must)...

1) As far as I know, the Mac version of Celestia is not AHEAD of the other versions it is behind.

2) Most of the code is platform independent - so really, there aren't people out there "working on the Mac version" (or Linux) while the other versions suffer. As far as I know, the coders out there are working, basically, so that the Mac version is BROUGHT UP TO SPEED with the other versions (case in point... as a Mac user all I can say is: Star Browser? Full-screen mode? What's that?)

3) It takes time to "compile" (just learned that word, too) builds for mass consumption. Not years... but certainly hours (making sure it's done correctly, testing, documentation) and not everyone has hours and hours to spare.

4) If someone does have hours and hours to spare, it behoove EVERYONE for them to see if they could be adding NEW features we all want, instead of just making sure everyone out there can play with every single incremental build. In other words, do you want your cook making new dishes or do you want to waste his/her time making him giving you a taste every minute?

5) In any case, it doesn't matter what WE want the cook to do... the cook will do what the COOK wants to do (since the cook is donating his/her time). Even better, the cook is probably a professional and knows the most efficient way to develop software so we best not even hassle the cook lest he/she listens to us, and we end up with LESS in the long run.

6) A person is not lazy for not wanting to do something. A person is lazy for insisting that others EQUALLY as time-burdened or EQUALLY as skill-burdened do that something for them. A person is lazy for insisting that coders spend crucial time AWAY from proper development just so the coders can bring others up to speed (when - and this is a crucial point - those others could expend a little effort and bring themselves up to speed).

Along those lines, I would like to say that I do not know C++ (or even what that is, really). I have no idea what OpenGL is (except it has something to do with a graphics card that, until recently as a Mac user, I had no idea what a graphics card even was). I still don't know exactly "development environment" means.

Yes, I am a Mac user. The laziest kind of techno-phobe out there. :) I don't know JACK about my computer except how to turn it on and use it. The thought of, say, DOS or Unix under the hood (or even that there IS an "under the hood" in my computer) makes me cringe. I want to plug it in and play with it. No drivers, no muss, no fuss. Those other platforms, where such things are commonplace... more power to ya, but not for me.

And yet, I like to think I have a pretty good head on my shoulders. I also would like to say how grateful I am to those people who have done SO much with this program... for free. For nothing other than to contribute.

I would also like to say how damn busy with work I have been - meaning I really have NO time whatsoever to learn ANY new skills at the moment. But when I saw Dirkpitt's post that he uploaded something called "CVS commits" to some kind of web-site with all sorts of new Mac features (mainly full-screen mode - which I understand has been in the Windows version for a LONG time), I was intrigued.

So I asked Dirkpitt a few basic questions about it. Lo and behold, a total of five hours later (cumulative - not all at once) I had learned enough how to make my own Celestia "build" (if that's even the right word). Now I can build a build in 15 minutes.

I have NO idea what I'm really doing. I just know what buttons to push to make it happen. When I had a problem, I posted a question, and got an answer.

1) I really don't have time to do this... but, eventually, I found time.
2) I absolutely do not have the skills to do this.. but I managed anyway.

And I had hoped to write a simple post teaching other Mac users how to do this (I understand there is already such a post for Windows users out there - and Linux users probably already know how). But, with my dot Mac account, it was actually easier to just make my version available. Literally. I went to http://www.mac.com. Typed in my password, chose a template, wrote some text and "chose" the file to share. Bingo! No HTML knowledge required. My step-mom is even doing this to share pictures.

(The site does have limitations but ElChristou has been kind enough to give me some advice and even send me some HTML stuff so hopefully I'll be able to do the site up right. I dont' know jack about this stuff either but I'm sure there are people out there who will help me when I stumble).

In other words, long story, short, bottom line - as I understand open source, if you want it, do it yourself. :) I did - and I'm a total computer dork (and I don't mean a good "dork" who knows about computers... I mean a bad "dork" who is totally clueless beyond my GUI).

BlindedByTheLight

P.S. Just learned what a GUI is, also. :)
Steven Binder, Mac OS X 10.4.10

Avatar
t00fri
Developer
Posts: 8772
Joined: 29.03.2002
Age: 22
With us: 22 years 7 months
Location: Hamburg, Germany

Post #26by t00fri » 15.06.2005, 20:52

Congratulations, Steven!

I mean it! I also know that after the first success of the kind you are describing, there is even a good feeling of achievement arising ;-) .

And re-building Celestia really doesn't have to last hours. After all, the operations are the same after each CVS update that one wants to include.

One lesson to keep in mind is that the 'make' tool controlling the build process is quite clever. It checks the date stamps of all files involved in the building and only redoes those that are "outdated", i.e. have been recently updated from CVS. Since the developers are not THAT fast, usually only a few files change and thus 'make' only orders to recompile those few files. This virtually works within a fraction of a minute!

Add another 30 seconds for uploading the few upgraded files and you will end up with a re-build time of Celestia in the 1-2 minute range at the worst!


Bye Fridger

Topic author
Evil Dr Ganymede
Posts: 1386
Joined: 06.06.2003
With us: 21 years 5 months

Post #27by Evil Dr Ganymede » 15.06.2005, 22:05

t00fri wrote:So then please, let us know in which years this was!

1998-2002.


What you call stupid permission problems is nothing but a manifestation of the much higher security standards of LINUX compared to WINDOWS. This is even acknowledged by Microsoft! It just takes a little reading in excellent available texts to understand once for all the UNIX permission system. By the way, the XP security/permission system is about equally fancy meanwhile!

But it's not obstructive. XP doesn't tell me that when I try to copy a file off a CD that I made and that i put in the CD drive (which I'm lucky to be able to even access in Linux) that I don't have permissions to copy the file over.


You probably have never experienced it since --unlike myself-- you probably were never part of a very large professional Windows NETWORK!

Hm. I guess university windows networks aren't 'professional' enough for you?


All scientists in my lab, one of the largest ones on this planet, are working with LINUX since > 10 years. We must all be dumb idiots if what you say is true ;-) .

Again, you warp what I say (I never implied that anyone was 'dumb') and insult my intelligence too. And people wonder why you piss me off so much? :x

Changing the screen resolution with a NVIDIA graphics driver ( identical in LINUX and Windows) proceeds identically as in Windows.


It is absolutely not tue. In windows, I pull up the Display properties by rightclicking on the screen, go to the Setting tab, and I can change the settings right there.

In Linux, I can't do that. Instead, i have to go to some text file in the /etc directory, stare blankly at a load of incomprehensible gibberish, and try commenting out or activating lines depending on what my monitor claims is the right settings (which usually turn out to be wrong).

You are used to Linux, you are in no position to tell anyone how easy it is - you've been using it all the time for years, and probably didn't use anything else beyond that. Of course it's intuitive to you, because your definition of 'intuitive' is different to others'.

I know Linux is better for security etc. But that's irrelevant if it's too complex and fiddly for me to use without throwing the whole damn computer out of the window because it won't let me do the simplest tasks.

Avatar
dirkpitt
Developer
Posts: 674
Joined: 24.10.2004
With us: 20 years 1 month

Post #28by dirkpitt » 15.06.2005, 23:02

BlindedByTheLight wrote:2) Most of the code is platform independent - so really, there aren't people out there "working on the Mac version" (or Linux) while the other versions suffer. As far as I know, the coders out there are working, basically, so that the Mac version is BROUGHT UP TO SPEED with the other versions (case in point... as a Mac user all I can say is: Star Browser? Full-screen mode? What's that?)


The Mac version may be less behind than you realize - a Browser of sorts exists (type Cmd-B) and I added full screen mode (Cmd-F) in that last big CVS commit. The Browser does not have as many features as the Windows version but it's there. What is missing is an Eclipse Finder and Movie Capture but work is progressing on these right now.

BlindedByTheLight
Posts: 485
Joined: 19.03.2005
With us: 19 years 8 months
Location: Los Angeles, CA

Post #29by BlindedByTheLight » 16.06.2005, 01:08

dirkpitt wrote:
BlindedByTheLight wrote:2) Most of the code is platform independent - so really, there aren't people out there "working on the Mac version" (or Linux) while the other versions suffer. As far as I know, the coders out there are working, basically, so that the Mac version is BROUGHT UP TO SPEED with the other versions (case in point... as a Mac user all I can say is: Star Browser? Full-screen mode? What's that?)

The Mac version may be less behind than you realize - a Browser of sorts exists (type Cmd-B) and I added full screen mode (Cmd-F) in that last big CVS commit. The Browser does not have as many features as the Windows version but it's there. What is missing is an Eclipse Finder and Movie Capture but work is progressing on these right now.


Sorry if I was unclear... I actually meant the Mac OS was behind in OFFICIAL builds - not actually what was sitting waiting up at Source Forge. I'm actually very aware of the new Star Browser and full-screen mode that has been coded (thank you again! it's awesome)... it was just such efforts of yours that led me on my quest to learn how to build my own Celestia to begin with. Not that I'm complaining about what isn't there... I'm just happy for what is (so thank you a second time).

Steve aka Blinded

P.S. Just curious about a point of fact... how come features that are coded in what I thought was a platform independent language (C++) don't end up in ALL platforms' versions? My guess is that there's just certain things that are so OS specific they need special OS specific code?
Steven Binder, Mac OS X 10.4.10

BlindedByTheLight
Posts: 485
Joined: 19.03.2005
With us: 19 years 8 months
Location: Los Angeles, CA

Post #30by BlindedByTheLight » 16.06.2005, 01:30

t00fri wrote:Congratulations, Steven!

I mean it! I also know that after the first success of the kind you are describing, there is even a good feeling of achievement arising ;-) .

And re-building Celestia really doesn't have to last hours. After all, the operations are the same after each CVS update that one wants to include.

One lesson to keep in mind is that the 'make' tool controlling the build process is quite clever. It checks the date stamps of all files involved in the building and only redoes those that are "outdated", i.e. have been recently updated from CVS. Since the developers are not THAT fast, usually only a few files change and thus 'make' only orders to recompile those few files. This virtually works within a fraction of a minute!

Add another 30 seconds for uploading the few upgraded files and you will end up with a re-build time of Celestia in the 1-2 minute range at the worst!


Bye Fridger

Thanks Fridger. True, it was pretty cool when I finally got my own personal build working - almost as cool as the new features.

Happy to get some lessons but I was LOL'ing when I read them - and you'll see why in a moment...

One lesson to keep in mind is that the 'make' tool controlling the build process is quite clever.

Is the "make" tool the same thing as the "Build" command in Xcode? If so, so far so good.

It checks the date stamps of all files involved in the building and only redoes those that are "outdated", i.e. have been recently updated from CVS

I assume you are saying that some kind of "sync" function is at play - in that my computer checks in with CVS to see what's changed and downloads only the changed files? If so, I have the deeper problem of having NO clue how to do that. The way I got the files on my computer to begin with was a very scary venture into Mac OS X's terminal application (which is, if I'm not mistaken a command line interface into Unix?). I simply followed these instructions from Dirkpitt:

In the mean time, try these abbreviated instructions:
(0. If not already done so, install Xcode tools from the OS X CD/DVD)
1. Open Terminal
2. type, or paste in: cvs -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/celestia login
3. As the Password: prompt, hit return
4. Type: cvs -z3 -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/celestia co celestia
(the "co" indeed means "check out")
5. Wait for a while, until the download is complete
6. Navigate to the new "celestia" folder inside your home folder, look for the celestia.xcode file inside the "macosx" folder and double click it
7. Choose Build > Build and Debug, or Build and Run

I don't know squat about terminal and wasn't kidding when I said I was typing in commands like a monkey. I mean, I get the concepts, of course. But I don't have the knowledge (nor is the interface AT ALL intuitive) for me to go deeper. I'm assuming there has to be some kind of terminal command to "sync up" my hard-drive with the CVS master? Or, even better, an Xcode way of doing it? (I'm all about the GUI).

Since the developers are not THAT fast, usually only a few files change and thus 'make' only orders to recompile those few files. This virtually works within a fraction of a minute!

Truth be told, they I have just been erasing all my Celestia CVS files and just redownloading the entire thing when I see a change. Since I have a pretty fast pipe, it really only takes a few minutes anyway.

But there is another complication... I am not just building a version of Celestia off of the CVS code. I actually have been using a 3rd party patch courtesy of Joseph Wang...

http://www.gnacademy.org/twiki/bin/view ... Extensions

He added a fix for the orbit lines and then a great thing I had been begging for (displaying start and end times for spacecraft and a quick temporal go-to short-cut).

Since I'm not sure what that patch changes, I figured the safest thing for me to do is just re-download everything from scratch and start over and see if I can get his patch to apply. Takes a little extra work, but not too much.

Add another 30 seconds for uploading the few upgraded files and you will end up with a re-build time of Celestia in the 1-2 minute range at the worst!


Very true. However, to make it available to others, there's the added time of keeping an update list, setting the file up for others to download, and checking to make sure all the links are good. Multiply that by 10 because I have no idea what I'm going... and there goes half a day... :)

Thanks for the encouragement and advice, however. You have provided a path for which I can seek new knowledge.

Steve
Steven Binder, Mac OS X 10.4.10

Avatar
dirkpitt
Developer
Posts: 674
Joined: 24.10.2004
With us: 20 years 1 month

Post #31by dirkpitt » 16.06.2005, 06:25

BlindedByTheLight wrote:
t00fri wrote:One lesson to keep in mind is that the 'make' tool controlling the build process is quite clever. It checks the date stamps of all files involved in the building and only redoes those that are "outdated", i.e. have been recently updated from CVS. Since the developers are not THAT fast, usually only a few files change and thus 'make' only orders to recompile those few files. This virtually works within a fraction of a minute!

Is the "make" tool the same thing as the "Build" command in Xcode? If so, so far so good.

Yes, "Build" essentailly runs Xcode's own make system that only builds files that have changed.

It checks the date stamps of all files involved in the building and only redoes those that are "outdated", i.e. have been recently updated from CVS

I assume you are saying that some kind of "sync" function is at play - in that my computer checks in with CVS to see what's changed and downloads only the changed files?


No, you have to make sure your files contain the latest changes from CVS. This can be done from the Terminal using the "cvs update" command from the celestia directory. This can become complicated, which is why I didn't mention this earlier:

Code: Select all

cvs -z3 update -d -P


You should receive output that looks something like:

Code: Select all

? some_file_cvs_doesn't_know_about
U galaxy.cpp
U galaxy.h
P CelestiaController.h


The cvs command will try to intelligently merge code in the CVS server with the possibly modified copy on your own hard disk. "U" means the file was downloaded afresh, "P" means a merge occured and succeeded, and "?" you can just ignore.

However, sometimes this fails and you get "C", which means "Conflict". Cross your fingers and hope this doesn't happen - for now 8)

You can turn on CVS integration in Xcode, but I've found that CVS in Xcode sucks.

BlindedByTheLight
Posts: 485
Joined: 19.03.2005
With us: 19 years 8 months
Location: Los Angeles, CA

Post #32by BlindedByTheLight » 16.06.2005, 06:31

Thanks Dirkpitt... a few clarifications, though. Were the above instructions for just a general "making sure the code on my computer matches CVS" (for example, if you upload a new commit) or were your instructions specifically directed to the special-case of me using non-CVS patches to modify the code? Or is it something that could work for both?

Also, I assume you recommend I re-apply the non-CVS patch after syncing with source forge?

Thanks,
Steve
Steven Binder, Mac OS X 10.4.10

Avatar
dirkpitt
Developer
Posts: 674
Joined: 24.10.2004
With us: 20 years 1 month

Post #33by dirkpitt » 16.06.2005, 07:38

BlindedByTheLight wrote:Also, I assume you recommend I re-apply the non-CVS patch after syncing with source forge?


There's no need for that, CVS's automatic merging will attempt to make the CVS code "fit" with the patched code on your hard disk.

maxim
Posts: 1036
Joined: 13.11.2003
With us: 21 years
Location: N?rnberg, Germany

Post #34by maxim » 16.06.2005, 07:51

I'd suggest to use a pure checkout directory (i.e. calling it 'Celestia CVS Checkout') that you can easily keep updated using 'cvs update'. And, additionally, two directorys called 'CVS build' and 'CVS build patched' where you copy/overwrite the contents of the checkout directory into before building a new version. This way you always have a clean source in case something wents wrong. Of course you have to reapply the patches to the 'CVS build patched' contents after you've overwritten.

You could write a little script that does cvs checkout, copying, patching and rebuilding for you in one task.

maxim

Brendan
Posts: 296
Joined: 15.07.2003
With us: 21 years 4 months
Location: Bellows Falls, VT
Contact:

Post #35by Brendan » 16.06.2005, 08:39

Don't forget that the Windows executable of BCelestia is on my web page. :-D ;) I base it on the cvs code plus some of my additions and some from others like the extra mode for the info text. Some changes are in the Windows version like the GUI to select the extra info text mode and the reload menu options that I added. The executable on my site is at least a month old and I'll be updating it during the summer. Mostly, I'm focusing on adding stuff to the os independent code like begin and end times for locations. I can add stuff to the Windows GUI by studying the code already there, which is how I figured out how to add menu entities.
I also have another copy of the cvs code that do not have my changes. Maybe I could set it up to compile an executable.

Spaceman Spiff
Posts: 420
Joined: 21.02.2002
With us: 22 years 9 months
Location: Darmstadt, Germany.

Post #36by Spaceman Spiff » 16.06.2005, 15:08

Evil Dr Ganymede wrote:Do you think that other people have time to do this?! Good luck with it, but my experiences with Linux have been "this is the most complex, unfriendly, nightmarish OS I have ever had the misfortune to see". I used it only when I had to, never because I wanted to.

t00fri wrote:[snip] I have to inject here, before your grossly lacking information and your prejudice about the state of LINUX scare away "brave" people like Spiff!

Guys, guys!

Please! So much effort expended filling the forum up with contention, not solutions (for me ;) )!!!

No, I wouldn't want to inflict that on someone, EDG. I was actually being slightly selfish by raising the irony of the stuck perserverer to provoke a response to his unanswered query. I still think it's worth me continuing to strive even if I didn't get a response.

And do not worry Fridger! I'm not scared away. I wouldn't expect Evil Dr G's concerns to scare people away either. Most people either simply 'do' or 'don't' with technical things.


I've discovered there is a cliche about two natural populations of humans concerning computers: Users and Developers. We shouldn't get stuck on philosophising on that issue.

Evil Dr Ganymede wrote:To contribute anything to Celestia on the Windows side, I would have to learn C++, OpenGL [snip]


Apparently not. As I mentioned, it seems possible to cross-compile Celestia on a Linux system for Windows. One doesn't need to know C++ and OpenGL for that, but to understand GNU autotools: autoconf, automake. Sadly, GNU Autotools puts Linux in the weeds for complexity, because it is intended to anticipate the needs for more systems than just PCs running Windows and Linux, and Macs. I would feel very chuffed with myself if I got to the stage where I could compile a Windows version for you on my Linux system.

However, remember that I'm going the Linux route because I do want to eventually add and improve features by coding C++, OpenGL, whatever it takes, not just to have the latest cvs snapshot.

I must say I am amazed at what is being achieved by the likes of Stallman (GNU and FSF) and Torvalds (Linux), and of course our benefactor: Chris! ;). I feel I have a chance to make a difference and do things I only dreamed about. I've just got to keep going.

What else can I say? Well this:

EDG: if you last used Linux in 2002, I can tell you many issues with useability have advanced since then. I installed Mandrake Linux 10.1, with KDE desktop 3.2. That was from a year ago. There's ML10.2 now, but I'm tempted to try out the blessed Ubuntu or Gentoo versions, based on repeated testemonies from people who say they're so easy to install now. There are CD-ROM Linuxes now that run read-only off a CD, no need to install to HD, even!

For your display size example, KDE 3.2 has analogous control panels GUIs for selecting new modes. I've never looked at ... , what was it: /etc/wot?

Another thing I found, for everyone who's interested: if you're new to Linux, there is the Linux Documentation Project, with it's HowTo's. Actually, I found many HowTo's way over my head or too niche when I just wanted a detailed, intelligent but not obscure introduction for Linux. However, I found this no-longer-maintained document is the best for it: Linux Installation and Getting Started. It's not updated since 2002 I think, and yet it is the perfect level for introducing how Linux works (typically via command interface) to the intelligent person.

As for the Windows issue: What about Paolo and his Sticky: A primer for new C++ developer volunteers on Win XP thread? Could there be hope there? He seems very friendly.

Oh, I wonder if Chris was gutted to learn Macs will change to run on Intel chips just as his new Mac turned up?

OaO,

Spiff.

julesstoop
Posts: 408
Joined: 27.03.2002
With us: 22 years 8 months
Location: Leiden, The Netherlands

Post #37by julesstoop » 16.06.2005, 17:27

Oh, I wonder if Chris was gutted to learn Macs will change to run on Intel chips just as his new Mac turned up?


Off topic, but I couldn't resist.

I know quite some people who bought Macs recently and a few are developers as well. None of them I heard have felt any remorse. I mean, it's not as if the PPC all of a sudden became a useless cpu nor as if Apple will drop support before 2010 (suposedly 2012)
Lapinism matters!
http://settuno.com/

Topic author
Evil Dr Ganymede
Posts: 1386
Joined: 06.06.2003
With us: 21 years 5 months

Post #38by Evil Dr Ganymede » 16.06.2005, 18:49

Despite Fridger's attempts to misrepresent what I said, I wasn't complaining about Linux to put Spiff off, I was just saying what my experiences with it have been like. I just don't like Linux, period, and it would take a truly dazzling demonstration of its capabilities right in front of me to make me even want to look at it again.

I was having a look at the sticky Windows C++ primer thread and my eyes were glazing over. It's just incomprehensible to me.

I am very much a "User" - so are a lot of people who use Windows. Most people who use Linux are more like the Developer breed, because you've got to get your hands dirty going under the hood with that. Despite what some people might imply, this is nothing to do with intelligence or laziness - it's just different mindsets.

BlindedByTheLight
Posts: 485
Joined: 19.03.2005
With us: 19 years 8 months
Location: Los Angeles, CA

Post #39by BlindedByTheLight » 16.06.2005, 19:15

Evil Dr Ganymede wrote:I am very much a "User" - so are a lot of people who use Windows.


I bet they are. But, again, for the record - and to use a car analogy... if the average Linux user is like an automotive engineer who actually builds engines...

...then Windows users are like the average car driver who doesn't know squat about that engineering stuff (but can check the tire pressure and knows how to fill windshield wiper fluid)...

...and what does that make the average Mac user? That makes the average Mac user the old lady who rides in the back of the limo and doesn't even KNOW what tire pressure or windshield wiper fluid is.

All she knows is, she gets in the car and it goes. Period.

Me... I'm a Mac user. And if we ass-backwards, rich-old-lady users who don't know a limo driver from a mouse driver can figure out how to build our own versions of Celestia (eyes glazing over and all X10 as we read up on the subject) with only 1/90th of the support out there from fellow platform users... well, I have no doubts the average Windows User can do it, too.

With a little effort, of course... :)
Steven Binder, Mac OS X 10.4.10

Topic author
Evil Dr Ganymede
Posts: 1386
Joined: 06.06.2003
With us: 21 years 5 months

Post #40by Evil Dr Ganymede » 16.06.2005, 21:09

BlindedByTheLight wrote:Me... I'm a Mac user. And if we ass-backwards, rich-old-lady users who don't know a limo driver from a mouse driver can figure out how to build our own versions of Celestia (eyes glazing over and all X10 as we read up on the subject) with only 1/90th of the support out there from fellow platform users... well, I have no doubts the average Windows User can do it, too.

With a little effort, of course... :)


Isn't Mac OS X basically a pretty front end for a custom version of Linux now?

Anyway, you want to tinker with Celestia, that's great. But that's the key - you WANT to do it. I don't. I have other things to do with my time than spend it learning how to compile programs.


Return to “Development”