1587
Comment:
|
3954
add singular 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 |
Line 34: | Line 52: |
3) Optionally: run "make testall" to run the unittests and check pyconfig.h to check the various SIZEOF definitions. |
== ToDo == |
Line 37: | Line 54: |
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 *); }}} == singular-3-0-4-1-20071209.p3 == {{{ CXXFLAGS="$CXXFLAGS -fPIC -O3 -g -m64"; export CXXFLAGS CFLAGS="$CFLAGS -fPIC -O3 -g -m64"; export CFLAGS CPPFLAGS="$CXXFLAGS -fPIC -O3 -g -m64"; export CPPFLAGS }}} LDFLAGS? == polybori == {{{ 64 bit MacIntel Starting build... Running build_polybori... scons: Reading SConscript files ... KeyError: 'PYTHONHOME': File "/Users/mabshoff/sage-2.10.alpha2/spkg/standard/polybori-0.1-r6/src/PolyBoRi-0.1/SConstruct", line 105: env=Environment(ENV = {'PATH': os.environ['PATH']}, options=opts,tools = tools, toolpath = '.') File "/Users/mabshoff/sage-2.10.alpha2/local/lib/scons-0.97/SCons/Environment.py", line 779: options.Update(self) File "/Users/mabshoff/sage-2.10.alpha2/local/lib/scons-0.97/SCons/Options/__init__.py", line 145: execfile(filename, values) File "custom.py", line 13: PYPREFIX=os.environ['PYTHONHOME'] File "/Users/mabshoff/sage-2.10.alpha2/local/lib/python2.5/UserDict.py", line 22: raise KeyError(key) Error building PolyBoRi. }}} == 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 41: | Line 112: |
* 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. |
== libm4fri == {{{ CFLAGS="$CFLAGS -fPIC $INCLUDES -L$SAGE_LOCAL/lib -m64" CXXFLAGS="$CXXFLAGS -fPIC $INCLUDES -L$SAGE_LOCAL/lib -m64" CPPFLAGS="$INCLUDES -m64" |
Line 46: | Line 118: |
##################################################################### == 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
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 *);
singular-3-0-4-1-20071209.p3
CXXFLAGS="$CXXFLAGS -fPIC -O3 -g -m64"; export CXXFLAGS CFLAGS="$CFLAGS -fPIC -O3 -g -m64"; export CFLAGS CPPFLAGS="$CXXFLAGS -fPIC -O3 -g -m64"; export CPPFLAGS
LDFLAGS?
polybori
64 bit MacIntel Starting build... Running build_polybori... scons: Reading SConscript files ... KeyError: 'PYTHONHOME': File "/Users/mabshoff/sage-2.10.alpha2/spkg/standard/polybori-0.1-r6/src/PolyBoRi-0.1/SConstruct", line 105: env=Environment(ENV = {'PATH': os.environ['PATH']}, options=opts,tools = tools, toolpath = '.') File "/Users/mabshoff/sage-2.10.alpha2/local/lib/scons-0.97/SCons/Environment.py", line 779: options.Update(self) File "/Users/mabshoff/sage-2.10.alpha2/local/lib/scons-0.97/SCons/Options/__init__.py", line 145: execfile(filename, values) File "custom.py", line 13: PYPREFIX=os.environ['PYTHONHOME'] File "/Users/mabshoff/sage-2.10.alpha2/local/lib/python2.5/UserDict.py", line 22: raise KeyError(key) Error building PolyBoRi.
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" )
libm4fri
CFLAGS="$CFLAGS -fPIC $INCLUDES -L$SAGE_LOCAL/lib -m64" CXXFLAGS="$CXXFLAGS -fPIC $INCLUDES -L$SAGE_LOCAL/lib -m64" CPPFLAGS="$INCLUDES -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