Thread: [Pyobjc-dev] pyobjc 2.3 install fails
Brought to you by:
ronaldoussoren
From: Mark S. <sie...@st...> - 2010-12-08 17:44:39
|
Hi, I downloaded pyobjc 2.3 fro http://pypi.python.org/pypi/pyobjc When I do "setup.py install", it apparently downloads a bunch of other stuff, ending with: ... Downloading http://pypi.python.org/packages/source/p/pyobjc-framework-SystemConfiguration/pyobjc-framework-SystemConfiguration-2.3.tar.gz#md5=4c38458240a9f5ead59a041ee496e89b Processing pyobjc-framework-SystemConfiguration-2.3.tar.gz Running pyobjc-framework-SystemConfiguration-2.3/setup.py -q bdist_egg --dist-dir /var/folders/1w/1wzkS8Y4H44BBu-c3gTR7k++2Ws/-Tmp-/easy_install-iwKHFq/pyobjc-framework-SystemConfiguration-2.3/egg-dist-tmp-l5sSob error: Could not find required distribution pyobjc-core As far as I can tell, some part of it must be missing from pypi. Any ideas? Mark S. |
From: Ronald O. <ron...@ma...> - 2010-12-09 09:58:15
Attachments:
smime.p7s
|
On 8 Dec, 2010, at 18:44, Mark Sienkiewicz wrote: > Hi, > > I downloaded pyobjc 2.3 fro http://pypi.python.org/pypi/pyobjc > > When I do "setup.py install", it apparently downloads a bunch of other stuff, ending with: > > ... > Downloading http://pypi.python.org/packages/source/p/pyobjc-framework-SystemConfiguration/pyobjc-framework-SystemConfiguration-2.3.tar.gz#md5=4c38458240a9f5ead59a041ee496e89b > Processing pyobjc-framework-SystemConfiguration-2.3.tar.gz > Running pyobjc-framework-SystemConfiguration-2.3/setup.py -q bdist_egg --dist-dir /var/folders/1w/1wzkS8Y4H44BBu-c3gTR7k++2Ws/-Tmp-/easy_install-iwKHFq/pyobjc-framework-SystemConfiguration-2.3/egg-dist-tmp-l5sSob > error: Could not find required distribution pyobjc-core > > As far as I can tell, some part of it must be missing from pypi. Any ideas? That's odd, pyobjc-core is on pypi and should work just fine. Could you try "easy_install pyobjc-core==2.3" followed running "python setup.py install" for pyobjc itself again? Ronald > > Mark S. > > > ------------------------------------------------------------------------------ > This SF Dev2Dev email is sponsored by: > > WikiLeaks The End of the Free Internet > http://p.sf.net/sfu/therealnews-com > _______________________________________________ > Pyobjc-dev mailing list > Pyo...@li... > https://lists.sourceforge.net/lists/listinfo/pyobjc-dev |
From: Mark S. <sie...@st...> - 2010-12-09 15:43:28
|
>> error: Could not find required distribution pyobjc-core >> >> As far as I can tell, some part of it must be missing from pypi. Any ideas? > > That's odd, pyobjc-core is on pypi and should work just fine. > > Could you try "easy_install pyobjc-core==2.3" followed running "python setup.py install" for pyobjc itself again? I did this: setenv PYTHONPATH /Users/sienkiew/py/lib/python2.7/site-packages easy_install --prefix ~/py pyobjc-core==2.3 It installed something that involved compiling a lot of C code. During the install, there were a few things that look broken, though: libtool: link: ar cru .libs/libxml2.a SAX.o entities.o encoding.o error.o parserInternals.o parser.o tree.o hash.o list.o xmlIO.o xmlmemory o uri.o valid.o xlink.o HTMLparser.o HTMLtree.o debugXML.o xpath.o xpointer.o xinclude.o nanohttp.o nanoftp.o DOCBparser.o catalog.o globals o threads.o c14n.o xmlstring.o xmlregexp.o xmlschemas.o xmlschemastypes.o xmlunicode.o xmlreader.o relaxng.o dict.o SAX2.o xmlwriter.o legac .o chvalid.o pattern.o xmlsave.o xmlmodule.o schematron.o ranlib: file: .libs/libxml2.a(SAX.o) has no symbols ranlib: file: .libs/libxml2.a(xlink.o) has no symbols ranlib: file: .libs/libxml2.a(HTMLparser.o) has no symbols ranlib: file: .libs/libxml2.a(HTMLtree.o) has no symbols ... repeats for about 20 more files ... Later, it finds the same problem again: libtool: install: ranlib /private/var/folders/1w/1wzkS8Y4H44BBu-c3gTR7k++2Ws/-Tmp-/easy_install-7MaF7K/pyobjc-core-2.3/build/libxml/lib/libx l2.a ranlib: file: /private/var/folders/1w/1wzkS8Y4H44BBu-c3gTR7k++2Ws/-Tmp-/easy_install-7MaF7K/pyobjc-core-2.3/build/libxml/lib/libxml2.a(SAX.o has no symbols ranlib: file: /private/var/folders/1w/1wzkS8Y4H44BBu-c3gTR7k++2Ws/-Tmp-/easy_install-7MaF7K/pyobjc-core-2.3/build/libxml/lib/libxml2.a(xlink o) has no symbols ... And later: Modules/objc/test/properties.m:24: warning: Mac OS X version 10.5 or later is needed for use of property Modules/objc/test/properties.m:25: warning: Mac OS X version 10.5 or later is needed for use of property Modules/objc/test/properties.m:26: warning: Mac OS X version 10.5 or later is needed for use of property Modules/objc/test/properties.m:27: warning: Mac OS X version 10.5 or later is needed for use of property Modules/objc/test/properties.m:27: warning: no 'assign', 'retain', or 'copy' attribute is specified - 'assign' is assumed Modules/objc/test/properties.m:27: warning: 'assign' attribute (default) not appropriate for non-gc object property 'prop4' It is 10.5. system_profiler says "System Version: Mac OS X 10.5.8 (9L31a) )" And finally: Skipping installation of build/bdist.macosx-10.4-i386/egg/PyObjCTest/__init__.py (namespace package) Skipping installation of build/bdist.macosx-10.4-i386/egg/PyObjCTest/arrays.so (namespace package) Skipping installation of build/bdist.macosx-10.4-i386/egg/PyObjCTest/block.so (namespace package) Skipping installation of build/bdist.macosx-10.4-i386/egg/PyObjCTest/cfsocket.so (namespace package) Skipping installation of build/bdist.macosx-10.4-i386/egg/PyObjCTest/clinmeth.so (namespace package) ... another 90-100 lines of this, some for .so and some for .py files Skipping installation of build/bdist.macosx-10.4-i386/egg/PyObjCTest/testclassandinst.so (namespace package) Skipping installation of build/bdist.macosx-10.4-i386/egg/PyObjCTest/testoutputinitializer.so (namespace package) Skipping installation of build/bdist.macosx-10.4-i386/egg/PyObjCTest/voidpointer.so (namespace package) Adding pyobjc-core 2.3 to easy-install.pth file Installed /Users/sienkiew/py/lib/python2.7/site-packages/pyobjc_core-2.3-py2.7-macosx-10.4-i386.egg Processing dependencies for pyobjc-core==2.3 Finished processing dependencies for pyobjc-core==2.3 The easy_install step did not produce a working pyobjc: >>> import pyobjc Traceback (most recent call last): File "<stdin>", line 1, in <module> ImportError: No module named pyobjc >>> import sys >>> sys.path ['', '/Users/sienkiew/py/lib/python2.7/site-packages/pyobjc_core-2.3-py2.7-macosx-10.4-i386.egg', '/usr/stsci/pyssg/2.7/distribute-0.6.10-py2.7.egg', '/usr/stsci/pyssg/2.7/Jinja2-2.2.1-py2.7.egg', '/usr/stsci/pyssg/2.7/Pygments-1.1.1-py2.7.egg', '/usr/stsci/pyssg/2.7/Sphinx-1.0.5-py2.7.egg', '/usr/stsci/pyssg/2.7/numpydoc-0.4-py2.7.egg', '/Users/sienkiew/py/lib/python2.7/site-packages', '/usr/stsci/pyssg/2.7', '/usr/stsci/pyssg/2.7/PIL', '/usr/stsci/pyssg/Python-2.7/lib/python27.zip', '/usr/stsci/pyssg/Python-2.7/lib/python2.7', '/usr/stsci/pyssg/Python-2.7/lib/python2.7/plat-darwin', '/usr/stsci/pyssg/Python-2.7/lib/python2.7/plat-mac', '/usr/stsci/pyssg/Python-2.7/lib/python2.7/plat-mac/lib-scriptpackages', '/usr/stsci/pyssg/Python-2.7/lib/python2.7/lib-tk', '/usr/stsci/pyssg/Python-2.7/lib/python2.7/lib-old', '/usr/stsci/pyssg/Python-2.7/lib/python2.7/lib-dynload', '/usr/stsci/pyssg/Python-2.7/lib/python2.7/site-packages', '/usr/stsci/pyssg/Python-2.7/lib/python2.7/site-pa ckages/setuptools-0.6c11-py2.7.egg-info'] >>> So I continued with the setup.py install step: python setup.py install --prefix ~/py It also skipped a lot of files: Skipping installation of build/bdist.macosx-10.4-i386/egg/PyObjCTest/__init__.py (namespace package) Skipping installation of build/bdist.macosx-10.4-i386/egg/PyObjCTest/test_caanimation.py (namespace package) Skipping installation of build/bdist.macosx-10.4-i386/egg/PyObjCTest/test_cabase.py (namespace package) Skipping installation of build/bdist.macosx-10.4-i386/egg/PyObjCTest/test_cacifilteradditions.py (namespace package) Skipping installation of build/bdist.macosx-10.4-i386/egg/PyObjCTest/test_caconstraintlayoutmanager.py (namespace package) ... That also did not produce a working system, but I have a lot more on pythonpath: >>> import pyobjc Traceback (most recent call last): File "<stdin>", line 1, in <module> ImportError: No module named pyobjc >>> import sys >>> sys.path ['', '/Users/sienkiew/py/lib/python2.7/site-packages/pyobjc_core-2.3-py2.7-macosx-10.4-i386.egg', '/Users/sienkiew/py/lib/python2.7/site-packages/pyobjc-2.3-py2.7.egg', '/Users/sienkiew/py/lib/python2.7/site-packages/pyobjc_framework_ScriptingBridge-2.3-py2.7.egg', '/Users/sienkiew/py/lib/python2.7/site-packages/pyobjc_framework_QTKit-2.3-py2.7.egg', '/Users/sienkiew/py/lib/python2.7/site-packages/pyobjc_framework_PubSub-2.3-py2.7.egg', '/Users/sienkiew/py/lib/python2.7/site-packages/pyobjc_framework_InterfaceBuilderKit-2.3-py2.7.egg', '/Users/sienkiew/py/lib/python2.7/site-packages/pyobjc_framework_InstantMessage-2.3-py2.7.egg', '/Users/sienkiew/py/lib/python2.7/site-packages/pyobjc_framework_InputMethodKit-2.3-py2.7.egg', '/Users/sienkiew/py/lib/python2.7/site-packages/pyobjc_framework_DictionaryServices-2.3-py2.7.egg', '/Users/sienkiew/py/lib/python2.7/site-packages/pyobjc_framework_Collaboration-2.3-py2.7.egg', '/Users/sienkiew/py/lib/python2.7/site-packages/pyobjc_framew ork_CalendarStore-2.3-py2.7.egg', '/Users/sienkiew/py/lib/python2.7/site-packages/pyobjc_framework_XgridFoundation-2.3-py2.7.egg', '/Users/sienkiew/py/lib/python2.7/site-packages/pyobjc_framework_WebKit-2.3-py2.7.egg', '/Users/sienkiew/py/lib/python2.7/site-packages/pyobjc_framework_SystemConfiguration-2.3-py2.7-macosx-10.4-i386.egg', '/Users/sienkiew/py/lib/python2.7/site-packages/pyobjc_framework_SyncServices-2.3-py2.7.egg', '/Users/sienkiew/py/lib/python2.7/site-packages/pyobjc_framework_SearchKit-2.3-py2.7.egg', '/Users/sienkiew/py/lib/python2.7/site-packages/pyobjc_framework_ScreenSaver-2.3-py2.7-macosx-10.4-i386.egg', '/Users/sienkiew/py/lib/python2.7/site-packages/pyobjc_framework_Quartz-2.3-py2.7-macosx-10.4-i386.egg', '/Users/sienkiew/py/lib/python2.7/site-packages/pyobjc_framework_PreferencePanes-2.3-py2.7.egg', '/Users/sienkiew/py/lib/python2.7/site-packages/pyobjc_framework_Message-2.3-py2.7.egg', '/Users/sienkiew/py/lib/python2.7/site-packages/pyobjc_framework_La unchServices-2.3-py2.7.egg', '/Users/sienkiew/py/lib/python2.7/site-packages/pyobjc_framework_LatentSemanticMapping-2.3-py2.7.egg', '/Users/sienkiew/py/lib/python2.7/site-packages/pyobjc_framework_InstallerPlugins-2.3-py2.7.egg', '/Users/sienkiew/py/lib/python2.7/site-packages/pyobjc_framework_FSEvents-2.3-py2.7-macosx-10.4-i386.egg', '/Users/sienkiew/py/lib/python2.7/site-packages/pyobjc_framework_ExceptionHandling-2.3-py2.7.egg', '/Users/sienkiew/py/lib/python2.7/site-packages/pyobjc_framework_CoreText-2.3-py2.7-macosx-10.4-i386.egg', '/Users/sienkiew/py/lib/python2.7/site-packages/pyobjc_framework_CoreData-2.3-py2.7.egg', '/Users/sienkiew/py/lib/python2.7/site-packages/pyobjc_framework_Cocoa-2.3-py2.7-macosx-10.4-i386.egg', '/Users/sienkiew/py/lib/python2.7/site-packages/pyobjc_framework_CFNetwork-2.3-py2.7-macosx-10.4-i386.egg', '/Users/sienkiew/py/lib/python2.7/site-packages/pyobjc_framework_Automator-2.3-py2.7.egg', '/Users/sienkiew/py/lib/python2.7/site-packages/pyobjc _framework_AppleScriptKit-2.3-py2.7.egg', '/Users/sienkiew/py/lib/python2.7/site-packages/pyobjc_framework_AddressBook-2.3-py2.7.egg', '/usr/stsci/pyssg/2.7/distribute-0.6.10-py2.7.egg', '/usr/stsci/pyssg/2.7/Jinja2-2.2.1-py2.7.egg', '/usr/stsci/pyssg/2.7/Pygments-1.1.1-py2.7.egg', '/usr/stsci/pyssg/2.7/Sphinx-1.0.5-py2.7.egg', '/usr/stsci/pyssg/2.7/numpydoc-0.4-py2.7.egg', '/Users/sienkiew/py/lib/python2.7/site-packages', '/usr/stsci/pyssg/2.7', '/usr/stsci/pyssg/2.7/PIL', '/usr/stsci/pyssg/Python-2.7/lib/python27.zip', '/usr/stsci/pyssg/Python-2.7/lib/python2.7', '/usr/stsci/pyssg/Python-2.7/lib/python2.7/plat-darwin', '/usr/stsci/pyssg/Python-2.7/lib/python2.7/plat-mac', '/usr/stsci/pyssg/Python-2.7/lib/python2.7/plat-mac/lib-scriptpackages', '/usr/stsci/pyssg/Python-2.7/lib/python2.7/lib-tk', '/usr/stsci/pyssg/Python-2.7/lib/python2.7/lib-old', '/usr/stsci/pyssg/Python-2.7/lib/python2.7/lib-dynload', '/usr/stsci/pyssg/Python-2.7/lib/python2.7/site-packages', '/usr/stsci/p yssg/Python-2.7/lib/python2.7/site-packages/setuptools-0.6c11-py2.7.egg-info'] I also tried just "easy_install --prefix ~/py pyobjc==2.2"; it also did not result in a system where I could "import pyobjc". In that instance, sys.path was: ['', '/Users/sienkiew/py2/lib/python2.7/site-packages/pyobjc-2.2-py2.7.egg', '/Users/sienkiew/py2/lib/python2.7/site-packages/pyobjc_framework_XgridFoundation-2.2-py2.7.egg', '/Users/sienkiew/py2/lib/python2.7/site-packages/pyobjc_framework_WebKit-2.2-py2.7.egg', '/Users/sienkiew/py2/lib/python2.7/site-packages/pyobjc_framework_SystemConfiguration-2.2-py2.7-macosx-10.4-i386.egg', '/Users/sienkiew/py2/lib/python2.7/site-packages/pyobjc_framework_SyncServices-2.2-py2.7.egg', '/Users/sienkiew/py2/lib/python2.7/site-packages/pyobjc_framework_SearchKit-2.2-py2.7.egg', '/Users/sienkiew/py2/lib/python2.7/site-packages/pyobjc_framework_ScreenSaver-2.2-py2.7-macosx-10.4-i386.egg', '/Users/sienkiew/py2/lib/python2.7/site-packages/pyobjc_framework_Quartz-2.2-py2.7-macosx-10.4-i386.egg', '/Users/sienkiew/py2/lib/python2.7/site-packages/pyobjc_framework_PreferencePanes-2.2-py2.7.egg', '/Users/sienkiew/py2/lib/python2.7/site-packages/pyobjc_framework_Message-2.2-py2.7.egg', '/Users/sienkie w/py2/lib/python2.7/site-packages/pyobjc_framework_LaunchServices-2.2-py2.7.egg', '/Users/sienkiew/py2/lib/python2.7/site-packages/pyobjc_framework_LatentSemanticMapping-2.2-py2.7.egg', '/Users/sienkiew/py2/lib/python2.7/site-packages/pyobjc_framework_InstallerPlugins-2.2-py2.7.egg', '/Users/sienkiew/py2/lib/python2.7/site-packages/pyobjc_framework_FSEvents-2.2-py2.7-macosx-10.4-i386.egg', '/Users/sienkiew/py2/lib/python2.7/site-packages/pyobjc_framework_ExceptionHandling-2.2-py2.7.egg', '/Users/sienkiew/py2/lib/python2.7/site-packages/pyobjc_framework_CoreText-2.2-py2.7-macosx-10.4-i386.egg', '/Users/sienkiew/py2/lib/python2.7/site-packages/pyobjc_framework_CoreData-2.2-py2.7.egg', '/Users/sienkiew/py2/lib/python2.7/site-packages/pyobjc_framework_Cocoa-2.2-py2.7-macosx-10.4-i386.egg', '/Users/sienkiew/py2/lib/python2.7/site-packages/pyobjc_framework_CFNetwork-2.2-py2.7-macosx-10.4-i386.egg', '/Users/sienkiew/py2/lib/python2.7/site-packages/pyobjc_framework_Automator-2.2-py2. 7.egg', '/Users/sienkiew/py2/lib/python2.7/site-packages/pyobjc_framework_AppleScriptKit-2.2-py2.7.egg', '/Users/sienkiew/py2/lib/python2.7/site-packages/pyobjc_framework_AddressBook-2.2-py2.7.egg', '/Users/sienkiew/py2/lib/python2.7/site-packages/pyobjc_core-2.2-py2.7-macosx-10.4-i386.egg', '/usr/stsci/pyssg/2.7/distribute-0.6.10-py2.7.egg', '/usr/stsci/pyssg/2.7/Jinja2-2.2.1-py2.7.egg', '/usr/stsci/pyssg/2.7/Pygments-1.1.1-py2.7.egg', '/usr/stsci/pyssg/2.7/Sphinx-1.0.5-py2.7.egg', '/usr/stsci/pyssg/2.7/numpydoc-0.4-py2.7.egg', '/Users/sienkiew/py2/lib/python2.7/site-packages', '/usr/stsci/pyssg/2.7', '/usr/stsci/pyssg/2.7/PIL', '/usr/stsci/pyssg/Python-2.7/lib/python27.zip', '/usr/stsci/pyssg/Python-2.7/lib/python2.7', '/usr/stsci/pyssg/Python-2.7/lib/python2.7/plat-darwin', '/usr/stsci/pyssg/Python-2.7/lib/python2.7/plat-mac', '/usr/stsci/pyssg/Python-2.7/lib/python2.7/plat-mac/lib-scriptpackages', '/usr/stsci/pyssg/Python-2.7/lib/python2.7/lib-tk', '/usr/stsci/pyssg/Pytho n-2.7/lib/python2.7/lib-old', '/usr/stsci/pyssg/Python-2.7/lib/python2.7/lib-dynload', '/usr/stsci/pyssg/Python-2.7/lib/python2.7/site-packages', '/usr/stsci/pyssg/Python-2.7/lib/python2.7/site-packages/setuptools-0.6c11-py2.7.egg-info'] At this point, I'm thinking there must be something odd about my system that two different versions do not work at all, even when installed with easy_install. Unfortunately, I don't really know enough about easy_install to know what questions to ask next. Do you have any suggestions? Mark S. |
From: Ronald O. <ron...@ma...> - 2010-12-09 15:49:23
Attachments:
smime.p7s
|
On 9 Dec, 2010, at 16:43, Mark Sienkiewicz wrote: > >>> error: Could not find required distribution pyobjc-core >>> >>> As far as I can tell, some part of it must be missing from pypi. Any ideas? >> That's odd, pyobjc-core is on pypi and should work just fine. >> Could you try "easy_install pyobjc-core==2.3" followed running "python setup.py install" for pyobjc itself again? > > > I did this: > > setenv PYTHONPATH /Users/sienkiew/py/lib/python2.7/site-packages > easy_install --prefix ~/py pyobjc-core==2.3 > > It installed something that involved compiling a lot of C code. During the install, there were a few things that look broken, though: > > > libtool: link: ar cru .libs/libxml2.a SAX.o entities.o encoding.o error.o parserInternals.o parser.o tree.o hash.o list.o xmlIO.o xmlmemory o uri.o valid.o xlink.o HTMLparser.o HTMLtree.o debugXML.o xpath.o xpointer.o xinclude.o nanohttp.o nanoftp.o DOCBparser.o catalog.o globals o threads.o c14n.o xmlstring.o xmlregexp.o xmlschemas.o xmlschemastypes.o xmlunicode.o xmlreader.o relaxng.o dict.o SAX2.o xmlwriter.o legac .o chvalid.o pattern.o xmlsave.o xmlmodule.o schematron.o > ranlib: file: .libs/libxml2.a(SAX.o) has no symbols > ranlib: file: .libs/libxml2.a(xlink.o) has no symbols > ranlib: file: .libs/libxml2.a(HTMLparser.o) has no symbols > ranlib: file: .libs/libxml2.a(HTMLtree.o) has no symbols > ... repeats for about 20 more files ... This is harmless, due to the way pyobjc compiles a 3th party library we end up with some empty C object files. > > And later: > > Modules/objc/test/properties.m:24: warning: Mac OS X version 10.5 or later is needed for use of property > Modules/objc/test/properties.m:25: warning: Mac OS X version 10.5 or later is needed for use of property > Modules/objc/test/properties.m:26: warning: Mac OS X version 10.5 or later is needed for use of property > Modules/objc/test/properties.m:27: warning: Mac OS X version 10.5 or later is needed for use of property > Modules/objc/test/properties.m:27: warning: no 'assign', 'retain', or 'copy' attribute is specified - 'assign' is assumed > Modules/objc/test/properties.m:27: warning: 'assign' attribute (default) not appropriate for non-gc object property 'prop4' This is not a problem for using pyobjc, the warnings are for parts of the unittests for pyobjc-core. > > > It is 10.5. system_profiler says "System Version: Mac OS X 10.5.8 (9L31a) )" > > And finally: > > Skipping installation of build/bdist.macosx-10.4-i386/egg/PyObjCTest/__init__.py (namespace package) > Skipping installation of build/bdist.macosx-10.4-i386/egg/PyObjCTest/arrays.so (namespace package) > Skipping installation of build/bdist.macosx-10.4-i386/egg/PyObjCTest/block.so (namespace package) > Skipping installation of build/bdist.macosx-10.4-i386/egg/PyObjCTest/cfsocket.so (namespace package) > Skipping installation of build/bdist.macosx-10.4-i386/egg/PyObjCTest/clinmeth.so (namespace package) > ... another 90-100 lines of this, some for .so and some for .py files > Skipping installation of build/bdist.macosx-10.4-i386/egg/PyObjCTest/testclassandinst.so (namespace package) > Skipping installation of build/bdist.macosx-10.4-i386/egg/PyObjCTest/testoutputinitializer.so (namespace package) > Skipping installation of build/bdist.macosx-10.4-i386/egg/PyObjCTest/voidpointer.so (namespace package) > Adding pyobjc-core 2.3 to easy-install.pth file > > Installed /Users/sienkiew/py/lib/python2.7/site-packages/pyobjc_core-2.3-py2.7-macosx-10.4-i386.egg > Processing dependencies for pyobjc-core==2.3 > Finished processing dependencies for pyobjc-core==2.3 This looks OK. > > > The easy_install step did not produce a working pyobjc: > >>>> import pyobjc > Traceback (most recent call last): > File "<stdin>", line 1, in <module> > ImportError: No module named pyobjc That's expected. Use 'import objc' instead. > > > > At this point, I'm thinking there must be something odd about my system that two different versions do not work at all, even when installed with easy_install. Unfortunately, I don't really know enough about easy_install to know what questions to ask next. Do you have any suggestions? You seem the end up with a complete installation. Does 'import Foundation' or 'import AppKit' work? Ronald > > Mark S. > |
From: Mark S. <sie...@st...> - 2010-12-09 16:09:28
|
Thanks for the clarification on those un-important errors. >>>>> import pyobjc >> Traceback (most recent call last): >> File "<stdin>", line 1, in <module> >> ImportError: No module named pyobjc > > That's expected. Use 'import objc' instead. Oh - sorry. (I'm not the user of this package; I just install things.) > You seem the end up with a complete installation. Does 'import Foundation' or 'import AppKit' work? I get this now from pyobjc 2.3: >>> import objc Traceback (most recent call last): File "<stdin>", line 1, in <module> File "/Users/sienkiew/py/lib/python2.7/site-packages/pyobjc_core-2.3-py2.7-macosx-10.4-i386.egg/objc/__init__.py", line 24, in <module> _update() File "/Users/sienkiew/py/lib/python2.7/site-packages/pyobjc_core-2.3-py2.7-macosx-10.4-i386.egg/objc/__init__.py", line 21, in _update import objc._objc as _objc ImportError: dlopen(/Users/sienkiew/py/lib/python2.7/site-packages/pyobjc_core-2.3-py2.7-macosx-10.4-i386.egg/objc/_objc.so, 2): Symbol not found: _PyMac_Error Referenced from: /Users/sienkiew/py/lib/python2.7/site-packages/pyobjc_core-2.3-py2.7-macosx-10.4-i386.egg/objc/_objc.so Expected in: dynamic lookup Foundation and AppKit both start to import, but they get this same exception when they try to import objc. With pyobjc 2.2 it is a different symbol: >>> import objc Traceback (most recent call last): File "<stdin>", line 1, in <module> File "/Users/sienkiew/py2/lib/python2.7/site-packages/pyobjc_core-2.2-py2.7-macosx-10.4-i386.egg/objc/__init__.py", line 22, in <module> _update() File "/Users/sienkiew/py2/lib/python2.7/site-packages/pyobjc_core-2.2-py2.7-macosx-10.4-i386.egg/objc/__init__.py", line 19, in _update import _objc ImportError: dlopen(/Users/sienkiew/py2/lib/python2.7/site-packages/pyobjc_core-2.2-py2.7-macosx-10.4-i386.egg/objc/_objc.so, 2): Symbol not found: _CFMutableArrayRefObj_New Referenced from: /Users/sienkiew/py2/lib/python2.7/site-packages/pyobjc_core-2.2-py2.7-macosx-10.4-i386.egg/objc/_objc.so Expected in: dynamic lookup Normally, I would go hunting for the references to the missing symbols and I would look for where they came from, but as far as I can tell, easy_install does not leave any source code behind. Is there a normal source distribution I can download, so I can see what the code does? ( Actually, that hints at my next question: Is it possible to install pyobjc from a local copy of the software -- e.g. while not connected to the internet? Eventually, I have to take this to systems with more strict configuration control. ) Mark |
From: Ronald O. <ron...@ma...> - 2010-12-09 16:21:20
Attachments:
smime.p7s
|
On 9 Dec, 2010, at 17:09, Mark Sienkiewicz wrote: > Thanks for the clarification on those un-important errors. > >>>>>> import pyobjc >>> Traceback (most recent call last): >>> File "<stdin>", line 1, in <module> >>> ImportError: No module named pyobjc >> That's expected. Use 'import objc' instead. > > Oh - sorry. (I'm not the user of this package; I just install things.) No need to apologize. > > >> You seem the end up with a complete installation. Does 'import Foundation' or 'import AppKit' work? > > I get this now from pyobjc 2.3: > >>>> import objc > Traceback (most recent call last): > File "<stdin>", line 1, in <module> > File "/Users/sienkiew/py/lib/python2.7/site-packages/pyobjc_core-2.3-py2.7-macosx-10.4-i386.egg/objc/__init__.py", line 24, in <module> > _update() > File "/Users/sienkiew/py/lib/python2.7/site-packages/pyobjc_core-2.3-py2.7-macosx-10.4-i386.egg/objc/__init__.py", line 21, in _update > import objc._objc as _objc > ImportError: dlopen(/Users/sienkiew/py/lib/python2.7/site-packages/pyobjc_core-2.3-py2.7-macosx-10.4-i386.egg/objc/_objc.so, 2): Symbol not found: _PyMac_Error > Referenced from: /Users/sienkiew/py/lib/python2.7/site-packages/pyobjc_core-2.3-py2.7-macosx-10.4-i386.egg/objc/_objc.so > Expected in: dynamic lookup > > Foundation and AppKit both start to import, but they get this same exception when they try to import objc. That's one error I hadn't expected. Which python do you use? Are you using a prebuilt binary from the python.org website or something else? What's the output of this code: :>>> import sysconfig :>>> print sysconfig.get_config_var('USE_TOOLBOX_OBJECT_GLUE') I'd expect that this prints None on your system, which is a configuration I haven't tested in a long while. > > With pyobjc 2.2 it is a different symbol: > >>>> import objc > Traceback (most recent call last): > File "<stdin>", line 1, in <module> > File "/Users/sienkiew/py2/lib/python2.7/site-packages/pyobjc_core-2.2-py2.7-macosx-10.4-i386.egg/objc/__init__.py", line 22, in <module> > _update() > File "/Users/sienkiew/py2/lib/python2.7/site-packages/pyobjc_core-2.2-py2.7-macosx-10.4-i386.egg/objc/__init__.py", line 19, in _update > import _objc > ImportError: dlopen(/Users/sienkiew/py2/lib/python2.7/site-packages/pyobjc_core-2.2-py2.7-macosx-10.4-i386.egg/objc/_objc.so, 2): Symbol not found: _CFMutableArrayRefObj_New > Referenced from: /Users/sienkiew/py2/lib/python2.7/site-packages/pyobjc_core-2.2-py2.7-macosx-10.4-i386.egg/objc/_objc.so > Expected in: dynamic lookup > > > Normally, I would go hunting for the references to the missing symbols and I would look for where they came from, but as far as I can tell, easy_install does not leave any source code behind. Is there a normal source distribution I can download, so I can see what the code does? > > ( Actually, that hints at my next question: Is it possible to install pyobjc from a local copy of the software -- e.g. while not connected to the internet? Eventually, I have to take this to systems with more strict configuration control. ) There are source archives for all bits of pyobjc on PyPI. I don't have an archive with all of PyObjC at this time. The setup.py file for 'pyobjc' itself contains a list of subprojects, if you install the source archives for the subprojects in the order they are listed there you should be able to install without an internet connection. Ronald > > Mark > |
From: Mark S. <sie...@st...> - 2010-12-09 17:34:00
|
>> ImportError: dlopen(/Users/sienkiew/py/lib/python2.7/site-packages/pyobjc_core-2.3-py2.7-macosx-10.4-i386.egg/objc/_objc.so, 2): Symbol not found: _PyMac_Error >> Referenced from: /Users/sienkiew/py/lib/python2.7/site-packages/pyobjc_core-2.3-py2.7-macosx-10.4-i386.egg/objc/_objc.so >> Expected in: dynamic lookup > That's one error I hadn't expected. Which python do you use? Are you using a prebuilt binary from the python.org website or something else? It is Python 2.7.1 compiled from source as an i386 executable (32 bits) on Leopard. > What's the output of this code: > > :>>> import sysconfig > :>>> print sysconfig.get_config_var('USE_TOOLBOX_OBJECT_GLUE') > > I'd expect that this prints None on your system, which is a configuration I haven't tested in a long while. It says 0, not None. In the python build procedure that we use here, I see that my configure line includes --disable-toolbox-glue --disable-framework --disable-universalsdk. At one point, all three of them were necessary to get a python that worked, but that choice of options is many years old and I'm not sure I ever knew why those are the options to use. I think it is partly because we don't want this python to try to go into /Library or whatever. >> ( Actually, that hints at my next question: Is it possible to install pyobjc from a local copy of the software -- e.g. while not connected to the internet? Eventually, I have to take this to systems with more strict configuration control. ) > > There are source archives for all bits of pyobjc on PyPI. I don't have an archive with all of PyObjC at this time. > > The setup.py file for 'pyobjc' itself contains a list of subprojects, if you install the source archives for the subprojects in the order they are listed there you should be able to install without an internet connection. I'll take a look - thanks! Mark |
From: Mark S. <sie...@st...> - 2010-12-09 19:35:34
|
>> :>>> import sysconfig >> :>>> print sysconfig.get_config_var('USE_TOOLBOX_OBJECT_GLUE') >> >> I'd expect that this prints None on your system, which is a configuration I haven't tested in a long while. > > It says 0, not None. > > In the python build procedure that we use here, I see that my configure line includes --disable-toolbox-glue --disable-framework --disable-universalsdk. At one point, all three of them were necessary to get a python that worked, but that choice of options is many years old and I'm not sure I ever knew why those are the options to use. I think it is partly because we don't want this python to try to go into /Library or whatever. This is the problem. If I recompile python without --disable-toolbox-glue these things work: - I can install pyobjc 2.2 with easy_install pyobjc==2.2 - I can install pyobjc 2.3 with easy_install --prefix ~/py pyobjc-core==2.3 easy_install --prefix ~/py pyobjc==2.3 I've come over to the belief that there are so many environment variation that it makes sense to explicitly check for prerequisites in the setup.py. For example, when I have C extensions, I call a function that confirms that Python.h is really present in the directory that Python says it is in. (Many linux distributions decide to make it part of a "development" package, so even though distutils will tell you where it is, the file isn't actually there.) I can suggest something like: if not sysconfig.get_config_var('USE_TOOLBOX_OBJECT_GLUE') : print "pyobjc requires a python interpreter that was compiled with --enable-toolbox-glue" sys.exit(1) # exit 1 so the build is recognized as failing Thanks for all the help! I never would have had a solution otherwise. Mark S. |