Yocto Project Discussions
 help / color / mirror / Atom feed
* devtool modify issues with ubuntu 20 and fedora core 32
@ 2020-06-02 21:28 Andrew Geissler
  2020-06-03  9:06 ` [yocto] " Alexander Kanavin
  0 siblings, 1 reply; 6+ messages in thread
From: Andrew Geissler @ 2020-06-02 21:28 UTC (permalink / raw)
  To: yocto

[-- Attachment #1: Type: text/plain, Size: 8525 bytes --]

I see meta-poky/conf/distro/poky.conf lists both Ubuntu 20 and FC32 as supported but a couple of us have seen issues with running devtool modify using these distros.

Anyone else seeing this or know of the issue?

Seems like something with _PYTHON_SYSCONFIGDATA_NAME and sysconfig.py.

A quick hack was to modify sysconfig.py _get_sysconfigdata_name() function and change _PYTHON_SYSCONFIGDATA_NAME to _PYTHON_SYSCONFIGDATA_NAME_INVALID so the python function will use the alternative _sysconfigdata_{abi}_{platform}_{multiarch}'.format

We see this building OpenBMC code using upstream master open-embedded.

Here's the full error:

devtool modify phosphor-state-manager
NOTE: Starting bitbake server...
NOTE: Reconnecting to bitbake server...
NOTE: Retrying server connection (#1)...
NOTE: Reconnecting to bitbake server...
NOTE: Previous bitbake instance shutting down?, waiting to retry...
NOTE: Retrying server connection (#2)...
Loading cache: 100% |##############################################################################################################| Time: 0:00:00
Loaded 3614 entries from dependency cache.
Parsing recipes: 100% |############################################################################################################| Time: 0:00:00
Parsing of 2406 .bb files complete (2404 cached, 2 parsed). 3615 targets, 362 skipped, 0 masked, 0 errors.
NOTE: Resolving any missing task queue dependencies

Build Configuration:
BB_VERSION           = "1.46.0"
BUILD_SYS            = "x86_64-linux"
NATIVELSBSTRING      = "ubuntu-20.04"
TARGET_SYS           = "arm-openbmc-linux-gnueabi"
MACHINE              = "witherspoon"
DISTRO               = "openbmc-witherspoon"
DISTRO_VERSION       = "0.1.0"
TUNE_FEATURES        = "arm thumb arm1176jzs"
TARGET_FPU           = "soft"
meta
meta-oe
meta-networking
meta-perl
meta-python
meta-phosphor
meta-aspeed
meta-openpower
meta-ibm
workspace            = "master:1ba73b9e60779e905f483b419fc2a801e0d17873"

Initialising tasks: 100% |#########################################################################################################| Time: 0:00:00
Sstate summary: Wanted 0 Found 0 Missed 0 Current 10 (0% match, 100% complete)
NOTE: Executing Tasks
ERROR: Error executing a python function in exec_python_func() autogenerated:

The stack trace of python calls that resulted in this exception/failure was:
File: 'exec_python_func() autogenerated', lineno: 2, function: <module>
0001:
*** 0002:devtool_post_unpack(d)
0003:
File: '/home/andrewg/Code/openbmc/meta/classes/devtool-source.bbclass', lineno: 68, function: devtool_post_unpack
0064:}
0065:
0066:
0067:python devtool_post_unpack() {
*** 0068:    import oe.recipeutils
0069:    import shutil
0070:    sys.path.insert(0, os.path.join(d.getVar('COREBASE'), 'scripts', 'lib'))
0071:    import scriptutils
0072:    from devtool import setup_git_repo
File: '/home/andrewg/Code/openbmc/meta/lib/oe/recipeutils.py', lineno: 21, function: <module>
0017:import shutil
0018:import re
0019:import fnmatch
0020:import glob
*** 0021:import bb.tinfoil
0022:
0023:from collections import OrderedDict, defaultdict
0024:from bb.utils import vercmp_string
0025:
File: '/home/andrewg/Code/openbmc/poky/bitbake/lib/bb/tinfoil.py', lineno: 19, function: <module>
0015:from collections import OrderedDict, defaultdict
0016:from functools import partial
0017:
0018:import bb.cache
*** 0019:import bb.cooker
0020:import bb.providers
0021:import bb.taskdata
0022:import bb.utils
0023:import bb.command
File: '/home/andrewg/Code/openbmc/poky/bitbake/lib/bb/cooker.py', lineno: 25, function: <module>
0021:import bb, bb.exceptions, bb.command
0022:from bb import utils, data, parse, event, cache, providers, taskdata, runqueue, build
0023:import queue
0024:import signal
*** 0025:import prserv.serv
0026:import pyinotify
0027:import json
0028:import pickle
0029:import codecs
File: '/home/andrewg/Code/openbmc/poky/bitbake/lib/prserv/serv.py', lineno: 7, function: <module>
0003:#
0004:
0005:import os,sys,logging
0006:import signal, time
*** 0007:from xmlrpc.server import SimpleXMLRPCServer, SimpleXMLRPCRequestHandler
0008:import threading
0009:import queue
0010:import socket
0011:import io
File: '/opt/poky/3.1/sysroots/x86_64-pokysdk-linux/usr/lib/python3.8/xmlrpc/server.py', lineno: 117, function: <module>
0113:import socketserver
0114:import sys
0115:import os
0116:import re
*** 0117:import pydoc
0118:import traceback
0119:try:
0120:    import fcntl
0121:except ImportError:
File: '/opt/poky/3.1/sysroots/x86_64-pokysdk-linux/usr/lib/python3.8/pydoc.py', lineno: 366, function: <module>
0362:    return module
0363:
0364:# ---------------------------------------------------- formatter base class
0365:
*** 0366:class Doc:
0367:
0368:    PYTHONDOCS = os.environ.get("PYTHONDOCS",
0369:                                "https://docs.python.org/%d.%d/library"
0370:                                % sys.version_info[:2])
File: '/opt/poky/3.1/sysroots/x86_64-pokysdk-linux/usr/lib/python3.8/pydoc.py', lineno: 396, function: Doc
0392:        raise TypeError(message)
0393:
0394:    docmodule = docclass = docroutine = docother = docproperty = docdata = fail
0395:
*** 0396:    def getdocloc(self, object, basedir=sysconfig.get_path('stdlib')):
0397:        """Return the location of module docs or None"""
0398:
0399:        try:
0400:            file = inspect.getabsfile(object)
File: '/opt/poky/3.1/sysroots/x86_64-pokysdk-linux/usr/lib/python3.8/sysconfig.py', lineno: 514, function: get_path
0510:    """Return a path corresponding to the scheme.
0511:
0512:    ``scheme`` is the install scheme name.
0513:    """
*** 0514:    return get_paths(scheme, vars, expand)[name]
0515:
0516:
0517:def get_config_vars(*args):
0518:    """With no arguments, return a dictionary of all configuration
File: '/opt/poky/3.1/sysroots/x86_64-pokysdk-linux/usr/lib/python3.8/sysconfig.py', lineno: 504, function: get_paths
0500:    ``scheme`` is the install scheme name. If not provided, it will
0501:    return the default scheme for the current platform.
0502:    """
0503:    if expand:
*** 0504:        return _expand_vars(scheme, vars)
0505:    else:
0506:        return _INSTALL_SCHEMES[scheme]
0507:
0508:
File: '/opt/poky/3.1/sysroots/x86_64-pokysdk-linux/usr/lib/python3.8/sysconfig.py', lineno: 172, function: _expand_vars
0168:def _expand_vars(scheme, vars):
0169:    res = {}
0170:    if vars is None:
0171:        vars = {}
*** 0172:    _extend_dict(vars, get_config_vars())
0173:
0174:    for key, value in _INSTALL_SCHEMES[scheme].items():
0175:        if os.name in ('posix', 'nt'):
0176:            value = os.path.expanduser(value)
File: '/opt/poky/3.1/sysroots/x86_64-pokysdk-linux/usr/lib/python3.8/sysconfig.py', lineno: 552, function: get_config_vars
0548:
0549:        if os.name == 'nt':
0550:            _init_non_posix(_CONFIG_VARS)
0551:        if os.name == 'posix':
*** 0552:            _init_posix(_CONFIG_VARS)
0553:        # For backward compatibility, see issue19555
0554:        SO = _CONFIG_VARS.get('EXT_SUFFIX')
0555:        if SO is not None:
0556:            _CONFIG_VARS['SO'] = SO
File: '/opt/poky/3.1/sysroots/x86_64-pokysdk-linux/usr/lib/python3.8/sysconfig.py', lineno: 423, function: _init_posix
0419:def _init_posix(vars):
0420:    """Initialize the module as appropriate for POSIX systems."""
0421:    # _sysconfigdata is generated at build time, see _generate_posix_vars()
0422:    name = _get_sysconfigdata_name()
*** 0423:    _temp = __import__(name, globals(), locals(), ['build_time_vars'], 0)
0424:    build_time_vars = _temp.build_time_vars
0425:    vars.update(build_time_vars)
0426:
0427:def _init_non_posix(vars):
Exception: ModuleNotFoundError: No module named '_sysconfigdata'

ERROR: Logfile of failure stored in: /home/andrewg/Code/openbmc/build/tmp/work/arm1176jzs-openbmc-linux-gnueabi/phosphor-state-manager/1.0+gitAUTOINC+42f2898d18-r1/devtooltmp-5k9pa8p_/temp/log.do_unpack.3596808

[-- Attachment #2: Type: text/html, Size: 14602 bytes --]

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [yocto] devtool modify issues with ubuntu 20 and fedora core 32
  2020-06-02 21:28 devtool modify issues with ubuntu 20 and fedora core 32 Andrew Geissler
@ 2020-06-03  9:06 ` Alexander Kanavin
  2020-06-03 13:42   ` Richard Purdie
  0 siblings, 1 reply; 6+ messages in thread
From: Alexander Kanavin @ 2020-06-03  9:06 UTC (permalink / raw)
  To: Andrew Geissler; +Cc: yocto

[-- Attachment #1: Type: text/plain, Size: 9715 bytes --]

I'm not sure if this is distro specific. _PYTHON_SYSCONFIGDATA_NAME is set
from python3native.bbclass so that native python can pick up target
configuration, and if the target configuration is not there (it comes with
target python3 build), then there will be a failure like the above. How
does your recipe look like? Do you get the same failure if you try devtool
modify in a plain yocto environment (not the SDK)?

Alex

On Tue, 2 Jun 2020 at 23:28, Andrew Geissler <geissonator@gmail.com> wrote:

> I see meta-poky/conf/distro/poky.conf lists both Ubuntu 20 and FC32 as
> supported but a couple of us have seen issues with running devtool modify
> using these distros.
>
> Anyone else seeing this or know of the issue?
>
> Seems like something with _PYTHON_SYSCONFIGDATA_NAME and sysconfig.py.
>
> A quick hack was to modify sysconfig.py _get_sysconfigdata_name() function
> and change _PYTHON_SYSCONFIGDATA_NAME to _PYTHON_SYSCONFIGDATA_NAME_INVALID
> so the python function will use the alternative
> _sysconfigdata_{abi}_{platform}_{multiarch}'.format
>
> We see this building OpenBMC code using upstream master open-embedded.
>
> Here's the full error:
>
> devtool modify phosphor-state-manager
> NOTE: Starting bitbake server...
> NOTE: Reconnecting to bitbake server...
> NOTE: Retrying server connection (#1)...
> NOTE: Reconnecting to bitbake server...
> NOTE: Previous bitbake instance shutting down?, waiting to retry...
> NOTE: Retrying server connection (#2)...
> Loading cache: 100%
> |##############################################################################################################|
> Time: 0:00:00
> Loaded 3614 entries from dependency cache.
> Parsing recipes: 100%
> |############################################################################################################|
> Time: 0:00:00
> Parsing of 2406 .bb files complete (2404 cached, 2 parsed). 3615 targets,
> 362 skipped, 0 masked, 0 errors.
> NOTE: Resolving any missing task queue dependencies
>
> Build Configuration:
> BB_VERSION           = "1.46.0"
> BUILD_SYS            = "x86_64-linux"
> NATIVELSBSTRING      = "ubuntu-20.04"
> TARGET_SYS           = "arm-openbmc-linux-gnueabi"
> MACHINE              = "witherspoon"
> DISTRO               = "openbmc-witherspoon"
> DISTRO_VERSION       = "0.1.0"
> TUNE_FEATURES        = "arm thumb arm1176jzs"
> TARGET_FPU           = "soft"
> meta
> meta-oe
> meta-networking
> meta-perl
> meta-python
> meta-phosphor
> meta-aspeed
> meta-openpower
> meta-ibm
> workspace            = "master:1ba73b9e60779e905f483b419fc2a801e0d17873"
>
> Initialising tasks: 100%
> |#########################################################################################################|
> Time: 0:00:00
> Sstate summary: Wanted 0 Found 0 Missed 0 Current 10 (0% match, 100%
> complete)
> NOTE: Executing Tasks
> ERROR: Error executing a python function in exec_python_func()
> autogenerated:
>
> The stack trace of python calls that resulted in this exception/failure
> was:
> File: 'exec_python_func() autogenerated', lineno: 2, function: <module>
>      0001:
>  *** 0002:devtool_post_unpack(d)
>      0003:
> File: '/home/andrewg/Code/openbmc/meta/classes/devtool-source.bbclass',
> lineno: 68, function: devtool_post_unpack
>      0064:}
>      0065:
>      0066:
>      0067:python devtool_post_unpack() {
>  *** 0068:    import oe.recipeutils
>      0069:    import shutil
>      0070:    sys.path.insert(0, os.path.join(d.getVar('COREBASE'),
> 'scripts', 'lib'))
>      0071:    import scriptutils
>      0072:    from devtool import setup_git_repo
> File: '/home/andrewg/Code/openbmc/meta/lib/oe/recipeutils.py', lineno: 21,
> function: <module>
>      0017:import shutil
>      0018:import re
>      0019:import fnmatch
>      0020:import glob
>  *** 0021:import bb.tinfoil
>      0022:
>      0023:from collections import OrderedDict, defaultdict
>      0024:from bb.utils import vercmp_string
>      0025:
> File: '/home/andrewg/Code/openbmc/poky/bitbake/lib/bb/tinfoil.py', lineno:
> 19, function: <module>
>      0015:from collections import OrderedDict, defaultdict
>      0016:from functools import partial
>      0017:
>      0018:import bb.cache
>  *** 0019:import bb.cooker
>      0020:import bb.providers
>      0021:import bb.taskdata
>      0022:import bb.utils
>      0023:import bb.command
> File: '/home/andrewg/Code/openbmc/poky/bitbake/lib/bb/cooker.py', lineno:
> 25, function: <module>
>      0021:import bb, bb.exceptions, bb.command
>      0022:from bb import utils, data, parse, event, cache, providers,
> taskdata, runqueue, build
>      0023:import queue
>      0024:import signal
>  *** 0025:import prserv.serv
>      0026:import pyinotify
>      0027:import json
>      0028:import pickle
>      0029:import codecs
> File: '/home/andrewg/Code/openbmc/poky/bitbake/lib/prserv/serv.py',
> lineno: 7, function: <module>
>      0003:#
>      0004:
>      0005:import os,sys,logging
>      0006:import signal, time
>  *** 0007:from xmlrpc.server import SimpleXMLRPCServer,
> SimpleXMLRPCRequestHandler
>      0008:import threading
>      0009:import queue
>      0010:import socket
>      0011:import io
> File:
> '/opt/poky/3.1/sysroots/x86_64-pokysdk-linux/usr/lib/python3.8/xmlrpc/server.py',
> lineno: 117, function: <module>
>      0113:import socketserver
>      0114:import sys
>      0115:import os
>      0116:import re
>  *** 0117:import pydoc
>      0118:import traceback
>      0119:try:
>      0120:    import fcntl
>      0121:except ImportError:
> File:
> '/opt/poky/3.1/sysroots/x86_64-pokysdk-linux/usr/lib/python3.8/pydoc.py',
> lineno: 366, function: <module>
>      0362:    return module
>      0363:
>      0364:# ---------------------------------------------------- formatter
> base class
>      0365:
>  *** 0366:class Doc:
>      0367:
>      0368:    PYTHONDOCS = os.environ.get("PYTHONDOCS",
>      0369:                                "
> https://docs.python.org/%d.%d/library"
>      0370:                                % sys.version_info[:2])
> File:
> '/opt/poky/3.1/sysroots/x86_64-pokysdk-linux/usr/lib/python3.8/pydoc.py',
> lineno: 396, function: Doc
>      0392:        raise TypeError(message)
>      0393:
>      0394:    docmodule = docclass = docroutine = docother = docproperty =
> docdata = fail
>      0395:
>  *** 0396:    def getdocloc(self, object,
> basedir=sysconfig.get_path('stdlib')):
>      0397:        """Return the location of module docs or None"""
>      0398:
>      0399:        try:
>      0400:            file = inspect.getabsfile(object)
> File:
> '/opt/poky/3.1/sysroots/x86_64-pokysdk-linux/usr/lib/python3.8/sysconfig.py',
> lineno: 514, function: get_path
>      0510:    """Return a path corresponding to the scheme.
>      0511:
>      0512:    ``scheme`` is the install scheme name.
>      0513:    """
>  *** 0514:    return get_paths(scheme, vars, expand)[name]
>      0515:
>      0516:
>      0517:def get_config_vars(*args):
>      0518:    """With no arguments, return a dictionary of all
> configuration
> File:
> '/opt/poky/3.1/sysroots/x86_64-pokysdk-linux/usr/lib/python3.8/sysconfig.py',
> lineno: 504, function: get_paths
>      0500:    ``scheme`` is the install scheme name. If not provided, it
> will
>      0501:    return the default scheme for the current platform.
>      0502:    """
>      0503:    if expand:
>  *** 0504:        return _expand_vars(scheme, vars)
>      0505:    else:
>      0506:        return _INSTALL_SCHEMES[scheme]
>      0507:
>      0508:
> File:
> '/opt/poky/3.1/sysroots/x86_64-pokysdk-linux/usr/lib/python3.8/sysconfig.py',
> lineno: 172, function: _expand_vars
>      0168:def _expand_vars(scheme, vars):
>      0169:    res = {}
>      0170:    if vars is None:
>      0171:        vars = {}
>  *** 0172:    _extend_dict(vars, get_config_vars())
>      0173:
>      0174:    for key, value in _INSTALL_SCHEMES[scheme].items():
>      0175:        if os.name in ('posix', 'nt'):
>      0176:            value = os.path.expanduser(value)
> File:
> '/opt/poky/3.1/sysroots/x86_64-pokysdk-linux/usr/lib/python3.8/sysconfig.py',
> lineno: 552, function: get_config_vars
>      0548:
>      0549:        if os.name == 'nt':
>      0550:            _init_non_posix(_CONFIG_VARS)
>      0551:        if os.name == 'posix':
>  *** 0552:            _init_posix(_CONFIG_VARS)
>      0553:        # For backward compatibility, see issue19555
>      0554:        SO = _CONFIG_VARS.get('EXT_SUFFIX')
>      0555:        if SO is not None:
>      0556:            _CONFIG_VARS['SO'] = SO
> File:
> '/opt/poky/3.1/sysroots/x86_64-pokysdk-linux/usr/lib/python3.8/sysconfig.py',
> lineno: 423, function: _init_posix
>      0419:def _init_posix(vars):
>      0420:    """Initialize the module as appropriate for POSIX systems."""
>      0421:    # _sysconfigdata is generated at build time, see
> _generate_posix_vars()
>      0422:    name = _get_sysconfigdata_name()
>  *** 0423:    _temp = __import__(name, globals(), locals(),
> ['build_time_vars'], 0)
>      0424:    build_time_vars = _temp.build_time_vars
>      0425:    vars.update(build_time_vars)
>      0426:
>      0427:def _init_non_posix(vars):
> Exception: ModuleNotFoundError: No module named '_sysconfigdata'
>
> ERROR: Logfile of failure stored in:
> /home/andrewg/Code/openbmc/build/tmp/work/arm1176jzs-openbmc-linux-gnueabi/phosphor-state-manager/1.0+gitAUTOINC+42f2898d18-r1/devtooltmp-5k9pa8p_/temp/log.do_unpack.3596808
>
> 
>

[-- Attachment #2: Type: text/html, Size: 11912 bytes --]

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [yocto] devtool modify issues with ubuntu 20 and fedora core 32
  2020-06-03  9:06 ` [yocto] " Alexander Kanavin
