|
Size: 3494
Comment: added package build order
|
Size: 3007
Comment: mention twisted-8.0.1 build fix, add _ctypes 64 bit build issue and workaround
|
| 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 = |
| Line 5: | Line 5: |
| * building python {{{ For some pointers on how to get python to build in 64 bit mode see |
Sage 3.0.2.alpha1 port to 64 bit OSX: |
| Line 8: | Line 7: |
| http://mail.python.org/pipermail/pythonmac-sig/2007-June/019045.html | == fortran-20071120.p3 == |
| Line 10: | Line 9: |
| To quote (which is actually about 64 bit on *Tiger*): | gfortran: need 64 bit run time and compiler - special build on bsd in gfortran-4.2.2/dist |
| Line 12: | Line 11: |
| <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. |
* 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 20: | Line 16: |
| 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. |
== spkgs with solution == |
| Line 24: | Line 18: |
| 2) Build using: | * eclib: #3173 * flint-1.06: #3174 * zlib: #3175 * gd: #1621 * gdmodule: #3180 * f2c: #3185 * twisted: #3193 [the problem previously mentioned are fixed in an updated python.spkg at #3318] * singular: #3194 * polybori: #3195 * r: #3196 * zn_poly: #3199 * tachyon: #3227 * flintqs: #3229 |
| Line 26: | Line 32: |
| $ mkdir build $ cd build $ CFLAGS="-arch ppc64 -arch x86_64" ../configure \ --enable-universalsdk \ --disable-toolbox-glue --prefix=/opt/python25-64bit $ make $ make install |
== ToDo == |
| Line 34: | Line 34: |
| 3) Optionally: run "make testall" to run the unittests and check pyconfig.h to check the various SIZEOF definitions. |
== gmp-4.2.1.p12 == |
| Line 37: | Line 36: |
| You now have a 64-bit build of python in /opt/python25-64bit. | Sage 3.0.2.alpha1 has upgrade to gmp 4.2.2, so use ABI=64 to make it compiled for the 64 bit mode. == _ctypes.so for 64 bit OSX == Building the _ctypes.so extension fails. * replace libffi with latest [3.0.5 on OSX 10.5] to build _ctypes.so - this causes trouble due to missing fficonfig.py * pass "-m64" to the CFLAGS when building the _ctypes.so extension since as is the CFLAGS are reset * fficonfig.py is missing - use the fixed one * ffi_common.h isn't in the right place - fix include paths? == polybori == oddity: The dynamic libs are not named properly, i.e. they are straight up bundles [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 }}} == 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" ) |
| Line 40: | Line 68: |
| == numpy, scipy & friends == | |
| Line 41: | Line 70: |
| * 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. |
With Python 2.5.2. compiler with {{{--with-gcc="gcc -m64"}}} numpy builds fine. More investigation is needed here. |
| Line 46: | Line 72: |
| But: | == Done (incomplete list) == |
| Line 48: | Line 74: |
| [06:36] <mabshoff> But it doesn't match the python flags. I checked on it once. [06:37] <was_> It's distutils. [06:37] <was_> Cython doesn't have anything to do with the flags. }}} = Build Order of packages for 2.10.alpha2= * dir-0.1 * prereq-0.3 * sage_scripts-2.10.alpha2 * bzip2-1.0.4 * conway_polynomials-0.2 * gmp-4.2.1.p12 * termcap-1.3.1 * readline-5.2.p0 |
* gsl-1.10 * libfplll * mpfr-2.3.0.p0 * ntl-5.4.2 * symmetrica-2.0.p2 |
| Line 64: | Line 80: |
| * ntl-5.4.1.p10 * cremona-20071219.p1 * graphs-20070722 * elliptic_curves-0.1 * extcode-2.10.alpha2 * flint-1.05 * zlib-1.2.3.p3 * sqlite-3.5.3.p1 * libgpg_error-1.5 * libgcrypt-1.2.4 * opencdk-0.5.9 |
* libgpg_error * libgcrypt * opencdk |
| Line 76: | Line 84: |
| * libpng-1.2.22.p3 * python-2.5.1.p11 * freetype-2.3.5 * gd-2.0.33.p5 * gdmodule-0.56.p4 * fortran-20071120.p3 * lapack-20071123.p0 * atlas-3.8.p7 * gsl-1.9 * iml-1.0.1.p8 * ipython-0.8.1.p1 * givaro-3.2.6.p5 * linbox-20070915.p3 * f2c-20070816 * blas-20070724 * numpy-20080104-1.0.4.p1 * matplotlib-0.91.1.p1 * mercurial-0.9.5.p0 * mpfr-2.3.0.p0 * pexpect-2.0.p1 * mpfi-1.3.4-cvs20071125.p4 * pycrypto-2.0.1.p1 * cython-0.9.6.9 * sympy-0.5.7 * zodb3-3.7.0 * networkx-0.35.1 * quaddouble-2.2.p7 * python_gnutls-1.1.1 * twistedweb2-20070619 * twisted-2.5.0.p8 * singular-3-0-4-1-20071209.p3 * scons-0.97 * symmetrica-2.0.p0 * libfplll-2.1.6-20071129 * polybori-0.1-r6 * rpy-1.0.1.p0 * r-2.6.1.p7 * rubiks-20070912.p0 * libm4ri-20071224 * sage-2.10.alpha2 * doc-2.10.alpha2 * examples-2.10.alpha2 * gap-4.4.10.p0 * clisp-2.41.p12 * maxima-5.13.0.p2 * genus2reduction-0.3 * lcalc-20070107.p0 * sympow-1.018.1.p3 * cddlib-094b.p0 * gfan-0.2.2.p2 * ecm-6.1.3 * tachyon-0.98beta.p3 * weave-0.4.9 * flintqs-20070817.p1 * palp-1.1 * moin-1.5.7.p2 * ipython1-20070130 * scipy-20071020-0.6.p2 * scipy_sandbox-20071020 * cvxopt-0.9.p5 * jmol-11.5.2 |
* mpfi * prereq: #3172 * termcap: #3171 * readline: #3170 * sqlite: #3176 * python: #3177 * libpng: #3179 * freetype: #3178 * iml: #3181 * givaro: #3182 [additional LDFLAGS work] * linbox: #3183 * numpy: #3186 * matplotlib: #3187 * mpfi: #3188 * pycrypto: #3189 * zodb: #3190 * quaddouble: #3191 * python_gnutls: #3192 * libm4fri: #3197 * ecm: #3198 * lcalc: #3224: * cddlib: #3225 * gfan: #3226 |
OSX 64-bit
spkg with open issues/manual workarounds
Sage 3.0.2.alpha1 port to 64 bit OSX:
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
- eclib: #3173
- flint-1.06: #3174
- zlib: #3175
- gd: #1621
- gdmodule: #3180
- f2c: #3185
- twisted: #3193 [the problem previously mentioned are fixed in an updated python.spkg at #3318]
- singular: #3194
- polybori: #3195
- r: #3196
- zn_poly: #3199
- tachyon: #3227
- flintqs: #3229
ToDo
gmp-4.2.1.p12
Sage 3.0.2.alpha1 has upgrade to gmp 4.2.2, so use ABI=64 to make it compiled for the 64 bit mode.
_ctypes.so for 64 bit OSX
Building the _ctypes.so extension fails.
- replace libffi with latest [3.0.5 on OSX 10.5] to build _ctypes.so - this causes trouble due to missing fficonfig.py
- pass "-m64" to the CFLAGS when building the _ctypes.so extension since as is the CFLAGS are reset
- fficonfig.py is missing - use the fixed one
- ffi_common.h isn't in the right place - fix include paths?
polybori
oddity: The dynamic libs are not named properly, i.e. they are straight up bundles [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
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
- prereq: #3172
- termcap: #3171
- readline: #3170
- sqlite: #3176
- python: #3177
- libpng: #3179
- freetype: #3178
- iml: #3181
- givaro: #3182 [additional LDFLAGS work]
- linbox: #3183
- numpy: #3186
- matplotlib: #3187
- mpfi: #3188
- pycrypto: #3189
- zodb: #3190
- quaddouble: #3191
- python_gnutls: #3192
- libm4fri: #3197
- ecm: #3198
- lcalc: #3224:
- cddlib: #3225
- gfan: #3226
