Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Build and Install Basic Test Python Type Support - "zsh: command not found: itl2py" #26

Open
Danny875 opened this issue Oct 6, 2021 · 7 comments

Comments

@Danny875
Copy link

Danny875 commented Oct 6, 2021

Hello,

After typing the following command in the terminal: "itl2py -o basic_output basic_idl basic.itl", I'm getting the following error:

dannyguest@Dannys-MacBook-Pro build % itl2py -o basic_output basic_idl basic.itl
zsh: command not found: itl2py

Is there any way to solve it?

Thank you in advance!

@iguessthislldo
Copy link
Member

itl2py should be installed with the pyopendds package, so what does pip show pyopendds say?

@Danny875
Copy link
Author

Danny875 commented Oct 6, 2021

I get the following:
DEPRECATION: Python 2.7 reached the end of its life on January 1st, 2020. Please upgrade your Python as Python 2.7 is no longer maintained. pip 21.0 will drop support for Python 2.7 in January 2021. More details about Python 2 support in pip can be found at https://pip.pypa.io/en/latest/development/release-process/#python-2-support pip 21.0 will remove support for this functionality.
WARNING: Package(s) not found: pyopendds

Is there any way to install this package with brew?

@iguessthislldo
Copy link
Member

Okay, that's the pip for Python 2. Is Python 3 installed? You'll need it to use PyOpenDDS. If you do have it try pip3 install pyopendds.

Is there any way to install this package with brew?

For PyOpenDDS? No, it's only available from source (pip install .) or through PyPi (pip install pyopendds).

@Danny875
Copy link
Author

Danny875 commented Oct 7, 2021

By executing "pip -V", I'm getting the following output:
pip 21.2.4 from /Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/site-packages/pip (python 3.10)"

After executing "pip3 install pyopendds", I'm getting the following error:

145-2-172-38:~ dannydragoi$ pip3 install pyopendds
Collecting pyopendds
  Using cached pyopendds-0.1.0.tar.gz (17 kB)