@ 2020-06-03 13:42   ` Richard Purdie
  2020-06-03 14:40     ` kergoth
  0 siblings, 1 reply; 6+ messages in thread
From: Richard Purdie @ 2020-06-03 13:42 UTC (permalink / raw)
  To: Alexander Kanavin, Andrew Geissler, Christopher Larson; +Cc: yocto

On Wed, 2020-06-03 at 11:06 +0200, Alexander Kanavin wrote:
> I'm not sure if this is distro specific. _PYTHON_SYSCONFIGDATA_NAME
> is set from python3native.bbclass so that native python can pick up
> target configuration, and if the target configuration is not there
> (it comes with target python3 build), then there will be a failure
> like the above. How does your recipe look like? Do you get the same
> failure if you try devtool modify in a plain yocto environment (not
> the SDK)?

Chris and I did talk about this on irc:

(22:33:38) kergoth: actually fails even without prserv enabled at all
(22:34:07) kergoth: just import pydoc will call sysconfig.get_path() which enters that codepath
(22:34:22) kergoth: so calling anything that imports bb from a task will explode
(22:34:33) kergoth: cooker pulls in xmlrpc, which pulls in pydoc
(22:34:41) kergoth: breaks devtool modify
(22:37:04) RP: kergoth: right, it was more about it being a hint at the kinds of issues
(22:37:11) kergoth: ah, fair enough
(22:37:26) kergoth: i expect we may need to change how python3native is doing its thing
(22:42:55) RP: kergoth: quite possibly. I never liked that fix and suspected there was more to it :/
(23:21:39) kergoth: RP: maybe something like https://github.com/openembedded/openembedded-core/compare/master...kergoth:python-sysconfig ? i'll mull it over. makes sense, though. we rename _sysconfig only for the python3-native recipe, so it'd make sense for us to only change that name for our python, not any python run from the task
(23:21:49) kergoth: _sysconfigdata, that is
(23:46:35) RP: kergoth: something like that would make sense, yes

