From: Chris B. <c.j...@ed...> - 2004-07-29 00:18:31
|
Hi, I have a small query. My install of ode doesn't include the trimesh stuff, because OPCODE in ODE doesn't seem to compile on linux at all. The older 1.2.1 linux port appears to be incompatible with the 1.3 code bundled with ODE. Pyode wraps the class anyway, so I get: $ python Python 2.3.3 (#1, May 14 2004, 03:14:07) [GCC 3.3.2 20031218 (Gentoo Linux 3.3.2-r5, propolice-3.3-7)] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>> import ode Traceback (most recent call last): File "<stdin>", line 1, in ? ImportError: /usr/lib/python2.3/site-packages/ode.so: undefined symbol: dGeomTriMeshGetTriangle >>> If I remove GeomTriMesh class from geoms.pyx there is no problem. So I guess my question is 1) can the pyode script automagically detect whether this class is available and wrap appropriately? 2) Is nobody else using linux? How are you guys compiling the Opcode library? Thanks, Chris |
From: brett h. <bha...@ya...> - 2004-07-29 01:15:19
|
I'm sure i missed this from a previous mail, but how do i build it the latest CVS? I just checked it out and tried 'make' and 'python setup.py install' make says: make: *** No targets specified and no makefile found. Stop. setup.py says: ERROR: [Errno 2] No such file or directory: '../ode/config/user-settings' Aborting! I read the README, but it seem like generic install info. Note: i'm using redhat9 thanks, -brett --- Chris Bainbridge <c.j...@ed...> wrote: > Hi, I have a small query. My install of ode doesn't include the trimesh stuff, > because OPCODE in ODE doesn't seem to compile on linux at all. The older > 1.2.1 linux port appears to be incompatible with the 1.3 code bundled with > ODE. Pyode wraps the class anyway, so I get: > > $ python > Python 2.3.3 (#1, May 14 2004, 03:14:07) > [GCC 3.3.2 20031218 (Gentoo Linux 3.3.2-r5, propolice-3.3-7)] on linux2 > Type "help", "copyright", "credits" or "license" for more information. > >>> import ode > Traceback (most recent call last): > File "<stdin>", line 1, in ? > ImportError: /usr/lib/python2.3/site-packages/ode.so: undefined symbol: > dGeomTriMeshGetTriangle > >>> > > If I remove GeomTriMesh class from geoms.pyx there is no problem. So I guess > my question is 1) can the pyode script automagically detect whether this > class is available and wrap appropriately? 2) Is nobody else using linux? How > are you guys compiling the Opcode library? > > Thanks, > Chris > > > ------------------------------------------------------- > This SF.Net email is sponsored by BEA Weblogic Workshop > FREE Java Enterprise J2EE developer tools! > Get your free copy of BEA WebLogic Workshop 8.1 today. > http://ads.osdn.com/?ad_id=4721&alloc_id=10040&op=click > _______________________________________________ > Pyode-user mailing list > Pyo...@li... > https://lists.sourceforge.net/lists/listinfo/pyode-user > __________________________________ Do you Yahoo!? Read only the mail you want - Yahoo! Mail SpamGuard. http://promotions.yahoo.com/new_mail |
From: Timothy S. <ti...@st...> - 2004-07-29 04:54:34
|
On Thu, 2004-07-29 at 03:15, brett hartshorn wrote: > setup.py says: > ERROR: [Errno 2] No such file or directory: '../ode/config/user-settings' > Aborting! You either need to extract the ODE sources to a directory 'ode' in the same directory that contains 'pyode'. Alternatively, you can create a symlink to the ODE sources. > I read the README, but it seem like generic install info. I think we should add an option to setup.py to let users tell it where the ODE sources are kept or simply whether the user wants it to be compiled with double or float precision so it doesn't need to parse user-settings at all. --=20 Timothy Stranex <ti...@st...> |
From: brett h. <bha...@ya...> - 2004-07-29 19:08:57
|
Cool thanks, it builds and installs now. But i'm gettin this error: >>> import ode Traceback (most recent call last): File "<stdin>", line 1, in ? ImportError: /usr/lib/python2.2/site-packages/ode.so: undefined symbol: dGeomTriMeshGetTriangle I guess that i should disable the OPCODE and Trimesh stuff? -brett __________________________________ Do you Yahoo!? New and Improved Yahoo! Mail - Send 10MB messages! http://promotions.yahoo.com/new_mail |
From: Matthias B. <ba...@ir...> - 2004-07-29 20:29:28
|
brett hartshorn wrote: > Traceback (most recent call last): > File "<stdin>", line 1, in ? > ImportError: /usr/lib/python2.2/site-packages/ode.so: undefined symbol: dGeomTriMeshGetTriangle > > I guess that i should disable the OPCODE and Trimesh stuff? Exactly. I've just checked in a modification that allows you to disable trimesh support in the setup script. If you set the variable TRIMESH_SUPPORT to False you only get dummy trimesh classes and no trimesh C function should be called within the module. Here's what I did: I've moved the trimesh geom class out of geoms.pyx into its own file trimesh.pyx. The setup script creates an intermediate file _trimesh_switch.pyx that either includes the files trimesh.pyx and trimeshdata.pyx or the file trimesh_dummy.pyx. This intermediate file is included in ode.pyx. The file trimesh_dummy.pyx also defines the TriMeshData and GeomTriMesh classes but they will raise NotImplementedError exceptions in their constructors. - Matthias - |
From: brett h. <bha...@ya...> - 2004-07-29 23:03:31
|
Cool, installed and tested it. tutorial2.py and test_xode.py both work; haven't installed pygame or PyOpenGL to test the others yet. Cheers, -brett --- Matthias Baas <ba...@ir...> wrote: > brett hartshorn wrote: > > Traceback (most recent call last): > > File "<stdin>", line 1, in ? > > ImportError: /usr/lib/python2.2/site-packages/ode.so: undefined symbol: > dGeomTriMeshGetTriangle > > > > I guess that i should disable the OPCODE and Trimesh stuff? > > Exactly. I've just checked in a modification that allows you to disable > trimesh support in the setup script. If you set the variable > TRIMESH_SUPPORT to False you only get dummy trimesh classes and no > trimesh C function should be called within the module. > > > Here's what I did: I've moved the trimesh geom class out of geoms.pyx > into its own file trimesh.pyx. The setup script creates an intermediate > file _trimesh_switch.pyx that either includes the files trimesh.pyx and > trimeshdata.pyx or the file trimesh_dummy.pyx. This intermediate file is > included in ode.pyx. > The file trimesh_dummy.pyx also defines the TriMeshData and GeomTriMesh > classes but they will raise NotImplementedError exceptions in their > constructors. > > - Matthias - > > > ------------------------------------------------------- > This SF.Net email is sponsored by OSTG. Have you noticed the changes on > Linux.com, ITManagersJournal and NewsForge in the past few weeks? Now, > one more big change to announce. We are now OSTG- Open Source Technology > Group. Come see the changes on the new OSTG site. www.ostg.com > _______________________________________________ > Pyode-user mailing list > Pyo...@li... > https://lists.sourceforge.net/lists/listinfo/pyode-user > __________________________________ Do you Yahoo!? Yahoo! Mail - 50x more storage than other providers! http://promotions.yahoo.com/new_mail |
From: Matthias B. <ba...@ir...> - 2004-07-29 10:05:11
|
Timothy Stranex wrote: > On Thu, 2004-07-29 at 03:15, brett hartshorn wrote: > >>setup.py says: >>ERROR: [Errno 2] No such file or directory: '../ode/config/user-settings' >>Aborting! > > You either need to extract the ODE sources to a directory 'ode' in the > same directory that contains 'pyode'. Alternatively, you can create a > symlink to the ODE sources. Either that, or modify the variable ODE_BASE in the setup script. I have updated the file INSTALL that mentions the distutils now. > I think we should add an option to setup.py to let users tell it where > the ODE sources are kept Agreed. However, I don't know what the "official" way is to introduce new options to the setup script. There's the possibility to have a setup.cfg file where you can keep default parameters that can also modified on the command line, but I haven't seen anything that lets me define new parameters. By the way, what's the preferred location for the ODE include files and libs on Linux? Should the script use something like /usr/include and /usr/lib as default paths? Or do you actually keep ODE in a separate directory? And another thing, I just realized that since Pyrex 0.9.3 we don't have to parse the ODE user-settings file anymore because it finally puts the typedef name into the generated C file. This means wherever "dReal" is used in the *.pyx file it will remain "dReal" in the C file and will not be replaced by "float" or "double". So we don't have to care anymore if ODE was compiled using single or double precision. We will automatically use the correct precision. I'll commit the modified setup script later today. Or are there any objections (i.e. is there a reason why you can't upgrade to Pyrex 0.9.3)? > or simply whether the user wants it to be compiled with double or float precision This decision is already made when ODE itself is compiled. There's no choice anymore for PyODE. But as I said above, with Pyrex 0.9.3 all this is obsolete anyway. - Matthias - |
From: Timothy S. <ti...@st...> - 2004-07-29 15:54:33
|
On Thu, 2004-07-29 at 12:04, Matthias Baas wrote: > By the way, what's the preferred location for the ODE include files and=20 > libs on Linux? Should the script use something like /usr/include and=20 > /usr/lib as default paths? Or do you actually keep ODE in a separate=20 > directory? The ODE documentation gives /usr/local/include and /usr/local/lib as examples. If users compile ODE themselves, this is probably where they will put them. However, if they install ODE with a binary package (like an RPM, DEB or Ebuild), it will probably be installed in /usr/include and /usr/lib. > I'll commit the modified setup script later today. Or are there any=20 > objections (i.e. is there a reason why you can't upgrade to Pyrex 0.9.3)? No objections; I am looking forward to it. --=20 Timothy Stranex <ti...@st...> |
From: Timothy S. <ti...@st...> - 2004-07-29 04:57:30
|
On Thu, 2004-07-29 at 02:18, Chris Bainbridge wrote: > 2) Is nobody else using linux? How=20 > are you guys compiling the Opcode library? I'm using Gentoo Linux. I used the OPCODE sources that came in the ODE distribution. I think they've been modified to work on Linux. In your user-settings file, set OPCODE_DIRECTORY=3DOPCODE and it should compile. --=20 Timothy Stranex <ti...@st...> |
From: Chris B. <C.J...@ed...> - 2004-07-29 10:45:23
|
On Thursday 29 July 2004 05:16, Timothy Stranex wrote: > On Thu, 2004-07-29 at 02:18, Chris Bainbridge wrote: > > 2) Is nobody else using linux? How > > are you guys compiling the Opcode library? > > I'm using Gentoo Linux. I used the OPCODE sources that came in the ODE > distribution. I think they've been modified to work on Linux. In your > user-settings file, set OPCODE_DIRECTORY=OPCODE and it should compile. Thanks, it worked, can't believe it was that easy! The ode readme specifically states it won't build opcode for you, but it will. |
From: Matthias B. <ba...@ir...> - 2004-07-29 10:19:35
|
Chris Bainbridge wrote: > If I remove GeomTriMesh class from geoms.pyx there is no problem. So I guess > my question is 1) can the pyode script automagically detect whether this > class is available and wrap appropriately? Maybe an option to exclude trimesh support should really be added as I've just noticed that compiling PyODE with double precision (that has no trimesh support) also results in linker errors. I'll see if I can get that done this weekend. - Matthias - |
From: Chris B. <C.J...@ed...> - 2004-07-29 11:01:08
|
On Thursday 29 July 2004 11:19, Matthias Baas wrote: > Chris Bainbridge wrote: > > If I remove GeomTriMesh class from geoms.pyx there is no problem. So I > > guess my question is 1) can the pyode script automagically detect whether > > this class is available and wrap appropriately? > > Maybe an option to exclude trimesh support should really be added as > I've just noticed that compiling PyODE with double precision (that has > no trimesh support) also results in linker errors. > > I'll see if I can get that done this weekend. > > - Matthias - I just compiled both with double precision and didn't get any errors. At least 'import ode' now works, thats the furthest I've got so far ;-) |