Re: Python 2.6.1 urllib error on Mac os x PPC



On Mon, 2009-03-02 at 13:59 -0800, Ned Deily wrote:
Am 2.3.2009 22:59 Uhr schrieb "Ned Deily" unter <nad@xxxxxxx>:


First, make sure this is the real problem by trying this snippet:

/usr/local/test/python/bin/python2.6
from ctypes import cdll
from ctypes.util import find_library
sc = cdll.LoadLibrary(find_library("SystemConfiguration"))
x = sc.CFStringCreateWithCString(0, "HTTPEnable", 0)

Presumably, if your original test failed, this snippet should fail,
too.

Yes, it fails on PPC and runs without errors on Intel:

/usr/local/test/python/bin/python2.6 /tmp/tt.py
Traceback (most recent call last):
File "/tmp/tt.py", line 4, in <module>
x = sc.CFStringCreateWithCString(0, "HTTPEnable", 0)
File "/usr/local/test/python/lib/python2.6/ctypes/__init__.py", line
366,
in __getattr__
func = self.__getitem__(name)
File "/usr/local/test/python/lib/python2.6/ctypes/__init__.py", line
371,
in __getitem__
func = self._FuncPtr((name_or_ordinal, self))
AttributeError: dlsym(RTLD_DEFAULT, CFStringCreateWithCString): symbol
not
found


Content of /tmp/tt.py:

from ctypes import cdll
from ctypes.util import find_library
sc = cdll.LoadLibrary(find_library("SystemConfiguration"))
x = sc.CFStringCreateWithCString(0, "HTTPEnable", 0)


I recompiled Python-2.6.1 with MACOSX_DEPLOYMENT_TARGET=10.3, but no
change..
I updated developertools to xcode312_2621, no change..

Btw.. Python-2.5.4 compiled from scratch works fine.

I forgot to mention the ppc computer is a Mac OS X Server version and
the Intel computer is a normal Mac OS X.


Some detailed info about the macs:

ppc:
Model Name: Xserve G5
Model Identifier: RackMac3,1
Processor Name: PowerPC G5 (3.1)
Processor Speed: 2.3 GHz
Number Of CPUs: 2
L2 Cache (per CPU): 512 KB
Boot ROM Version: 5.1.7f2
System Version: Mac OS X Server 10.5.6 (9G55)
Kernel Version: Darwin 9.6.0


intel:
Model Name: MacBook Pro
Model Identifier: MacBookPro3,1
Processor Name: Intel Core 2 Duo
Processor Speed: 2.4 GHz
Number Of Processors: 1
Total Number Of Cores: 2
L2 Cache: 4 MB
Bus Speed: 800 MHz
Boot ROM Version: MBP31.0070.B07
SSC Version: 1.16f8
System Version: Mac OS X 10.5.6 (9G55)
Kernel Version: Darwin 9.6.0




If you can, download the python.org 2.6.1 OSX installer and make sure
your original test works with it. If so, perhaps you don't need to
build your own? That install works on both Intel and PPC. One
difference: it is built with MACOX_DEPLOYMENT_TARGET=10.3, meaning it
will work on systems >= 10.3 but if you really need 10.5 only there
might be some side-effects that are important to you.

I have to compile my own python, because i can't install the dmg under
/usr/local/bin,lib, etc..

I have to install python under /usr/local/some_other_dir/python. (this
is a custom install for an application and i can't change ist
requirements...)

I don't need universal binaries, i need only ppc, the intel version was
just a test. (but precompiled universql binary is o.k., if it installs
under a custom directory)


Otherwise, you might want to try rebuilding on the PPC from scratch
(i.e. an empty build directory) using the 2.6.1 tarball. By "same
build" on Intel CPU, you do mean you've rebuilt on PPC? You could
build
a "fat" Universal python on either architecture that will work on both
but you'll need to add a few more options to configure to do that.

It was build from scratch. I rebuild it on intel with the same
configuration to test it, but on intel runs whitout errors.

I dig a bit deeper with otool and discover some differences:

Intel MacOS.so: Carbon, libSystem.B.dylib, CoreServices,
ApplicationServices

PPC MacOS.so: Carbon, libmx.A.dylib, libSystem.B.dylib

Intel _ctypes.so: libSystem.B.dylib
PPC _ctypes.so: libmx.A.dylib, libSystem.B.dylib

-----------
Intel with deploymant target 10.3, xcode312:
-----------
sh-3.2# otool
-L /usr/local/test/python/lib/python2.6/lib-dynload/MacOS.so
/usr/local/test/python/lib/python2.6/lib-dynload/MacOS.so:
/System/Library/Frameworks/Carbon.framework/Versions/A/Carbon
(compatibility version 2.0.0, current version 136.0.0)
/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current
version
111.1.3)

/System/Library/Frameworks/CoreServices.framework/Versions/A/CoreServices
(compatibility version 1.0.0, current version 32.0.0)

/System/Library/Frameworks/ApplicationServices.framework/Versions/A/Applicat
ionServices (compatibility version 1.0.0, current version 34.0.0)

-------

sh-3.2# otool
-L /usr/local/test/python/lib/python2.6/lib-dynload/_ctypes.so
/usr/local/test/python/lib/python2.6/lib-dynload/_ctypes.so:
/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current
version
111.1.3)

----------
PPC with deployment_target 10.3, xcode312_2621
----------

otool -L /usr/local/test/python/lib/python2.6/lib-dynload/MacOS.so
/usr/local/test/python/lib/python2.6/lib-dynload/MacOS.so:
/System/Library/Frameworks/Carbon.framework/Versions/A/Carbon
(compatibility version 2.0.0, current version 136.0.0)
/usr/lib/libmx.A.dylib (compatibility version 1.0.0, current version
47.1.0)
/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current
version
111.1.3)

-------


otool -L /usr/local/test/python/lib/python2.6/lib-dynload/_ctypes.so
/usr/local/test/python/lib/python2.6/lib-dynload/_ctypes.so:
/usr/lib/libmx.A.dylib (compatibility version 1.0.0, current version
47.1.0)
/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current
version
111.1.3)


There is something messy with the libs.



.



Relevant Pages

  • Re: PPC Macs were outdated in one day.
    ... since they coulden't run the same software as the Intel Macs. ... with the PPC. ... compatibility schemes will be dropped. ...
    (comp.sys.mac.advocacy)
  • Re: PPC Macs were outdated in one day.
    ... since they coulden't run the same software as the Intel Macs. ... with the PPC. ... compatibility schemes will be dropped. ...
    (comp.sys.mac.advocacy)
  • Re: PPC Macs were outdated in one day.
    ... PPC foward compatable with the Intel Macs or the Intel Macs backward ... both of these compatibility schemes will be dropped. ...
    (comp.sys.mac.advocacy)
  • Re: Is word X compatible with an Intel Mac
    ... Snow leopard will not be a universal Binary install there will be not one iota of PPC code in its bones. ... I was going to get me a new Intel Mac Tower until the Economy went south and wiped out half of the value of my retirement find Now I'll have to nurse the G4-500 along for another Year. ... On my OSX3.9 Drive The KeyChain application, Accounts Control Panel Install application for Package files and stickies has suddenly quit working and I don't know how to fix. ...
    (microsoft.public.mac.office.word)
  • Re: Yet another Apple supercluster?
    ... >>> fastest processors, and most are PPC based, not Intel. ... >> Intel chips. ... 300+ of the top 500 super computers are Intel, not PPC based. ... YOU SAID "the top super computing list is full of PowerPC processors, ...
    (comp.sys.mac.advocacy)