Requirement already satisfied: jinja2 in /Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/site-packages (from pyopendds) (3.0.2)
Requirement already satisfied: MarkupSafe>=2.0 in /Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/site-packages (from jinja2->pyopendds) (2.0.1)
Building wheels for collected packages: pyopendds
  Building wheel for pyopendds (setup.py) ... error
  ERROR: Command errored out with exit status 1:
   command: /Library/Frameworks/Python.framework/Versions/3.10/bin/python3.10 -u -c 'import io, os, sys, setuptools, tokenize; sys.argv[0] = '"'"'/private/var/folders/8h/gxjssfgj3d35hmpjt9mq2v6r0000gn/T/pip-install-ada2c9e_/pyopendds_caca88b5d0604bc4a8dbf1df5f9f6d82/setup.py'"'"'; __file__='"'"'/private/var/folders/8h/gxjssfgj3d35hmpjt9mq2v6r0000gn/T/pip-install-ada2c9e_/pyopendds_caca88b5d0604bc4a8dbf1df5f9f6d82/setup.py'"'"';f = getattr(tokenize, '"'"'open'"'"', open)(__file__) if os.path.exists(__file__) else io.StringIO('"'"'from setuptools import setup; setup()'"'"');code = f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' bdist_wheel -d /private/var/folders/8h/gxjssfgj3d35hmpjt9mq2v6r0000gn/T/pip-wheel-u2e32w4g
       cwd: /private/var/folders/8h/gxjssfgj3d35hmpjt9mq2v6r0000gn/T/pip-install-ada2c9e_/pyopendds_caca88b5d0604bc4a8dbf1df5f9f6d82/
  Complete output (52 lines):
  /Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/site-packages/setuptools/dist.py:697: UserWarning: Usage of dash-separated 'author-email' will not be supported in future versions. Please use the underscore name 'author_email' instead
    warnings.warn(
  /Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/site-packages/setuptools/dist.py:697: UserWarning: Usage of dash-separated 'home-page' will not be supported in future versions. Please use the underscore name 'home_page' instead
    warnings.warn(
  /Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/site-packages/setuptools/dist.py:697: UserWarning: Usage of dash-separated 'long-description' will not be supported in future versions. Please use the underscore name 'long_description' instead
    warnings.warn(
  /Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/site-packages/setuptools/dist.py:697: UserWarning: Usage of dash-separated 'long-description-content-type' will not be supported in future versions. Please use the underscore name 'long_description_content_type' instead
    warnings.warn(
  /Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/site-packages/setuptools/dist.py:697: UserWarning: Usage of dash-separated 'license-file' will not be supported in future versions. Please use the underscore name 'license_file' instead
    warnings.warn(
  running bdist_wheel
  running build
  running build_py
  creating build
  creating build/lib.macosx-10.9-universal2-3.10
  creating build/lib.macosx-10.9-universal2-3.10/pyopendds
  copying pyopendds/DomainParticipant.py -> build/lib.macosx-10.9-universal2-3.10/pyopendds
  copying pyopendds/util.py -> build/lib.macosx-10.9-universal2-3.10/pyopendds
  copying pyopendds/constants.py -> build/lib.macosx-10.9-universal2-3.10/pyopendds
  copying pyopendds/Subscriber.py -> build/lib.macosx-10.9-universal2-3.10/pyopendds
  copying pyopendds/__init__.py -> build/lib.macosx-10.9-universal2-3.10/pyopendds
  copying pyopendds/Topic.py -> build/lib.macosx-10.9-universal2-3.10/pyopendds
  copying pyopendds/exceptions.py -> build/lib.macosx-10.9-universal2-3.10/pyopendds
  copying pyopendds/Publisher.py -> build/lib.macosx-10.9-universal2-3.10/pyopendds
  copying pyopendds/DataWriter.py -> build/lib.macosx-10.9-universal2-3.10/pyopendds
  copying pyopendds/init_opendds.py -> build/lib.macosx-10.9-universal2-3.10/pyopendds
  copying pyopendds/DataReader.py -> build/lib.macosx-10.9-universal2-3.10/pyopendds
  creating build/lib.macosx-10.9-universal2-3.10/pyopendds/dev
  copying pyopendds/dev/cmake.py -> build/lib.macosx-10.9-universal2-3.10/pyopendds/dev
  copying pyopendds/dev/__init__.py -> build/lib.macosx-10.9-universal2-3.10/pyopendds/dev
  creating build/lib.macosx-10.9-universal2-3.10/pyopendds/dev/itl2py
  copying pyopendds/dev/itl2py/itl.py -> build/lib.macosx-10.9-universal2-3.10/pyopendds/dev/itl2py
  copying pyopendds/dev/itl2py/generate.py -> build/lib.macosx-10.9-universal2-3.10/pyopendds/dev/itl2py
  copying pyopendds/dev/itl2py/__init__.py -> build/lib.macosx-10.9-universal2-3.10/pyopendds/dev/itl2py
  copying pyopendds/dev/itl2py/ast.py -> build/lib.macosx-10.9-universal2-3.10/pyopendds/dev/itl2py
  copying pyopendds/dev/itl2py/PythonOutput.py -> build/lib.macosx-10.9-universal2-3.10/pyopendds/dev/itl2py
  copying pyopendds/dev/itl2py/__main__.py -> build/lib.macosx-10.9-universal2-3.10/pyopendds/dev/itl2py
  copying pyopendds/dev/itl2py/CppOutput.py -> build/lib.macosx-10.9-universal2-3.10/pyopendds/dev/itl2py
  copying pyopendds/dev/itl2py/Output.py -> build/lib.macosx-10.9-universal2-3.10/pyopendds/dev/itl2py
  creating build/lib.macosx-10.9-universal2-3.10/pyopendds/dev/include
  creating build/lib.macosx-10.9-universal2-3.10/pyopendds/dev/include/pyopendds
  copying pyopendds/dev/include/pyopendds/common.h -> build/lib.macosx-10.9-universal2-3.10/pyopendds/dev/include/pyopendds
  copying pyopendds/dev/include/pyopendds/user.h -> build/lib.macosx-10.9-universal2-3.10/pyopendds/dev/include/pyopendds
  creating build/lib.macosx-10.9-universal2-3.10/pyopendds/dev/itl2py/templates
  copying pyopendds/dev/itl2py/templates/user.py -> build/lib.macosx-10.9-universal2-3.10/pyopendds/dev/itl2py/templates
  copying pyopendds/dev/itl2py/templates/CMakeLists.txt -> build/lib.macosx-10.9-universal2-3.10/pyopendds/dev/itl2py/templates
  copying pyopendds/dev/itl2py/templates/setup.py -> build/lib.macosx-10.9-universal2-3.10/pyopendds/dev/itl2py/templates
  copying pyopendds/dev/itl2py/templates/user.cpp -> build/lib.macosx-10.9-universal2-3.10/pyopendds/dev/itl2py/templates
  running build_ext
  CMake Error: The source directory "/private/var/folders/8h/gxjssfgj3d35hmpjt9mq2v6r0000gn/T/pip-install-ada2c9e_/pyopendds_caca88b5d0604bc4a8dbf1df5f9f6d82/pyopendds/ext" does not exist.
  Specify --help for usage, or press the help button on the CMake GUI.
  error: "cmake /private/var/folders/8h/gxjssfgj3d35hmpjt9mq2v6r0000gn/T/pip-install-ada2c9e_/pyopendds_caca88b5d0604bc4a8dbf1df5f9f6d82/pyopendds/ext -DCMAKE_BUILD_TYPE=Debug -DCMAKE_LIBRARY_OUTPUT_DIRECTORY_DEBUG=/private/var/folders/8h/gxjssfgj3d35hmpjt9mq2v6r0000gn/T/pip-install-ada2c9e_/pyopendds_caca88b5d0604bc4a8dbf1df5f9f6d82/build/lib.macosx-10.9-universal2-3.10 -DPYOPENDDS_NATIVE_FILENAME=_pyopendds.cpython-310-darwin.so -DCMAKE_ARCHIVE_OUTPUT_DIRECTORY_DEBUG=build/temp.macosx-10.9-universal2-3.10 -DPYOPENDDS_INCLUDE=/private/var/folders/8h/gxjssfgj3d35hmpjt9mq2v6r0000gn/T/pip-install-ada2c9e_/pyopendds_caca88b5d0604bc4a8dbf1df5f9f6d82/pyopendds/dev/include" returned non-zero result: 1
  ----------------------------------------
  ERROR: Failed building wheel for pyopendds
  Running setup.py clean for pyopendds
Failed to build pyopendds
Installing collected packages: pyopendds
    Running setup.py install for pyopendds ... error
    ERROR: Command errored out with exit status 1:
     command: /Library/Frameworks/Python.framework/Versions/3.10/bin/python3.10 -u -c 'import io, os, sys, setuptools, tokenize; sys.argv[0] = '"'"'/private/var/folders/8h/gxjssfgj3d35hmpjt9mq2v6r0000gn/T/pip-install-ada2c9e_/pyopendds_caca88b5d0604bc4a8dbf1df5f9f6d82/setup.py'"'"'; __file__='"'"'/private/var/folders/8h/gxjssfgj3d35hmpjt9mq2v6r0000gn/T/pip-install-ada2c9e_/pyopendds_caca88b5d0604bc4a8dbf1df5f9f6d82/setup.py'"'"';f = getattr(tokenize, '"'"'open'"'"', open)(__file__) if os.path.exists(__file__) else io.StringIO('"'"'from setuptools import setup; setup()'"'"');code = f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record /private/var/folders/8h/gxjssfgj3d35hmpjt9mq2v6r0000gn/T/pip-record-g9qhjtk_/install-record.txt --single-version-externally-managed --compile --install-headers /Library/Frameworks/Python.framework/Versions/3.10/include/python3.10/pyopendds
         cwd: /private/var/folders/8h/gxjssfgj3d35hmpjt9mq2v6r0000gn/T/pip-install-ada2c9e_/pyopendds_caca88b5d0604bc4a8dbf1df5f9f6d82/
    Complete output (52 lines):
    /Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/site-packages/setuptools/dist.py:697: UserWarning: Usage of dash-separated 'author-email' will not be supported in future versions. Please use the underscore name 'author_email' instead
      warnings.warn(
    /Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/site-packages/setuptools/dist.py:697: UserWarning: Usage of dash-separated 'home-page' will not be supported in future versions. Please use the underscore name 'home_page' instead
      warnings.warn(
    /Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/site-packages/setuptools/dist.py:697: UserWarning: Usage of dash-separated 'long-description' will not be supported in future versions. Please use the underscore name 'long_description' instead
      warnings.warn(
    /Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/site-packages/setuptools/dist.py:697: UserWarning: Usage of dash-separated 'long-description-content-type' will not be supported in future versions. Please use the underscore name 'long_description_content_type' instead
      warnings.warn(
    /Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/site-packages/setuptools/dist.py:697: UserWarning: Usage of dash-separated 'license-file' will not be supported in future versions. Please use the underscore name 'license_file' instead
      warnings.warn(
    running install
    running build
    running build_py
    creating build
    creating build/lib.macosx-10.9-universal2-3.10
    creating build/lib.macosx-10.9-universal2-3.10/pyopendds
    copying pyopendds/DomainParticipant.py -> build/lib.macosx-10.9-universal2-3.10/pyopendds
    copying pyopendds/util.py -> build/lib.macosx-10.9-universal2-3.10/pyopendds
    copying pyopendds/constants.py -> build/lib.macosx-10.9-universal2-3.10/pyopendds
    copying pyopendds/Subscriber.py -> build/lib.macosx-10.9-universal2-3.10/pyopendds
    copying pyopendds/__init__.py -> build/lib.macosx-10.9-universal2-3.10/pyopendds
    copying pyopendds/Topic.py -> build/lib.macosx-10.9-universal2-3.10/pyopendds
    copying pyopendds/exceptions.py -> build/lib.macosx-10.9-universal2-3.10/pyopendds
    copying pyopendds/Publisher.py -> build/lib.macosx-10.9-universal2-3.10/pyopendds
    copying pyopendds/DataWriter.py -> build/lib.macosx-10.9-universal2-3.10/pyopendds
    copying pyopendds/init_opendds.py -> build/lib.macosx-10.9-universal2-3.10/pyopendds
    copying pyopendds/DataReader.py -> build/lib.macosx-10.9-universal2-3.10/pyopendds
    creating build/lib.macosx-10.9-universal2-3.10/pyopendds/dev
    copying pyopendds/dev/cmake.py -> build/lib.macosx-10.9-universal2-3.10/pyopendds/dev
    copying pyopendds/dev/__init__.py -> build/lib.macosx-10.9-universal2-3.10/pyopendds/dev
    creating build/lib.macosx-10.9-universal2-3.10/pyopendds/dev/itl2py
    copying pyopendds/dev/itl2py/itl.py -> build/lib.macosx-10.9-universal2-3.10/pyopendds/dev/itl2py
    copying pyopendds/dev/itl2py/generate.py -> build/lib.macosx-10.9-universal2-3.10/pyopendds/dev/itl2py
    copying pyopendds/dev/itl2py/__init__.py -> build/lib.macosx-10.9-universal2-3.10/pyopendds/dev/itl2py
    copying pyopendds/dev/itl2py/ast.py -> build/lib.macosx-10.9-universal2-3.10/pyopendds/dev/itl2py
    copying pyopendds/dev/itl2py/PythonOutput.py -> build/lib.macosx-10.9-universal2-3.10/pyopendds/dev/itl2py
    copying pyopendds/dev/itl2py/__main__.py -> build/lib.macosx-10.9-universal2-3.10/pyopendds/dev/itl2py
    copying pyopendds/dev/itl2py/CppOutput.py -> build/lib.macosx-10.9-universal2-3.10/pyopendds/dev/itl2py
    copying pyopendds/dev/itl2py/Output.py -> build/lib.macosx-10.9-universal2-3.10/pyopendds/dev/itl2py
    creating build/lib.macosx-10.9-universal2-3.10/pyopendds/dev/include
    creating build/lib.macosx-10.9-universal2-3.10/pyopendds/dev/include/pyopendds
    copying pyopendds/dev/include/pyopendds/common.h -> build/lib.macosx-10.9-universal2-3.10/pyopendds/dev/include/pyopendds
    copying pyopendds/dev/include/pyopendds/user.h -> build/lib.macosx-10.9-universal2-3.10/pyopendds/dev/include/pyopendds
    creating build/lib.macosx-10.9-universal2-3.10/pyopendds/dev/itl2py/templates
    copying pyopendds/dev/itl2py/templates/user.py -> build/lib.macosx-10.9-universal2-3.10/pyopendds/dev/itl2py/templates
    copying pyopendds/dev/itl2py/templates/CMakeLists.txt -> build/lib.macosx-10.9-universal2-3.10/pyopendds/dev/itl2py/templates
    copying pyopendds/dev/itl2py/templates/setup.py -> build/lib.macosx-10.9-universal2-3.10/pyopendds/dev/itl2py/templates
    copying pyopendds/dev/itl2py/templates/user.cpp -> build/lib.macosx-10.9-universal2-3.10/pyopendds/dev/itl2py/templates
    running build_ext
    CMake Error: The source directory "/private/var/folders/8h/gxjssfgj3d35hmpjt9mq2v6r0000gn/T/pip-install-ada2c9e_/pyopendds_caca88b5d0604bc4a8dbf1df5f9f6d82/pyopendds/ext" does not exist.
    Specify --help for usage, or press the help button on the CMake GUI.
    error: "cmake /private/var/folders/8h/gxjssfgj3d35hmpjt9mq2v6r0000gn/T/pip-install-ada2c9e_/pyopendds_caca88b5d0604bc4a8dbf1df5f9f6d82/pyopendds/ext -DCMAKE_BUILD_TYPE=Debug -DCMAKE_LIBRARY_OUTPUT_DIRECTORY_DEBUG=/private/var/folders/8h/gxjssfgj3d35hmpjt9mq2v6r0000gn/T/pip-install-ada2c9e_/pyopendds_caca88b5d0604bc4a8dbf1df5f9f6d82/build/lib.macosx-10.9-universal2-3.10 -DPYOPENDDS_NATIVE_FILENAME=_pyopendds.cpython-310-darwin.so -DCMAKE_ARCHIVE_OUTPUT_DIRECTORY_DEBUG=build/temp.macosx-10.9-universal2-3.10 -DPYOPENDDS_INCLUDE=/private/var/folders/8h/gxjssfgj3d35hmpjt9mq2v6r0000gn/T/pip-install-ada2c9e_/pyopendds_caca88b5d0604bc4a8dbf1df5f9f6d82/pyopendds/dev/include" returned non-zero result: 1
    ----------------------------------------
ERROR: Command errored out with exit status 1: /Library/Frameworks/Python.framework/Versions/3.10/bin/python3.10 -u -c 'import io, os, sys, setuptools, tokenize; sys.argv[0] = '"'"'/private/var/folders/8h/gxjssfgj3d35hmpjt9mq2v6r0000gn/T/pip-install-ada2c9e_/pyopendds_caca88b5d0604bc4a8dbf1df5f9f6d82/setup.py'"'"'; __file__='"'"'/private/var/folders/8h/gxjssfgj3d35hmpjt9mq2v6r0000gn/T/pip-install-ada2c9e_/pyopendds_caca88b5d0604bc4a8dbf1df5f9f6d82/setup.py'"'"';f = getattr(tokenize, '"'"'open'"'"', open)(__file__) if os.path.exists(__file__) else io.StringIO('"'"'from setuptools import setup; setup()'"'"');code = f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record /private/var/folders/8h/gxjssfgj3d35hmpjt9mq2v6r0000gn/T/pip-record-g9qhjtk_/install-record.txt --single-version-externally-managed --compile --install-headers /Library/Frameworks/Python.framework/Versions/3.10/include/python3.10/pyopendds Check the logs for full command output.

Is there any way to fix this issue?

Thank you in advance!

@iguessthislldo
Copy link
Member

This is something completely new to me, so it would require more investigation. If I'd have to guess from the log through, it might be a change in how CPython 3.10 builds native extensions that my CMake code isn't expecting. This might be that the current directory that was the source before is now a temporary copy or something like that.

@iguessthislldo
Copy link
Member

Okay I didn't get the same exact error, but with Python 3.10 on Linux after installing the wheel package so that it would build it as a wheel I got this:

  ERROR: Command errored out with exit status 1:
   command: /data/work/oci/opendds/pyopendds/.venv/bin/python3.10 -u -c 'import io, os, sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-req-build-gteagk10/setup.py'"'"'; __file__='"'"'/tmp/pip-req-build-gteagk10/setup.py'"'"';f = getattr(tokenize, '"'"'open'"'"', open)(__file__) if os.path.exists(__file__) else io.StringIO('"'"'from setuptools import setup; setup()'"'"');code = f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' bdist_wheel -d /tmp/pip-wheel-feefah1e
       cwd: /tmp/pip-req-build-gteagk10/
  Complete output (17 lines):
  /data/work/oci/opendds/pyopendds/.venv/lib/python3.10/site-packages/setuptools/dist.py:697: UserWarning: Usage of dash-separated 'author-email' will not be supported in future versions. Please use the underscore name 'author_email' instead
    warnings.warn(
  /data/work/oci/opendds/pyopendds/.venv/lib/python3.10/site-packages/setuptools/dist.py:697: UserWarning: Usage of dash-separated 'home-page' will not be supported in future versions. Please use the underscore name 'home_page' instead
    warnings.warn(
  /data/work/oci/opendds/pyopendds/.venv/lib/python3.10/site-packages/setuptools/dist.py:697: UserWarning: Usage of dash-separated 'long-description' will not be supported in future versions. Please use the underscore name 'long_description' instead
    warnings.warn(
  /data/work/oci/opendds/pyopendds/.venv/lib/python3.10/site-packages/setuptools/dist.py:697: UserWarning: Usage of dash-separated 'long-description-content-type' will not be supported in future versions. Please use the underscore name 'long_description_content_type' instead
    warnings.warn(
  /data/work/oci/opendds/pyopendds/.venv/lib/python3.10/site-packages/setuptools/dist.py:697: UserWarning: Usage of dash-separated 'license-file' will not be supported in future versions. Please use the underscore name 'license_file' instead
    warnings.warn(
  running bdist_wheel
  running build
  running build_py
  running build_ext
  CMake Error: The current CMakeCache.txt directory /tmp/pip-req-build-gteagk10/build/temp.linux-x86_64-3.10/CMakeCache.txt is different than the directory /data/work/oci/opendds/pyopendds/pyopendds/build/temp.linux-x86_64-3.10 where CMakeCache.txt was created. This may result in binaries being created in the wrong place. If you are not sure, reedit the CMakeCache.txt
  CMake Error: The source "/tmp/pip-req-build-gteagk10/pyopendds/ext/CMakeLists.txt" does not match the source "/data/work/oci/opendds/pyopendds/pyopendds/pyopendds/ext/CMakeLists.txt" used to generate cache.  Re-run cmake with a different source directory.
  error: "cmake /tmp/pip-req-build-gteagk10/pyopendds/ext -DCMAKE_BUILD_TYPE=Debug -DCMAKE_LIBRARY_OUTPUT_DIRECTORY_DEBUG=/tmp/pip-req-build-gteagk10/build/lib.linux-x86_64-3.10 -DPYOPENDDS_NATIVE_FILENAME=_pyopendds.cpython-310-x86_64-linux-gnu.so -DCMAKE_ARCHIVE_OUTPUT_DIRECTORY_DEBUG=build/temp.linux-x86_64-3.10 -DPYOPENDDS_INCLUDE=/tmp/pip-req-build-gteagk10/pyopendds/dev/include" returned non-zero result: 1
  ----------------------------------------
  ERROR: Failed building wheel for pyopendds

Before this though pip happened to be warning about:

DEPRECATION: A future pip version will change local packages to be built in-place without first copying to a temporary directory. We recommend you use --use-feature=in-tree-build to test your packages with this new behavior before it becomes the default.
   pip 21.3 will remove support for this functionality. You can find discussion regarding this at https://github.com/pypa/pip/issues/7555.

I tried passing --use-feature=in-tree-build and that worked. Getting past that though, there seemed to be an issue with the C API that stopped the native extension from compiling with Python 3.10. I pushed a fix for that in on the master though, so you should get those changes first and then try running pip3 install . --use-feature=in-tree-build in the PyOpenDDS directory.

@Danny875
Copy link
Author

Danny875 commented Oct 8, 2021

Dear Fred,

Thank you for taking the time to analyze this issue and provide me with an answer. I have downloaded the latest version from GitHub and tested it on my Mac and also on my Raspberry Pi. I also installed the "wheel" package on both machines.

On the Mac, the "pyopendds" was successfully installed.

On the RaspberryPi, it seems that something is not right yet.

This is the output that I get from the Raspberry Pi, after executing "pip3 install . --use-feature=in-tree-build":

danny@dannypi:~/Desktop/pyopendds-master $ pip3 install . --use-feature=in-tree-build
Defaulting to user installation because normal site-packages is not writeable
Looking in indexes: https://pypi.org/simple, https://www.piwheels.org/simple
Processing /home/danny/Desktop/pyopendds-master
Requirement already satisfied: jinja2 in /usr/lib/python3/dist-packages (from pyopendds==0.1.0) (2.10)
Building wheels for collected packages: pyopendds
Building wheel for pyopendds (setup.py) ... error
ERROR: Command errored out with exit status 1:
command: /usr/bin/python3 -u -c 'import io, os, sys, setuptools, tokenize; sys.argv[0] = '"'"'/home/danny/Desktop/pyopendds-master/setup.py'"'"'; file='"'"'/home/danny/Desktop/pyopendds-master/setup.py'"'"';f = getattr(tokenize, '"'"'open'"'"', open)(file) if os.path.exists(file) else io.StringIO('"'"'from setuptools import setup; setup()'"'"');code = f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, file, '"'"'exec'"'"'))' bdist_wheel -d /tmp/pip-wheel-vz7cwxgx
cwd: /home/danny/Desktop/pyopendds-master/
Complete output (17 lines):
running bdist_wheel
running build
running build_py
running build_ext
CMake Error at /usr/share/cmake-3.16/Modules/FindPackageHandleStandardArgs.cmake:146 (message):
Could NOT find Python3: Found unsuitable version "3.7", but required is
exact version "3.7.3" (found /usr/lib/arm-linux-gnueabihf/libpython3.7m.so)
Call Stack (most recent call first):
/usr/share/cmake-3.16/Modules/FindPackageHandleStandardArgs.cmake:391 (_FPHSA_FAILURE_MESSAGE)
/usr/share/cmake-3.16/Modules/FindPython/Support.cmake:2214 (find_package_handle_standard_args)
/usr/share/cmake-3.16/Modules/FindPython3.cmake:300 (include)
CMakeLists.txt:6 (find_package)

-- Configuring incomplete, errors occurred!
See also "/home/danny/Desktop/pyopendds-master/build/temp.linux-armv7l-3.7/CMakeFiles/CMakeOutput.log".
error: "cmake /home/danny/Desktop/pyopendds-master/pyopendds/ext -DCMAKE_BUILD_TYPE=Debug -DCMAKE_LIBRARY_OUTPUT_DIRECTORY_DEBUG=/home/danny/Desktop/pyopendds-master/build/lib.linux-armv7l-3.7 -DCMAKE_ARCHIVE_OUTPUT_DIRECTORY_DEBUG=build/temp.linux-armv7l-3.7 -DPYOPENDDS_PYTHON_VERSION=3.7.3 -DPYOPENDDS_INCLUDE=/home/danny/Desktop/pyopendds-master/pyopendds/dev/include" returned non-zero result: 1

ERROR: Failed building wheel for pyopendds
Running setup.py clean for pyopendds
Failed to build pyopendds
Installing collected packages: pyopendds
Running setup.py install for pyopendds ... error
ERROR: Command errored out with exit status 1:
command: /usr/bin/python3 -u -c 'import io, os, sys, setuptools, tokenize; sys.argv[0] = '"'"'/home/danny/Desktop/pyopendds-master/setup.py'"'"'; file='"'"'/home/danny/Desktop/pyopendds-master/setup.py'"'"';f = getattr(tokenize, '"'"'open'"'"', open)(file) if os.path.exists(file) else io.StringIO('"'"'from setuptools import setup; setup()'"'"');code = f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, file, '"'"'exec'"'"'))' install --record /tmp/pip-record-zmuocrwj/install-record.txt --single-version-externally-managed --user --prefix= --compile --install-headers /home/danny/.local/include/python3.7m/pyopendds
cwd: /home/danny/Desktop/pyopendds-master/
Complete output (66 lines):
running install
running build
running build_py
creating build
creating build/lib.linux-armv7l-3.7
creating build/lib.linux-armv7l-3.7/pyopendds
copying pyopendds/init_opendds.py -> build/lib.linux-armv7l-3.7/pyopendds
copying pyopendds/DataReader.py -> build/lib.linux-armv7l-3.7/pyopendds
copying pyopendds/DataWriter.py -> build/lib.linux-armv7l-3.7/pyopendds
copying pyopendds/init.py -> build/lib.linux-armv7l-3.7/pyopendds
copying pyopendds/Subscriber.py -> build/lib.linux-armv7l-3.7/pyopendds
copying pyopendds/Topic.py -> build/lib.linux-armv7l-3.7/pyopendds
copying pyopendds/Publisher.py -> build/lib.linux-armv7l-3.7/pyopendds
copying pyopendds/util.py -> build/lib.linux-armv7l-3.7/pyopendds
copying pyopendds/DomainParticipant.py -> build/lib.linux-armv7l-3.7/pyopendds
copying pyopendds/exceptions.py -> build/lib.linux-armv7l-3.7/pyopendds
copying pyopendds/constants.py -> build/lib.linux-armv7l-3.7/pyopendds
creating build/lib.linux-armv7l-3.7/pyopendds/dev
copying pyopendds/dev/init.py -> build/lib.linux-armv7l-3.7/pyopendds/dev
copying pyopendds/dev/cmake.py -> build/lib.linux-armv7l-3.7/pyopendds/dev
creating build/lib.linux-armv7l-3.7/pyopendds/dev/itl2py
copying pyopendds/dev/itl2py/PythonOutput.py -> build/lib.linux-armv7l-3.7/pyopendds/dev/itl2py
copying pyopendds/dev/itl2py/init.py -> build/lib.linux-armv7l-3.7/pyopendds/dev/itl2py
copying pyopendds/dev/itl2py/CppOutput.py -> build/lib.linux-armv7l-3.7/pyopendds/dev/itl2py
copying pyopendds/dev/itl2py/main.py -> build/lib.linux-armv7l-3.7/pyopendds/dev/itl2py
copying pyopendds/dev/itl2py/Output.py -> build/lib.linux-armv7l-3.7/pyopendds/dev/itl2py
copying pyopendds/dev/itl2py/ast.py -> build/lib.linux-armv7l-3.7/pyopendds/dev/itl2py
copying pyopendds/dev/itl2py/generate.py -> build/lib.linux-armv7l-3.7/pyopendds/dev/itl2py
copying pyopendds/dev/itl2py/itl.py -> build/lib.linux-armv7l-3.7/pyopendds/dev/itl2py
creating build/lib.linux-armv7l-3.7/pyopendds/dev/include
creating build/lib.linux-armv7l-3.7/pyopendds/dev/include/pyopendds
copying pyopendds/dev/include/pyopendds/common.hpp -> build/lib.linux-armv7l-3.7/pyopendds/dev/include/pyopendds
copying pyopendds/dev/include/pyopendds/user.hpp -> build/lib.linux-armv7l-3.7/pyopendds/dev/include/pyopendds
creating build/lib.linux-armv7l-3.7/pyopendds/dev/itl2py/templates
copying pyopendds/dev/itl2py/templates/setup.py -> build/lib.linux-armv7l-3.7/pyopendds/dev/itl2py/templates
copying pyopendds/dev/itl2py/templates/user.py -> build/lib.linux-armv7l-3.7/pyopendds/dev/itl2py/templates
copying pyopendds/dev/itl2py/templates/CMakeLists.txt -> build/lib.linux-armv7l-3.7/pyopendds/dev/itl2py/templates
copying pyopendds/dev/itl2py/templates/user.cpp -> build/lib.linux-armv7l-3.7/pyopendds/dev/itl2py/templates
running build_ext
-- The C compiler identification is GNU 8.3.0
-- The CXX compiler identification is GNU 8.3.0
-- Check for working C compiler: /usr/bin/cc
-- Check for working C compiler: /usr/bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
CMake Error at /usr/share/cmake-3.16/Modules/FindPackageHandleStandardArgs.cmake:146 (message):
Could NOT find Python3: Found unsuitable version "3.7", but required is
exact version "3.7.3" (found /usr/lib/arm-linux-gnueabihf/libpython3.7m.so)
Call Stack (most recent call first):
/usr/share/cmake-3.16/Modules/FindPackageHandleStandardArgs.cmake:391 (_FPHSA_FAILURE_MESSAGE)
/usr/share/cmake-3.16/Modules/FindPython/Support.cmake:2214 (find_package_handle_standard_args)
/usr/share/cmake-3.16/Modules/FindPython3.cmake:300 (include)
CMakeLists.txt:6 (find_package)

-- Configuring incomplete, errors occurred!
See also "/home/danny/Desktop/pyopendds-master/build/temp.linux-armv7l-3.7/CMakeFiles/CMakeOutput.log".
error: "cmake /home/danny/Desktop/pyopendds-master/pyopendds/ext -DCMAKE_BUILD_TYPE=Debug -DCMAKE_LIBRARY_OUTPUT_DIRECTORY_DEBUG=/home/danny/Desktop/pyopendds-master/build/lib.linux-armv7l-3.7 -DCMAKE_ARCHIVE_OUTPUT_DIRECTORY_DEBUG=build/temp.linux-armv7l-3.7 -DPYOPENDDS_PYTHON_VERSION=3.7.3 -DPYOPENDDS_INCLUDE=/home/danny/Desktop/pyopendds-master/pyopendds/dev/include" returned non-zero result: 1
----------------------------------------

ERROR: Command errored out with exit status 1: /usr/bin/python3 -u -c 'import io, os, sys, setuptools, tokenize; sys.argv[0] = '"'"'/home/danny/Desktop/pyopendds-master/setup.py'"'"'; file='"'"'/home/danny/Desktop/pyopendds-master/setup.py'"'"';f = getattr(tokenize, '"'"'open'"'"', open)(file) if os.path.exists(file) else io.StringIO('"'"'from setuptools import setup; setup()'"'"');code = f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, file, '"'"'exec'"'"'))' install --record /tmp/pip-record-zmuocrwj/install-record.txt --single-version-externally-managed --user --prefix= --compile --install-headers /home/danny/.local/include/python3.7m/pyopendds Check the logs for full command output.

Is there any way to solve this issue?

Thank you in advance!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants