[OpenWrt-Devel] OpenWRT: how to include byte-compile .pyc files into sysupgrade image?

Xuebing Wang xbing6 at gmail.com
Fri Feb 17 18:26:09 EST 2017


Hi Alex,

Thank you so much for your help.

xuebing wang


On 2017年02月17日 23:37, Alexandru Ardelean wrote:
> @Xuebing: so, there doesn't seem to be a very easy way to do this at build time.
> I mean, at first, it can seem easy, because all that is needed, is to
> add script that compiles here:
> https://github.com/openwrt/packages/blob/for-15.05/lang/python/files/python-package.mk#L94
>
> That script needs to recursively compile all .py files and
> [optionally]  remove them.
> So, feel free to try/hack something for your case.
>
> Maybe a shell script that uses this: http://effbot.org/zone/python-compile.htm
>
>> compile.py
> import os
> import sys
> import py_compile
> for file in sys.argv:
>      py_compile.compile(file)
>      os.remove(file)
>
> find . -name "\.py" | xargs compile.py
>
>
> For the general case [in trunk], I think I have to start considering
> splitting the Python source files and Python byte-compiled files into
> 2 package types.
> There was a older discussion about this ; the idea is to package the
> byte coded files, and offer the sources and python source packages.
> Example: Have `python` package and `python-sources`  package.
> `python` == byte-compiled .pyc files, `python-sources` .py files
>
> Will try to make an effort in the next couple of days to implement the
> general solution for this.
> But, it's Friday now here, and I usually don't do much in the weekend.
> So, hopefully next week I could allocate some time for this.
>
> Thanks
> Alex
>
> On Fri, Feb 17, 2017 at 9:42 AM, Xuebing Wang <xbing6 at gmail.com> wrote:
>> Hi Alex,
>>
>> Thanks a lot for your help.  I am using Python 2.7.12, branch chaos_calmer
>> from (git://github.com/openwrt/openwrt.git), feeds branch is for-15.05.
>>
>> Also, I am using Atheros platform based on MIPS architecture.
>>
>> Thanks again.
>>
>> xuebing wang
>>
>>
>> On 2017年02月17日 15:31, Alexandru Ardelean wrote:
>>> Oh.
>>>
>>> This is an old topic.
>>> Let me think about it, for a bit.
>>>
>>> Quick q: which Python version are you using and from which repo/branch ?
>>> I usually test against trunk.
>>>
>>> Thanks
>>> Alex
>>>
>>> On Fri, Feb 17, 2017 at 8:40 AM, Xuebing Wang <xbing6 at gmail.com> wrote:
>>>> Hi Community and Alexandru:
>>>>
>>>> I am using OpenWrt chaos_calmer for an Atheros based platform, we have a
>>>> complicated Python application which takes time to run.
>>>> - On the target board, I can "python -m compileall ." for Python standard
>>>> libraries in directories "/usr/lib/python2.7", and boot time can improve
>>>> significantly.
>>>>
>>>> Would you please advise how can I change in files
>>>> feeds/packages/lang/python
>>>> to byte-compile Python libraries and include .pyc files in the sysupgrade
>>>> image?
>>>>
>>>> I am using below packages:
>>>> CONFIG_PACKAGE_python-base=y
>>>> CONFIG_PACKAGE_python-light=y
>>>> CONFIG_PACKAGE_python-codecs=y
>>>> CONFIG_PACKAGE_python-openssl=y
>>>> CONFIG_PACKAGE_python-sqlite3=y
>>>> CONFIG_PACKAGE_python-logging=y
>>>>
>>>> Thanks.
>>>> xuebing wang
>>>>
_______________________________________________
openwrt-devel mailing list
openwrt-devel at lists.openwrt.org
https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel


More information about the openwrt-devel mailing list