On 2012-03-23 10:19, Gary Thomas wrote:
On 2012-03-23 09:48, Martin Jansa wrote:
On Fri, Mar 23, 2012 at 04:35:53PM +0100, Martin Jansa wrote:
On Fri, Mar 23, 2012 at 09:27:08AM -0600, Gary Thomas wrote:
If you install the top-level python package only on a minimal
system which has no other python packages installed then python
is not functional at all. Without any extra packages installed
this error is seen:
# python
Traceback (most recent call last):
File "/usr/lib/python2.7/site.py", line 64, in<module>
import traceback
ImportError: No module named traceback

Installing python-lang only partly fixes the problem as this
error still exists:
# python
Traceback (most recent call last):
File "/usr/lib/python2.7/site.py", line 569, in<module>
main()
File "/usr/lib/python2.7/site.py", line 551, in main
known_paths = addusersitepackages(known_paths)
File "/usr/lib/python2.7/site.py", line 278, in addusersitepackages
user_site = getusersitepackages()
File "/usr/lib/python2.7/site.py", line 253, in getusersitepackages
user_base = getuserbase() # this will also set USER_BASE
File "/usr/lib/python2.7/site.py", line 243, in getuserbase
USER_BASE = get_config_var('userbase')
File "/usr/lib/python2.7/sysconfig.py", line 520, in get_config_var
return get_config_vars().get(name)
File "/usr/lib/python2.7/sysconfig.py", line 400, in get_config_vars
import re
ImportError: No module named re

Signed-off-by: Gary Thomas<[email protected]>
---
meta/recipes-devtools/python/python_2.7.2.bb | 3 ++-
1 files changed, 2 insertions(+), 1 deletions(-)

diff --git a/meta/recipes-devtools/python/python_2.7.2.bb 
b/meta/recipes-devtools/python/python_2.7.2.bb
index 8111b31..f1ba42d 100644
--- a/meta/recipes-devtools/python/python_2.7.2.bb
+++ b/meta/recipes-devtools/python/python_2.7.2.bb
@@ -1,6 +1,6 @@
require python.inc
DEPENDS = "python-native bzip2 db gdbm openssl readline sqlite3 zlib"
-PR = "${INC_PR}.8"
+PR = "${INC_PR}.9"

DISTRO_SRC_URI ?= "file://sitecustomize.py"
DISTRO_SRC_URI_linuxstdbase = ""
@@ -123,6 +123,7 @@ py_package_preprocess () {
require python-${PYTHON_MAJMIN}-manifest.inc

This should be fixed probably in
scripts/contrib/python/generate-manifest-2.7.py


# manual dependency additions
+RRDEPENDS_${PN} = "${PN}-lang ${PN}-re"

And here is typo, how did you test this change?

And also notice that there is no ${PN} in PACKAGES, so by "top-level
python package" you mean python-core right?

Yes. As far as my testing, it got muddled with something else and
what I've proposed doesn't help, sorry. I'm looking into how to fix
this via the generate-manifest script and will send a different patch
shortly [I hope].

Sadly, my attempt to fix this doesn't work.  Here's what I tried, but
it has no effect:

diff --git a/scripts/contrib/python/generate-manifest-2.7.py 
b/scripts/contrib/python/generate-manifest-2.7.py
index 85ca353..bde7db9 100755
--- a/scripts/contrib/python/generate-manifest-2.7.py
+++ b/scripts/contrib/python/generate-manifest-2.7.py
@@ -160,7 +160,7 @@ if __name__ == "__main__":
     # Parameters: revision, name, description, dependencies, filenames
     #

-    m.addPackage( "${PN}-core", "Python Interpreter and core modules (needed!)", 
"",
+    m.addPackage( "${PN}-core", "Python Interpreter and core modules (needed!)", 
"${PN}-lang ${PN}-re",
     "__future__.* _abcoll.* abc.* copy.* copy_reg.* ConfigParser.* " +
     "genericpath.* getopt.* linecache.* new.* " +
     "os.* posixpath.* struct.* " +
@@ -276,7 +276,7 @@ if __name__ == "__main__":
     m.addPackage( "${PN}-json", "Python JSON Support", "${PN}-core ${PN}-math 
${PN}-re",
     "json lib-dynload/_json.so" ) # package

-    m.addPackage( "${PN}-lang", "Python Low-Level Language Support", 
"${PN}-core",
+    m.addPackage( "${PN}-lang", "Python Low-Level Language Support", "",
     "lib-dynload/_bisect.so lib-dynload/_collections.so lib-dynload/_heapq.so 
lib-dynload/_weakref.so lib-dynload/_funct
     "lib-dynload/array.so lib-dynload/itertools.so lib-dynload/operator.so 
lib-dynload/parser.so " +
     "atexit.* bisect.* code.* codeop.* collections.* dis.* functools.* heapq.* 
inspect.* keyword.* opcode.* symbol.* rep
@@ -322,7 +322,7 @@ if __name__ == "__main__":
     m.addPackage( "${PN}-profile", "Python Basic Profiling Support", "${PN}-core 
${PN}-textutils",
     "profile.* pstats.* cProfile.* lib-dynload/_lsprof.so" )

-    m.addPackage( "${PN}-re", "Python Regular Expression APIs", "${PN}-core",
+    m.addPackage( "${PN}-re", "Python Regular Expression APIs", "",
     "re.* sre.* sre_compile.* sre_constants* sre_parse.*" ) # _sre is builtin

     m.addPackage( "${PN}-readline", "Python Readline Support", "${PN}-core",


Query: if I change the script, should I also bum PR in this recipe?



For now, I'll just have to install python-lang and python-re manually...

--
------------------------------------------------------------
Gary Thomas                 |  Consulting for the
MLB Associates              |    Embedded world
------------------------------------------------------------

_______________________________________________
Openembedded-core mailing list
[email protected]
http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core

Reply via email to