Unfortunately, I still am having a lot of trouble. If anyone can help a development n00b (I think my woes deserve this title), read on. Big hat tip to Robert, though, for linking to the very informative September 20, 2007 sage-devel discussion.
I have tried following the instructions in that discussion. Creating the first alternate branch seemed to work. However, I got a message similar to the following, where libcsage.dylib seems to disappear. ---------------------------------------------------------- sage: Building and installing modified SAGE library files. Installing c_lib g++ -o libcsage.dylib -single_module -flat_namespace -undefined dynamic_lookup -dynamiclib src/convert.os src/interrupt.os src/ mpn_pylong.os src/mpz_pylong.os src/stdsage.os src/gmp_globals.os src/ ZZ_pylong.os src/ntl_wrap.os -L/Applications/sage-scratch/local/lib - lntl -lgmp -lpari ld: flag: -undefined dynamic_lookup can't be used with MACOSX_DEPLOYMENT_TARGET environment variable set to: 10.1 /usr/bin/libtool: internal link edit command failed scons: *** [libcsage.dylib] Error 1 ERROR: There was an error building c_lib. real 0m4.317s user 0m1.768s sys 0m1.035s Then I tried to see what was going on with sage -hg status and got abort: There is no Mercurial repository here (.hg not found)! which might not be too surprising since I hadn't made any changes yet; even the file mercurial-howto.txt wasn't clear on this. But then the command sage -t /devel/sage-hackbranch/sage/graphs/graph_generators.py failed precisely because this library was gone (referenced from /local/ lib/python/site-packages/sage/rings/memory.so). So I tried to actually just use sage. To my surprise, now I got a long error message which ended <type 'exceptions.ImportError'>: dlopen(/Applications/sage-scratch/ local/lib/python2.5/site-packages/sage/misc/misc_c.so, 2): Library not loaded: libcsage.dylib Referenced from: /Applications/sage-scratch/local/lib/python2.5/site- packages/sage/misc/misc_c.so Reason: image not found <ERROR: name 'sage_prompt' is not defined> Several attempts at getting back to the main branch failed - I created a new alias back to the main branch manually (in OSX), I did sage -b main but from now on my backup copy of sage seems fried. In fact, in Spotlight I searched for libcsage.dylib. The first time it showed up in the main branch of my backup sage copy and in the main branch of my normal sage copy. Now, after the attempts to get to the main branch of the backup copy, it only shows up in the normal sage copy - it has disappeared from the main branch of the backup copy! One point of this is that I'm asking whether I can resurrect any branch of my backup copy of Sage. But the real point of all this is that we need a third tier of Mercurial usage instructions/development instructions, because I have a gut sense that I just mucked something up with a command or opening a file that I didn't even know I wasn't allowed to use while doing the development process. The top level, in the mercurial-howto.txt file, is good for people with a lot of development experience. The second level, Robert's excellent instructions from September 20th, is for people with a little bit of experience with this (in fact, maybe these two should be collated in some fashion). People like me need an even more basic level - do I need to create a repository, how do I do that, or maybe just what IS a repository, how long should it take to clone or run sage -br, why can't I just write some code and send it to somebody, etc. Step by step from the idea to add function(x) to where to find the files to edit to what the process for this is (I was just using XCode - is there a Sage-internal way to edit the files which I was supposed to use? That could account for my problems...) to how to use Mercurial to testing the functions to committing them to sending the patch in. And whatever else I missed since I haven't actually done it yet! And for good measure, while I'm asking for the proverbial pie in the sky, add something about how to contribute a "trac" too, though I'm sure that documentation exists elsewhere. The bottom line is this: If William's goal is really to have *every* user be a developer (or at least to contribute very minor documentation corrections or tests, if that counts as developing), as he's stated numerous times, and if the rest of the main Sage development team agrees, then somewhere down the line there needs to be something created as user-friendly with respect to this as the "Evaluate" button or the extra info about Shift-Enter which has been discussed recently is for end users. I really do want to contribute in whatever way I can, but trying to figure it all out myself in limited evening time away from a network connection is just too big a challenge. Hence, thanks for any and all responses. -kcrisman --~--~---------~--~----~------------~-------~--~----~ To post to this group, send email to [email protected] To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/sage-support URLs: http://www.sagemath.org -~----------~----~----~----~------~----~------~--~---
