mailRe: compiling 1.3.4 against python 2.6?


Others Months | Index by Date | Thread Index
>>   [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Header


Content

Posted by Edward d'Auvergne on August 18, 2009 - 11:02:
Hi,

That's awesome!  Could you make a patch file that I can apply it (and
credit you for it)?  For this, just type:

$ svn diff > some_patch_file_name

and then send the resultant file as a response to this.  It should
only contain this line change, therefore you need the sconstruct file
to have only this change. Your other changes need to be incorporated
in another patch, and probably discussed as well.  I would like to
make everything automatic for you, but we also need to take into
account that a user may have python and relax installed outside of the
Fink system (i.e. the repository 1.3 branch and some python version
installed as a user in the home directory or desktop).

Cheers,

Edward


2009/8/18 Jack Howarth <howarth@xxxxxxxxxxxxxxxx>:
Edward,
  The fix appears to be...

@@ -486,7 +485,7 @@

        # Catch Mac OS X and send the correct command line options to the 
linker (these may become redundant as SCons improves).
        if env['PLATFORM'] == 'darwin':
-            env.Append(LINKFLAGS = ['-bundle', '-bundle_loader', 
sys.prefix + path.sep + 'bin' + path.sep + 'python', '-dynamic'])
+            env.Append(LINKFLAGS = ['-bundle', '-bundle_loader', 
sys.prefix + path.sep + 'bin' + path.sep + 'python', '-dynamic', 
'-undefined', 'dynamic_lookup'])
            env['SHLINKFLAGS'] = SCons.Util.CLVar('$LINKFLAGS')
            env['SHLIBSUFFIX'] = '.so'


This should work on Mac OS X 10.4 or later.
                     Jack

On Mon, Aug 17, 2009 at 07:34:54PM +0200, Edward d'Auvergne wrote:
Hi,

If that is the case, we need to switch back to the dynamiclib
approach.  Can you delete the 3 'sconstruct' script lines after "#
Catch Mac OS X and send the correct command line options to the
linker" and see if that works.  Or try gcc with the '-dynamiclib' flag
(note that some of the other flags, although I'm not sure which, need
to be removed).  It could be quite possible that the Fink Python 2.6
installation has removed the need for the bundle-loader approach :S

Cheers,

Edward


2009/8/17 Jack Howarth <howarth@xxxxxxxxxxxxxxxx>:
Edward,
   Actually, I don't think the -bundle-loader approach will work
with python2.6 because it is linked against the libpython2.6 dylib
and not the static lib like python2.5. If you compare the symbols
returned fron "nm /sw/bin/python2.6" with "nm /sw/bin/python2.5",
the first case is a very short list...

0000200c D _NXArgc
00002008 D _NXArgv
        U _PyMac_Error
        U _Py_Main
00002000 D ___progname
00001fa8 t __dyld_func_lookup
00001000 A __mh_execute_header
00002004 D _environ
        U _exit
00001fd0 T _main
00002010 d dyld__mach_header
00001f78 t dyld_stub_binding_helper
00001f30 T start

compared to the latter case. I really think we need to explicitly
link in /sw/lib/python2.6/config/libpython2.6.dylib.
             Jack

On Mon, Aug 17, 2009 at 07:08:31PM +0200, Edward d'Auvergne wrote:
Hi,

I don't think this is an issue, as the include directories should only
contain *.h C header files.  Can you find any *.h python files which
are not in /sw/include/python2.6?  The second include directory is
just for the numpy *.h files.

Cheers,

Edward







Related Messages


Powered by MHonArc, Updated Wed Aug 19 01:40:42 2009