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
-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#49561): https://lists.yoctoproject.org/g/yocto/message/49561
Mute This Topic: https://lists.yoctoproject.org/mt/74637733/21656
Group Owner: [email protected]
Unsubscribe: https://lists.yoctoproject.org/g/yocto/unsub
[[email protected]]
-=-=-=-=-=-=-=-=-=-=-=-