[SciPy-dev] {Num, Sci}Py on 64bit Intel Macs with icc, ifort, mkl
Ulrik Günther
ulrik at 42degreesoffreedom.com
Sat Jun 14 10:44:22 EDT 2008
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Hi everyone,
I have a little patch here for numpy/distutils/fcompiler/gnu.py, which
seems to relieve the dynamic_lookup problem
when linking a .so :
@@ -100,8 +100,8 @@
'MACOSX_DEPLOYMENT_TARGET reset to %s.%s' %
(major, minor))
os.environ['MACOSX_DEPLOYMENT_TARGET'] = '%s.%s' % (major,
minor)
- -
- - opt.extend(['-undefined', 'dynamic_lookup', '-bundle'])
+
+ self.linker_so.extend(['-undefined', 'dynamic_lookup', '-
bundle'])
else:
opt.append("-shared")
if sys.platform.startswith('sunos'):
@@ -189,6 +189,9 @@
opt.append('-mcpu='+a)
opt.append('-mtune='+a)
break
+
+ opt.append('-framework Python')
+ opt.append('-undefined dynamic_lookup')
return opt
# default march options in case we find nothing better
@@ -374,9 +377,12 @@
if __name__ == '__main__':
from distutils import log
log.set_verbosity(2)
- - compiler = GnuFCompiler()
- - compiler.customize()
- - print compiler.get_version()
+ try:
+ compiler = GnuFCompiler()
+ compiler.customize()
+ print compiler.get_version()
+ except Exception, msg:
+ print msg
raw_input('Press ENTER to continue...')
try:
compiler = Gnu95FCompiler()
My problem with this solution is the following:
in the function get_flags_linker_so(), there is a line of code in the
beginning:
>> opt = self.linker_so[1:]
where the opt array is modified in the following, then returned. What
I noticed is that
whatever is put into that array is not passed on. So my solution here
is to directly modify the
self.linker_so array with the corresponding options. I do not think
that this is a clean solution,
but it works for the moment. I'd be glad if you could comment a bit on
the patch (if it is okay, if
the problem should be solved elsewhere, etc.).
Thanks,
ulrik
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.7 (Darwin)
iD8DBQFIU9lGy06DkvPH780RAivhAJ0eVOhOWDhy38YzJCOo3lQeJVEQiACeJGFj
sJpSQ+3cnaBeteeA0eOTGK0=
=xhkn
-----END PGP SIGNATURE-----
More information about the SciPy-Dev
mailing list