Chris: Did you come to any conclusion? 

Does someone want to send a patch?

Cheers,

Richard


^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [yocto] devtool modify issues with ubuntu 20 and fedora core 32
  2020-06-03 13:42   ` Richard Purdie
@ 2020-06-03 14:40     ` kergoth
  2020-06-14 23:31       ` Peter Kjellerstedt
  0 siblings, 1 reply; 6+ messages in thread
From: kergoth @ 2020-06-03 14:40 UTC (permalink / raw)
  To: yocto@lists.yoctoproject.org



> On Jun 3, 2020, at 6:43 AM, Richard Purdie <richard.purdie@linuxfoundation.org> wrote:
> 
> On Wed, 2020-06-03 at 11:06 +0200, Alexander Kanavin wrote:
>> I'm not sure if this is distro specific. _PYTHON_SYSCONFIGDATA_NAME
>> is set from python3native.bbclass so that native python can pick up
>> target configuration, and if the target configuration is not there
>> (it comes with target python3 build), then there will be a failure
>> like the above. How does your recipe look like? Do you get the same
>> failure if you try devtool modify in a plain yocto environment (not
>> the SDK)?
> 
> Chris and I did talk about this on irc:
> 
> (22:33:38) kergoth: actually fails even without prserv enabled at all
> (22:34:07) kergoth: just import pydoc will call sysconfig.get_path() which enters that codepath
> (22:34:22) kergoth: so calling anything that imports bb from a task will explode
> (22:34:33) kergoth: cooker pulls in xmlrpc, which pulls in pydoc
> (22:34:41) kergoth: breaks devtool modify
> (22:37:04) RP: kergoth: right, it was more about it being a hint at the kinds of issues
> (22:37:11) kergoth: ah, fair enough
> (22:37:26) kergoth: i expect we may need to change how python3native is doing its thing
> (22:42:55) RP: kergoth: quite possibly. I never liked that fix and suspected there was more to it :/
> (23:21:39) kergoth: RP: maybe something like https://github.com/openembedded/openembedded-core/compare/master...kergoth:python-sysconfig ? i'll mull it over. makes sense, though. we rename _sysconfig only for the python3-native recipe, so it'd make sense for us to only change that name for our python, not any python run from the task
> (23:21:49) kergoth: _sysconfigdata, that is
> (23:46:35) RP: kergoth: something like that would make sense, yes
> 
> Chris: Did you come to any conclusion? 

I tested the initial linked prototype but it caused failures in the glib build so it must have been missing something. I haven’t had time this week to look back into it yet.

> Does someone want to send a patch?
> 
> Cheers,
> 
> Richard
> 

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [yocto] devtool modify issues with ubuntu 20 and fedora core 32
  2020-06-03 14:40     ` kergoth
