Summary: | pyode-1.1.0 compilation fails (gcc-4.1) | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | Frédéric COIFFIER <fcoiffie> |
Component: | [OLD] GCC Porting | Assignee: | Python Gentoo Team <python> |
Status: | RESOLVED FIXED | ||
Severity: | normal | CC: | peper, rhill |
Priority: | High | ||
Version: | 2006.0 | ||
Hardware: | x86 | ||
OS: | Linux | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- | |
Bug Depends on: | |||
Bug Blocks: | 117482 | ||
Attachments: |
pyode-1.1.0.ebuild.patch
pyode-1.1.0.ebuild.patch |
Description
Frédéric COIFFIER
2006-05-31 04:54:11 UTC
Reopen with errors in English. Set your locales to C when reporting bugs, please... When I emerge pyode-1.1.0, I got the following error : i686-pc-linux-gnu-gcc -pthread -fno-strict-aliasing -DNDEBUG -march=athlon-xp -O2 -g2 -ggdb -pipe -fPIC -I/usr/share/ode-0.5/include -I/usr/include/python2.4 -c ode_trimesh.c -o build/temp.linux-i686-2.4/ode_trimesh.o ode_trimesh.c: In function '__pyx_f_3ode_4Body_getMass': ode_trimesh.c:3781: error: invalid lvalue in assignment ode_trimesh.c:3789: error: invalid lvalue in assignment ode_trimesh.c: In function '__pyx_f_3ode_9BallJoint___new__': ode_trimesh.c:5978: error: invalid lvalue in assignment ode_trimesh.c:5993: error: invalid lvalue in assignment ode_trimesh.c: In function '__pyx_f_3ode_10HingeJoint___new__': ode_trimesh.c:6277: error: invalid lvalue in assignment ode_trimesh.c:6292: error: invalid lvalue in assignment ode_trimesh.c: In function '__pyx_f_3ode_11SliderJoint___new__': ode_trimesh.c:6752: error: invalid lvalue in assignment ode_trimesh.c:6767: error: invalid lvalue in assignment ode_trimesh.c: In function '__pyx_f_3ode_14UniversalJoint___new__': ode_trimesh.c:7089: error: invalid lvalue in assignment ode_trimesh.c:7104: error: invalid lvalue in assignment ode_trimesh.c: In function '__pyx_f_3ode_11Hinge2Joint___new__': ode_trimesh.c:7606: error: invalid lvalue in assignment ode_trimesh.c:7621: error: invalid lvalue in assignment ode_trimesh.c: In function '__pyx_f_3ode_10FixedJoint___new__': ode_trimesh.c:8201: error: invalid lvalue in assignment ode_trimesh.c:8216: error: invalid lvalue in assignment ode_trimesh.c: In function '__pyx_f_3ode_12ContactJoint___new__': ode_trimesh.c:8331: error: invalid lvalue in assignment ode_trimesh.c:8347: error: invalid lvalue in assignment ode_trimesh.c: In function '__pyx_f_3ode_6AMotor___new__': ode_trimesh.c:8444: error: invalid lvalue in assignment ode_trimesh.c:8459: error: invalid lvalue in assignment ode_trimesh.c: In function '__pyx_f_3ode_11SimpleSpace___new__': ode_trimesh.c:10687: error: invalid lvalue in assignment ode_trimesh.c:10701: error: invalid lvalue in assignment ode_trimesh.c: In function '__pyx_f_3ode_9HashSpace___new__': ode_trimesh.c:10776: error: invalid lvalue in assignment ode_trimesh.c:10790: error: invalid lvalue in assignment ode_trimesh.c: In function '__pyx_f_3ode_13QuadTreeSpace___new__': ode_trimesh.c:10974: error: invalid lvalue in assignment ode_trimesh.c:10988: error: invalid lvalue in assignment ... ... Please upgrade dev-python/pyrex to 0.9.4.1 and try again. The problem is that package provides already generated files with pyrex-0.9.3 which won't compile with gcc4.1. The resolution is to delete ode_trimesh.c and ode_notrimesh.c after unpacking the package and let the build script generate them with locally installed pyrex(only 0.9.4.1 works). Created attachment 88455 [details, diff]
pyode-1.1.0.ebuild.patch
Changes:
- DEP: >=pyrex-0.9.3 to >=pyrex-0.9.4.1 - required for gcc41 compatibility
- KEYWORDS: x86 to ~x86 b/c of unstable pyrex 0.9.4.1
- src_unpack: removes these 2 files in question
Created attachment 88457 [details, diff]
pyode-1.1.0.ebuild.patch
Removed keyword and dep changes b/c if someone is running ~x86(gcc-4.1 and pyrex-0.9.4.1 are ~x86) it will just work. (Halcy0n pointed me that out so don't argue :P)
Added patched ebuild to the sunrise overlay. http://overlays.gentoo.org/svn/proj/sunrise/dev-python/pyode/ Please add InOverlay keyword. Not any more in the sunrise overlay ;( In my case, the last pyode-1.1.0.ebuild.patch works fine and pyode-1.10 compiles with it and gcc-4.1. @python: pingy ;) i'm confused. what needs to be done to fix this? just the DEPEND should be pyrex-0.9.4.1? that's the current stable version so this should be a problem anymore. Looks like pyode-1.1.0 needs =ode-0.5, while pyode-1.1.0_p20060728 will build with any version of ode. The later also doesn't need the regeneration trick. I would say just use the snapshot build, but just to be safe I'll update both. Fixed in CVS. |