[00:01:49] |sueasts| has joined #peragro-dev
[00:02:09] <thebolt> so, it actually compiles?
[00:04:00] <|sueasts|> grr
[00:05:04] <|sueasts|> thebolt: yes, pythontest crashes somewhere in filesystem.cpp line 82, unittest runs without errors...
[00:05:21] ChanServ sets mode: +o sueastside
[00:06:13] <thebolt> okay, ehm, line 82?
[00:06:46] <sueastside> well it breaks there, dont ask me why :)
[00:28:01] <thebolt> okay, i have to sleep soon.. but i will continue to work on some python stuff
[00:28:40] <thebolt> there are a few other "base" systems that we would need pretty soon.. maybe something if you are intrested? one is a decent file system way (ie replace the file system in there now;) another is a way to read config values
[00:30:39] <sueastside> what kind of config files? xml, ini?
[00:30:47] <thebolt> whichever you prefer
[00:32:46] <JohnTitor> SVN--> thebolt commited r568 to peragro_src with log message: - Marten made the python autoexec.py file load a command prompt., - Marten worked some more on tasklet creation. Soon works as it should. (+181, -3).
[00:33:14] <thebolt> sueastside: if you compile it and then run pythontest.exe from the main directory you should see a python console now, right?
[00:34:51] <sueastside> thebolt: yup
[00:35:35] <thebolt> good :)
[00:36:03] <thebolt> so enough coding for tonight, time for some tea :)
[00:43:47] <iceeey> night thebolt
[00:43:57] <iceeey> i mean
[00:44:00] <iceeey> tea, thebolt
[00:49:18] <thebolt> btw iceeey .. any trip to europe this summer? ;)
[00:49:26] <iceeey> hehe, perhaps
[00:50:54] <iceeey> actually, that will be impossible since i only exist in your imagination
[00:50:57] <CyaNox> sueastside: What kind of object (3D) do you need soon? I might have some spare time to models ome stuff.
[00:51:13] <thebolt> iceeey: damn :P
[00:52:40] <sueastside> CyaNox: dont know, might you be interested in the canopy town thingie? but still need concept, ideas, input for it...
[00:53:17] <CyaNox> I prefere to do something small that does not take much time but still needs doing.
[00:53:56] <sueastside> inside of a shop?
[00:54:20] <CyaNox> possibly ... what kind of shop ... any concepts?
[00:56:00] <sueastside> alchemy/weapon/stripbar/taverne take your pick :)
[00:56:31] <iceeey> sueastside, when opentree becomes usable, we'll have some fun with canopy town :)
[00:57:04] <sueastside> iceeey: unless you can generate huts aswell, wont really change anything :)
[00:57:17] <iceeey> i can generate huts :)
[00:57:26] <iceeey> just make a HutGenerator
[00:59:46] <thebolt> iceeey: so, what would it take to get you to at least start looking at the code? ;)
[00:59:48] <sueastside> actually an interieurgenerator would be cooler, i hate doing that :)
[01:00:23] <iceeey> thebolt, I will look at it tonight
[01:00:43] <iceeey> we can figure out a plan tomorrow
[01:01:28] <thebolt> okay :) even if you don't have time to start with anything big right now, it would be nice if we both knew the code etc ;)
[01:01:41] <thebolt> btw, the "microthread.cpp" stuff should be reimplemented within the PyCore class
[01:02:18] <thebolt> and the "pseudo-static" instances of FS and PyCore will be directly exposed to python instead of via a getter.. but that is minor stuff
[01:07:01] <iceeey> data/python/autoexec.py and data/system/autoexec.py -- what's the difference?
[01:08:32] <thebolt> the data/python is from my old test-code
[01:08:38] <thebolt> and data/system is "new"
[01:08:42] <thebolt> but the file itself is just a copy
[01:08:44] <thebolt> :)
[01:09:01] <thebolt> (just as microthread.cpp is directly taken from my test-code.. )
[01:12:12] <iceeey> ok
[01:18:58] <iceeey> interesting boost::scoped_ptr :)
[01:21:48] <thebolt> :)
[01:25:06] <iceeey> so in a nutshell, you initialize python, register the PT module, import PT, add a __main__ module, store the __main__ dictionary so you can run loaded scripts with it
[01:26:07] <thebolt> yea
[01:26:49] <thebolt> what took most of the prototyping time to find out was how to do the stuff in microthreads.cpp (ie how to interact with stackless from c++.. there aren't that many exaples really :P)
[01:27:14] <iceeey> i haven't looked at that yet
[01:27:25] <iceeey> pythoninit.cpp -- that's old stuff right?
[01:28:31] <thebolt> yes
[01:31:57] <thebolt> i should have cleaned it up, but i wanted to get something in today
[01:32:00] <thebolt> and now it is bedtime
[01:32:15] <iceeey> okay, I'll try and compile it later and maybe play around with it
[01:32:20] <iceeey> sleep well
[02:31:48] iceeey_ has joined #peragro-dev
[02:34:01] iceeey has quit: Read error: 110 (Connection timed out)
[08:07:16] thebolt|zzz changed nick to: thebolt
[13:19:47] sueastside has joined #peragro-dev
[13:19:48] ChanServ sets mode: +o sueastside
[18:13:41] iceeey has joined #peragro-dev
[18:13:41] ChanServ sets mode: +o iceeey
[18:29:43] <iceeey> thebolt, i need stackless 2.5?
[18:30:57] <sueastside> yes
[18:32:54] <thebolt> well, that is what i used, i don't know if 2.4 works
[18:33:01] <thebolt> but i would say 2.5
[18:33:46] <iceeey> ok
[18:34:11] <thebolt> hm, i need to eat..
[18:34:22] <sueastside> good idea!
[18:34:31] * sueastside gets a sandwhich...
[18:58:35] <iceeey> heh, in stackless-2.5-export.tar.bz2, everything has \r\n line-endings
[19:46:01] theboltEatingStu changed nick to: thebolt
[20:01:09] iceeey has quit: Read error: 60 (Operation timed out)
[20:17:06] iceeey has joined #peragro-dev
[20:17:07] ChanServ sets mode: +o iceeey
[20:21:40] <iceeey> thebolt, anything i need to link with other than -lpython2.5?
[20:22:58] <thebolt> iceeey: boost-python
[20:23:08] <iceeey> sorry, I mean for stackless
[20:23:13] <thebolt> no, shouldn't be
[20:23:38] <iceeey> ok, I'm getting an undefined reference to PyChannel_New in the configure test program i wrote
[20:24:40] <thebolt> hm, seems your python doesn't include stackless then
[20:25:01] <iceeey> but it does :)
[20:25:09] <thebolt> does it export PyChannel_New?
[20:25:21] <thebolt> (and it selects the right python library? ;)
[20:25:35] <iceeey> it's using the one in /usr/local which is the stackless one I just compiled
[20:25:50] <iceeey> unless I needed to specify a certain option to compile in the stackless stuff
[20:26:29] <thebolt> no idea about the unix build, might be..
[20:35:50] <iceeey> hm, I do see some .o files in the Stackless subdir :)
[20:37:00] <thebolt> objdump -t or -T on the python .so maybe?
[20:37:02] <iceeey> well, I can import stackless on the interactive shell
[20:45:36] <iceeey> hm, perhaps i didn't build the shared lib
[20:45:42] <iceeey> i can't seem to find it :)
[20:53:41] <iceeey> i copied it manually :P
[20:55:33] <showergirl> tsk
[21:02:36] <iceeey> hm
[21:03:09] <iceeey> boost::python names itself libboost_python-gcc.so
[21:04:50] <thebolt> that is the static lib
[21:05:10] <thebolt> at least on msvc it works much better with the dynamic lib
[21:05:21] <thebolt> or hm.. .so.. not static ,)
[21:05:23] <thebolt> so yea
[21:05:58] <thebolt> for msvc itis boost_python-vc80-mt-.lib/dll
[21:07:56] <showergirl> And i thought it was tricky to compile on win :)
[21:09:11] <iceeey> well I'm not just compiling it, I'm setting up auto-detection
[21:09:20] showergirl changed nick to: sueastside
[21:10:08] <iceeey> checking whether the Boost::Python library is available... yes
[21:10:08] <iceeey> checking for main in -lboost_python... no
[21:10:20] <thebolt> hm, there shouldn'
[21:10:22] <iceeey> of course libboost_python.so doesn't exist
[21:10:40] <thebolt> shouldn't be a main there i think.. or maybe there should ;)
[21:13:04] <iceeey> hm, you can specify the suffix with --with-boost-python=gcc
[21:13:17] <iceeey> so now it finds main
[21:13:54] <iceeey> now linking works :)
[21:15:07] <iceeey> wait, i take that back :/
[21:16:10] <iceeey> i get a whole bunch of ugly linker errors referring to boost python or so
[21:18:46] <iceeey> hm, i see the problem
[21:18:51] <iceeey> it's trying to link with -lgcc now
[21:18:57] <iceeey> :)
[21:22:41] <iceeey> haha
[21:22:43] <iceeey> and it found main in -lgcc, so the test passed
[21:23:25] <thebolt> :P
[21:24:02] <iceeey> i wonder if I modified it or if it was really buggy to begin with
[21:24:39] <iceeey> apparently it's buggy to begin with
[21:24:57] <sueastside> yeah blame the other guy :P
[21:25:33] <iceeey> or rather, it could be correct but since -lgcc does have main and specifying the gcc suffix is common, it might incorrectly pass
[21:26:13] <iceeey> actually, there's no way to know if you are specifying a suffix or the full lib name
[21:26:38] <iceeey> so a better check might be for main and some boost python class/function
[21:27:32] <thebolt> well, it isn't supposed to have a main i think
[21:28:54] <iceeey> probably not
[21:31:30] <iceeey> do you know a good symbol to check for?
[21:42:39] <iceeey> actually, nevermind
[21:42:45] <iceeey> i'll just rewrite the test
[21:53:25] Lightwave has joined #Peragro-Dev
[21:53:25] ChanServ sets mode: +v Lightwave
[22:02:12] <iceeey> autoconf macros are a pain :P
[22:03:09] <thebolt> yes .)
[22:29:54] <thebolt> hm, i can going to wrap the stackless.tasklet and stackless.channel stuff in private objects to be able to attach more information to them.. any objection?
[22:32:27] <thebolt> or hm.. not good either :/
[22:32:47] <thebolt> or well, i can do it if i do a manual python extension of those.. so it seems i have to go that route after all
[22:35:37] <thebolt> btw, you have any idea about precompiled headers in gcc?
[22:39:03] <iceeey> ha! finally!
[22:39:14] <iceeey> no idea about precompiled headers
[22:39:15] <thebolt> :)
[22:39:22] <thebolt> i just read up some, seems to be same as for msvc
[22:39:29] <thebolt> will probably help build-times alot
[22:39:33] <thebolt> the boost::python headers are heavy..
[22:39:37] <iceeey> right
[22:39:49] <iceeey> how do you do it?
[22:40:58] <thebolt> http://gcc.gnu.org/onlinedocs/gcc/Precompiled-Headers.html
[22:42:06] <iceeey> doesn't MSVC use .pch or so?
[22:42:20] <thebolt> for the generated precompiled header, yes
[22:42:51] <thebolt> and gcc use .gch
[22:44:34] <iceeey> get CS to integrate precompiled headers into their buildsystem and then copy it over :)
[22:45:08] <thebolt> hehe
[22:57:50] <iceeey> should pythontest output anything?
[22:58:03] <sueastside> should give a python console
[22:58:07] <iceeey> shoot
[22:58:18] <sueastside> if you have latest svn that is...
[22:58:39] <sueastside> the version before that didnt :)
[22:59:00] <iceeey> of what?
[22:59:00] <iceeey> ah
[22:59:01] <iceeey> 568
[23:00:52] <iceeey> well it just exits immediately
[23:02:03] <thebolt> well, from what directory do you run it?
[23:02:34] <iceeey> the root
[23:03:17] <thebolt> hm, okay
[23:03:23] <thebolt> i guess you will have to do some debugging yourself :/
[23:03:28] <iceeey> bah
[23:03:33] <thebolt> it isn't very failsafe yet ;)
[23:03:38] <iceeey> hehe
[23:04:44] <iceeey> well it seems to map the directory correctly, as i get an exception if I run it from another dir
[23:05:53] <thebolt> okay
[23:06:31] <thebolt> try to put a printf in pycore.cpp right before PY::handle<> result (PY::allow_null ( PyRun_StringFlags (scriptString.get (), Py_file_input, internals->globalDict.ptr (), internals->globalDict.ptr (), 0)));
[23:07:48] <iceeey> it prints
[23:08:04] <thebolt> okay hm..
[23:08:14] <thebolt> what if you print the content of scriptString.get() ?
[23:08:21] <iceeey> sys:autoexec.py
[23:08:31] <iceeey> bah
[23:08:47] <thebolt> it prints the content of that file ?
[23:08:54] <iceeey> yes
[23:09:01] <thebolt> hm.. wonder why it doesn't run..
[23:09:13] <thebolt> ah, if you start a python shell and try the "interactive console" stuff.. it works? ;)
[23:09:29] <iceeey> yes
[23:09:51] <thebolt> okay, hm, you could remove everything but the interactive console startup there
[23:09:52] |sueasts| has joined #peragro-dev
[23:09:56] <thebolt> the other things don't add anything
[23:10:35] <iceeey> putting a printf in that if(!result) block prints
[23:10:42] <thebolt> hm, okay
[23:10:46] <thebolt> means execution of that string failed
[23:10:54] <iceeey> right
[23:12:00] ChanServ sets mode: +o sueastside
[23:12:04] <iceeey> so just import code and code.interact("...") ?
[23:12:51] <thebolt> yes
[23:12:57] <iceeey> no go
[23:13:22] <iceeey> print "Test" in there doesn't work either
[23:13:52] <iceeey> unless it isn't supposed to work :)
[23:16:19] candela has joined #peragro-dev
[23:16:42] candela has parted: "deleting all data"
[23:17:47] <thebolt> it is.. hm..
[23:26:19] <iceeey> any ideas?
[23:40:38] <thebolt> hm.. not really
[23:40:49] <iceeey> perhaps the __main__ namespace is not valid?
[23:41:02] <thebolt> you could try to remove the PY::allow_null thingy
[23:41:07] <thebolt> yea, check that
[23:41:26] <thebolt> another thing is to run PyRun_.. all by itself, and use the python functions to check for error
[23:41:59] <iceeey> i tried removing the allow_null, got: terminate called after throwing an instance of 'boost::python::error_already_set'
[23:44:44] <iceeey> File "", line 1
[23:44:44] <iceeey> print "Hi"
[23:44:44] <iceeey> ^
[23:44:44] <iceeey> SyntaxError: invalid syntax
[23:44:52] <thebolt> okay, means that PyRun_StringFlags somewhy gives an error
[23:44:59] <thebolt> ah, might it be dos vs unix line endings?
[23:45:03] <thebolt> try to run dos2unix on the file
[23:45:04] <iceeey> could be :)
[23:45:24] <iceeey> works :P
[23:45:41] <thebolt> :)
[23:46:01] |sueasts| has joined #peragro-dev
[23:46:35] <thebolt> that is one thing i will add pretty soon too.. some decent error reporting ,)
[23:47:47] <iceeey> okay :)
[23:50:44] <iceeey> do you have local changes?
[23:51:41] <thebolt> yes, heaps
[23:52:01] <iceeey> ok, but i don't think setting the eol-style = native affects that, does it?
[23:52:21] <iceeey> well, I will wait, doesn't matter
[23:53:17] ChanServ sets mode: +o sueastside