Hey Paul:

Thanks very much for the help.

I already have a meta-toolchain.bbappend in our project so I added 
nativesdk-python-modules to the TOOLCHAIN_HOST_TASK append line in there.

The system doesn't seem to detect the change, though. If I "bitbake 
meta-toolchain" no tasks are performed. If I "bitbake meta-toolchain -c 
cleanall" and rebuild it just repackages the toolchain...no new packages are 
added and there's no nativesdk-python-modules dir in the work dir for the SDK.

This is really odd, because I added some jibberish to meta-toolchain.append and 
tried again. It fails with a parsing error on the lines I added, so I know the 
file is being re-parsed.

Any thoughts?

Thanks again.
-Erik

-----Original Message-----
From: Paul Eggleton [mailto:paul.eggle...@linux.intel.com]
Sent: Wednesday, April 08, 2015 9:22 AM
To: Erik Bolton
Cc: yocto@yoctoproject.org
Subject: Re: [yocto] Python Error in SDK

Hi Erik,

On Tuesday 07 April 2015 06:44:01 Erik Bolton wrote:
> This has been brought up before (although I think the error was
> different), but I'm having a lot of issues with the version of Python
> included with the SDK.
>
> We use Python for code generation as part of our project. If I source
> the environment script and try to run our Python scripts I get this:
>
> Traceback (most recent call last):
>   File
> "/opt/poky/1.7.1/sysroots/x86_64-pokysdk-linux/usr/lib/python2.7/site.
> py",
> line 569, in <module> main()
>   File
> "/opt/poky/1.7.1/sysroots/x86_64-pokysdk-linux/usr/lib/python2.7/site.
> py", line 551, in main known_paths = addusersitepackages(known_paths)
>   File
> "/opt/poky/1.7.1/sysroots/x86_64-pokysdk-linux/usr/lib/python2.7/site.
> py", line 278, in addusersitepackages user_site =
> getusersitepackages()
>   File
> "/opt/poky/1.7.1/sysroots/x86_64-pokysdk-linux/usr/lib/python2.7/site.
> py", line 253, in getusersitepackages user_base = getuserbase() # this
> will also set USER_BASE
>   File
> "/opt/poky/1.7.1/sysroots/x86_64-pokysdk-linux/usr/lib/python2.7/site.
> py", line 242, in getuserbase from sysconfig import get_config_var
>   File
> "/opt/poky/1.7.1/sysroots/x86_64-pokysdk-linux/usr/lib/python2.7/sysconfig.
> py", line 10, in <module> 'stdlib':
> '{base}/'+sys.lib+'/python{py_version_short}',
> AttributeError: 'module' object has no attribute 'lib'
>
> If I try running something that doesn't exist I get this:
>
> Fatal Python error: Py_Initialize: Unable to get the locale encoding
> ImportError: No module named 'encodings'
> Aborted (core dumped)
>
> I've tried using update-alternatives to point the SDK python to my
> local python (Ubuntu 14.10, Python 2.7.8), but the errors persist.
>
> I know a few people have simply deleted the python binary from the
> SDK, but I don't think that will help in my case.
>
> I would try to remove it from the SDK in the actual package groups,
> but smartpm and a few other programs depend on it. I'm not sure they
> would play nice with my local version.
>
> Any suggestions on how to fix this "correctly"?

Basically when python (technically, "nativesdk-python" when talking about the
SDK) gets pulled in, that's the minimal python core and not all of the modules 
in the normal Python distribution, resulting in failures such as these. You can 
add those however by adding the following either in your image recipe (if using 
-c populate_sdk) or in your configuration:

  TOOLCHAIN_HOST_TASK_append = " nativesdk-python-modules"

Rebuild and re-install the SDK and things should work a bit better after that.

Cheers,
Paul

--

Paul Eggleton
Intel Open Source Technology Centre
Disclaimer: This message contains information that may be privileged or 
confidential and is the property of AgJunction Inc and its subsidiaries. It is 
intended only for the person to whom it is addressed. If you are not the 
intended recipient, you are not authorized to read, print, retain, copy, 
disseminate, distribute, or use this message or any part thereof. If you 
receive this message in error, please notify the sender immediately and delete 
all copies of this message.
-- 
_______________________________________________
yocto mailing list
yocto@yoctoproject.org
https://lists.yoctoproject.org/listinfo/yocto

Reply via email to