1587
Comment:
|
3367
add libm4fri ticket
|
Deletions are marked like this. | Additions are marked like this. |
Line 3: | Line 3: |
* export CFLAGS="-arch x86_64" | = spkg with open issues/manual workarounds = Sage 3.0.2.alpha1 port to 64 bit OSX: |
Line 5: | Line 6: |
* building python {{{ For some pointers on how to get python to build in 64 bit mode see |
== gmp-4.2.1.p12 == |
Line 8: | Line 8: |
http://mail.python.org/pipermail/pythonmac-sig/2007-June/019045.html | {{{ broken, need to update to 4.2.2, skip patching add ABI=64, otherwise set ABI=32 Maybe: Our gmp 4.2.1 is FUBAR, i.e. Cygwin problems Important: add {{{extern __inline__ gmp-h.in}}} fix for Darwin }}} |
Line 10: | Line 15: |
To quote (which is actually about 64 bit on *Tiger*): | == fortran-20071120.p3 == |
Line 12: | Line 17: |
<quote> The build is universal, but for me only one of the two archictures actually worked: I did my build on an Intel system and the 64-bit build worked on that machine, but didn't work on a G5 mac. That's probably something shallow, but as that machine doesn't have the Xcode installed and is on the other side of a slow network connection I haven't tried to debug this yet. |
gfortran: need 64 bit run time and compiler - special build on bsd in gfortran-4.2.2/dist |
Line 20: | Line 19: |
1) Edit the configure script, look for "-arch i386" and "-arch ppc" and change that those to "-arch ppc64" and "-arch x86_64". You'll have to make multiple changes to the configure file. |
* copy {{{~/gfortran-4.2.2/dist}}} into {{{$SAGE_LOCAL}}} * extend {{{DYLD_LIBRARY_PATH=local/lib/x86_64/:$DYLD_LIBRARY_PATH}}} * Add "-m64" to sage_fortran options, link x86_64 libgfortran.dylib * rm {{{$SAGE_LOCAL/lib/libssp*, $SAGE_LOCAL/lib/libssp*, $SAGE_LOCAL/lib/libgfortran.2*}}} |
Line 24: | Line 24: |
2) Build using: | == spkgs with solution == |
Line 26: | Line 26: |
$ mkdir build $ cd build $ CFLAGS="-arch ppc64 -arch x86_64" ../configure \ --enable-universalsdk \ --disable-toolbox-glue --prefix=/opt/python25-64bit $ make $ make install |
* prereq: #3172 * termcap: #3171 * readline: #3170 * eclib: #3173 * flint-1.06: #3174 * zlib: #3175 * sqlite: #3176 * python: #3177 * libpng: #3179 * freetype: #3178 * gd: #1621 * gdmodule: #3180 * iml: #3181 * givaro: #3182 [additional LDFLAGS work] * linbox: #3183 * f2c: #3185 * numpy: #3186 * matplotlib: #3187 * mpfi: #3188 * pycrypto: #3189 * zodb: #3190 * quaddouble: #3191 * python_gnutls: #3192 * twisted: #3193 [details below] * singular: #3194 * polybori: #3195 * r: #3196 * libm4fri: #3197 |
Line 34: | Line 55: |
3) Optionally: run "make testall" to run the unittests and check pyconfig.h to check the various SIZEOF definitions. |
== ToDo == |
Line 37: | Line 57: |
You now have a 64-bit build of python in /opt/python25-64bit. | == twisted-8.0.1 == Get rif of {{{Qt exports}}} in {{{$SAGE_LOCAL}}}/local/include/python2.5/pymactoolbox.h: {{{ /* Qt exports */ //extern PyObject *TrackObj_New(Track); //extern int TrackObj_Convert(PyObject *, Track *); //extern PyObject *MovieObj_New(Movie); //extern int MovieObj_Convert(PyObject *, Movie *); //extern PyObject *MovieCtlObj_New(MovieController); //extern int MovieCtlObj_Convert(PyObject *, MovieController *); //extern PyObject *TimeBase Obj_New(TimeBase); //extern int TimeBase Obj_Convert(PyObject *, TimeBase *); //extern PyObject *UserDataObj_New(UserData); //extern int UserDataObj_Convert(PyObject *, UserData *); //extern PyObject *MediaObj_New(Media); //extern int MediaObj_Convert(PyObject *, Media *); |
Line 41: | Line 77: |
* Cython {{{ 20:58 < mabshoff> There is also a bug in the way Cython builds its extensions. 20:58 < mabshoff> It needs to use the flags python was build with, not some random stuff people thing 20:58 < mabshoff> think is good. 20:58 < mabshoff> I told Robert about it. |
== polybori == oddity: The dynamic libs are not named properly [mabye my fault?] {{{ -rw-r--r-- 1 mabshoff mabshoff 6686916 May 13 08:28 libpolybori.a -rw-r--r-- 1 mabshoff mabshoff 17076908 May 13 08:28 libgroebner.a -rw-r--r-- 1 mabshoff mabshoff 4395496 May 13 08:29 libpboriCudd.a -rwxr-xr-x 1 mabshoff mabshoff 1542016 May 13 08:29 polybori -rwxr-xr-x 1 mabshoff mabshoff 857200 May 13 08:30 pboriCudd -rwxr-xr-x 1 mabshoff mabshoff 5048336 May 13 08:30 groebner |
Line 46: | Line 88: |
== r == No 64 bit libiconv on OSX 10.5: --with-inconv=no == sagelib == sage -b: devel/sage/c_lib/SConstruct {{{ ## We want the debug and optimization flags, since debug symbols are so useful, etc. env.Append( CFLAGS="-O2 -g -m64" ) env.Append( CXXFLAGS="-O2 -g -m64" ) }}} ##################################################################### == numpy, scipy & friends == With Python 2.5.2. compiler with {{{--with-gcc="gcc -m64"}}} numpy builds fine. More investigation is needed here. == Done (incomplete list) == * gsl-1.10 * libfplll * mpfr-2.3.0.p0 * ntl-5.4.2 * symmetrica-2.0.p2 * pari-2.3.3 * libgpg_error * libgcrypt * opencdk * gnutls-1.6.3 * mpfi |
OSX 64-bit
spkg with open issues/manual workarounds
Sage 3.0.2.alpha1 port to 64 bit OSX:
gmp-4.2.1.p12
broken, need to update to 4.2.2, skip patching add ABI=64, otherwise set ABI=32 Maybe: Our gmp 4.2.1 is FUBAR, i.e. Cygwin problems Important: add {{{extern __inline__ gmp-h.in
fix for Darwin}}}
fortran-20071120.p3
gfortran: need 64 bit run time and compiler - special build on bsd in gfortran-4.2.2/dist
copy ~/gfortran-4.2.2/dist into $SAGE_LOCAL
extend DYLD_LIBRARY_PATH=local/lib/x86_64/:$DYLD_LIBRARY_PATH
- Add "-m64" to sage_fortran options, link x86_64 libgfortran.dylib
rm $SAGE_LOCAL/lib/libssp*, $SAGE_LOCAL/lib/libssp*, $SAGE_LOCAL/lib/libgfortran.2*
spkgs with solution
- prereq: #3172
- termcap: #3171
- readline: #3170
- eclib: #3173
- flint-1.06: #3174
- zlib: #3175
- sqlite: #3176
- python: #3177
- libpng: #3179
- freetype: #3178
- gd: #1621
- gdmodule: #3180
- iml: #3181
- givaro: #3182 [additional LDFLAGS work]
- linbox: #3183
- f2c: #3185
- numpy: #3186
- matplotlib: #3187
- mpfi: #3188
- pycrypto: #3189
- zodb: #3190
- quaddouble: #3191
- python_gnutls: #3192
- twisted: #3193 [details below]
- singular: #3194
- polybori: #3195
- r: #3196
- libm4fri: #3197
ToDo
twisted-8.0.1
Get rif of Qt exports in $SAGE_LOCAL/local/include/python2.5/pymactoolbox.h:
/* Qt exports */ //extern PyObject *TrackObj_New(Track); //extern int TrackObj_Convert(PyObject *, Track *); //extern PyObject *MovieObj_New(Movie); //extern int MovieObj_Convert(PyObject *, Movie *); //extern PyObject *MovieCtlObj_New(MovieController); //extern int MovieCtlObj_Convert(PyObject *, MovieController *); //extern PyObject *TimeBase Obj_New(TimeBase); //extern int TimeBase Obj_Convert(PyObject *, TimeBase *); //extern PyObject *UserDataObj_New(UserData); //extern int UserDataObj_Convert(PyObject *, UserData *); //extern PyObject *MediaObj_New(Media); //extern int MediaObj_Convert(PyObject *, Media *);
polybori
oddity: The dynamic libs are not named properly [mabye my fault?]
-rw-r--r-- 1 mabshoff mabshoff 6686916 May 13 08:28 libpolybori.a -rw-r--r-- 1 mabshoff mabshoff 17076908 May 13 08:28 libgroebner.a -rw-r--r-- 1 mabshoff mabshoff 4395496 May 13 08:29 libpboriCudd.a -rwxr-xr-x 1 mabshoff mabshoff 1542016 May 13 08:29 polybori -rwxr-xr-x 1 mabshoff mabshoff 857200 May 13 08:30 pboriCudd -rwxr-xr-x 1 mabshoff mabshoff 5048336 May 13 08:30 groebner
r
No 64 bit libiconv on OSX 10.5: --with-inconv=no
sagelib
sage -b: devel/sage/c_lib/SConstruct
## We want the debug and optimization flags, since debug symbols are so useful, etc. env.Append( CFLAGS="-O2 -g -m64" ) env.Append( CXXFLAGS="-O2 -g -m64" )
numpy, scipy & friends
With Python 2.5.2. compiler with --with-gcc="gcc -m64" numpy builds fine. More investigation is needed here.
Done (incomplete list)
- gsl-1.10
- libfplll
- mpfr-2.3.0.p0
- ntl-5.4.2
- symmetrica-2.0.p2
- pari-2.3.3
- libgpg_error
- libgcrypt
- opencdk
- gnutls-1.6.3
- mpfi