Connagh Jacobi
Connagh Jacobi

Reputation: 69

Colcon builds but generates error message ` Failed to determine Python package name in` and `no module named cython`

After installing some python packages locally i now get the following error when building any package (python or c++). packages seem to successfully compile however.

Traceback (most recent call last):
  File "<string>", line 1, in <module>
  File "/usr/lib/python3.10/distutils/core.py", line 215, in run_setup
    exec(f.read(), g)
  File "<string>", line 8, in <module>
ModuleNotFoundError: No module named 'Cython'
[1.287s] ERROR:colcon.colcon_core.package_identification:Exception in package identification extension 'python_setup_py' in 'env/lib/python3.10/site-packages/numpy/core/tests/examples/cython': Command '['/usr/bin/python3', '-c', 'import sys;from contextlib import suppress;exec("with suppress(ImportError):    from setuptools.extern.packaging.specifiers    import SpecifierSet");exec("with suppress(ImportError):    from packaging.specifiers import SpecifierSet");from distutils.core import run_setup;dist = run_setup(    \'setup.py\', script_args=(\'--dry-run\',), stop_after=\'config\');skip_keys = (\'cmdclass\', \'distclass\', \'ext_modules\', \'metadata\');data = {    key: value for key, value in dist.__dict__.items()     if (        not key.startswith(\'_\') and         not callable(value) and         key not in skip_keys and         key not in dist.display_option_names    )};data[\'metadata\'] = {    k: v for k, v in dist.metadata.__dict__.items()     if k not in (\'license_files\', \'provides_extras\')};sys.stdout.buffer.write(repr(data).encode(\'utf-8\'))']' returned non-zero exit status 1.
Traceback (most recent call last):
  File "/usr/lib/python3/dist-packages/colcon_core/package_identification/__init__.py", line 144, in _identify
    retval = extension.identify(_reused_descriptor_instance)
  File "/usr/lib/python3/dist-packages/colcon_python_setup_py/package_identification/python_setup_py.py", line 48, in identify
    config = get_setup_information(setup_py)
  File "/usr/lib/python3/dist-packages/colcon_python_setup_py/package_identification/python_setup_py.py", line 249, in get_setup_information
    _setup_information_cache[hashable_env] = _get_setup_information(
  File "/usr/lib/python3/dist-packages/colcon_python_setup_py/package_identification/python_setup_py.py", line 296, in _get_setup_information
    result = subprocess.run(
  File "/usr/lib/python3.10/subprocess.py", line 526, in run
    raise CalledProcessError(retcode, process.args,
subprocess.CalledProcessError: Command '['/usr/bin/python3', '-c', 'import sys;from contextlib import suppress;exec("with suppress(ImportError):    from setuptools.extern.packaging.specifiers    import SpecifierSet");exec("with suppress(ImportError):    from packaging.specifiers import SpecifierSet");from distutils.core import run_setup;dist = run_setup(    \'setup.py\', script_args=(\'--dry-run\',), stop_after=\'config\');skip_keys = (\'cmdclass\', \'distclass\', \'ext_modules\', \'metadata\');data = {    key: value for key, value in dist.__dict__.items()     if (        not key.startswith(\'_\') and         not callable(value) and         key not in skip_keys and         key not in dist.display_option_names    )};data[\'metadata\'] = {    k: v for k, v in dist.metadata.__dict__.items()     if k not in (\'license_files\', \'provides_extras\')};sys.stdout.buffer.write(repr(data).encode(\'utf-8\'))']' returned non-zero exit status 1.

[1.501s] ERROR:colcon.colcon_core.package_identification:Failed to determine Python package name in 'env/lib/python3.10/site-packages/numpy/core/tests/examples/limited_api'
[1.502s] ERROR:colcon.colcon_core.package_identification:Exception in package identification extension 'python_setup_py' in 'env/lib/python3.10/site-packages/numpy/core/tests/examples/limited_api': Failed to determine Python package name in 'env/lib/python3.10/site-packages/numpy/core/tests/examples/limited_api'
Traceback (most recent call last):
  File "/usr/lib/python3/dist-packages/colcon_core/package_identification/__init__.py", line 144, in _identify
    retval = extension.identify(_reused_descriptor_instance)
  File "/usr/lib/python3/dist-packages/colcon_python_setup_py/package_identification/python_setup_py.py", line 57, in identify
    raise RuntimeError(
RuntimeError: Failed to determine Python package name in 'env/lib/python3.10/site-packages/numpy/core/tests/examples/limited_api'

installing the correct version of cython doesnt fix this it just stops producing those 5 lines, re-installing colcon and ros2 also doesn't fix this. uninstalling the packages i installed that caused this also didnt remove this error.

Does anyone have an suggestions?

Upvotes: 0

Views: 100

Answers (0)

Related Questions