@ 2020-06-14 23:31       ` Peter Kjellerstedt
  2020-10-27 10:14         ` ernst.sjostrand
  0 siblings, 1 reply; 6+ messages in thread
From: Peter Kjellerstedt @ 2020-06-14 23:31 UTC (permalink / raw)
  To: kergoth@gmail.com, yocto@lists.yoctoproject.org

> -----Original Message-----
> From: yocto@lists.yoctoproject.org <yocto@lists.yoctoproject.org> On
> Behalf Of kergoth@gmail.com
> Sent: den 3 juni 2020 16:40
> To: yocto@lists.yoctoproject.org
> Subject: Re: [yocto] devtool modify issues with ubuntu 20 and fedora core
> 32
> 
> > On Jun 3, 2020, at 6:43 AM, Richard Purdie
> <richard.purdie@linuxfoundation.org> wrote:
> >
> > On Wed, 2020-06-03 at 11:06 +0200, Alexander Kanavin wrote:
> >> I'm not sure if this is distro specific. _PYTHON_SYSCONFIGDATA_NAME
> >> is set from python3native.bbclass so that native python can pick up
> >> target configuration, and if the target configuration is not there
> >> (it comes with target python3 build), then there will be a failure
> >> like the above. How does your recipe look like? Do you get the same
> >> failure if you try devtool modify in a plain yocto environment (not
> >> the SDK)?
> >
> > Chris and I did talk about this on irc:
> >
> > (22:33:38) kergoth: actually fails even without prserv enabled at all
> > (22:34:07) kergoth: just import pydoc will call sysconfig.get_path()
> which enters that codepath
> > (22:34:22) kergoth: so calling anything that imports bb from a task
> will explode
> > (22:34:33) kergoth: cooker pulls in xmlrpc, which pulls in pydoc
> > (22:34:41) kergoth: breaks devtool modify
> > (22:37:04) RP: kergoth: right, it was more about it being a hint at the
> kinds of issues
> > (22:37:11) kergoth: ah, fair enough
> > (22:37:26) kergoth: i expect we may need to change how python3native is
> doing its thing
> > (22:42:55) RP: kergoth: quite possibly. I never liked that fix and
> suspected there was more to it :/
> > (23:21:39) kergoth: RP: maybe something like
> https://github.com/openembedded/openembedded-
> core/compare/master...kergoth:python-sysconfig ? i'll mull it over. makes
> sense, though. we rename _sysconfig only for the python3-native recipe,
> so it'd make sense for us to only change that name for our python, not
> any python run from the task
> > (23:21:49) kergoth: _sysconfigdata, that is
> > (23:46:35) RP: kergoth: something like that would make sense, yes
> >
> > Chris: Did you come to any conclusion?
> 
> I tested the initial linked prototype but it caused failures in the glib
> build so it must have been missing something. I haven’t had time this
> week to look back into it yet.
> 
> > Does someone want to send a patch?
> >
> > Cheers,
> >
> > Richard

Was there any progress on this? I guess the failures in glib stems from it 
unsetting _PYTHON_SYSCONFIGDATA_NAME, which doesn't have any effect when 
it is set via the wrapper. There are a couple of recipes and bbclasses 
that do this.

//Peter


^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: devtool modify issues with ubuntu 20 and fedora core 32
  2020-06-14 23:31       ` Peter Kjellerstedt
@ 2020-10-27 10:14         ` ernst.sjostrand
  0 siblings, 0 replies; 6+ messages in thread
From: ernst.sjostrand @ 2020-10-27 10:14 UTC (permalink / raw)
  To: yocto

[-- Attachment #1: Type: text/plain, Size: 142 bytes --]

Running into this also.

Here's another report of the same issue: https://lists.yoctoproject.org/g/yocto/message/50856

Regards
//Ernst

[-- Attachment #2: Type: text/html, Size: 162 bytes --]

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2020-10-27 10:14 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2020-06-02 21:28 devtool modify issues with ubuntu 20 and fedora core 32 Andrew Geissler
2020-06-03  9:06 ` [yocto] " Alexander Kanavin
2020-06-03 13:42   ` Richard Purdie
2020-06-03 14:40     ` kergoth
2020-06-14 23:31       ` Peter Kjellerstedt
2020-10-27 10:14         ` ernst.sjostrand

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox