hungpham2511 / toppra

robotic motion planning library
https://hungpham2511.github.io/toppra/index.html
MIT License
603 stars 167 forks source link

Install bug #220

Open uahic opened 1 year ago

uahic commented 1 year ago

Hi there,

during installing toppra for Python (Ubuntu 18.04, python 2.7) I get the following error (I can reproduce this error also in my docker containers on other machines)

➜  catkin_ws pip install toppra     
Collecting toppra
  Using cached https://files.pythonhosted.org/packages/7f/34/1e504f56ed5b361dd720c96a88a9a3d8cde2ff9c34905443bfe30fd4efdf/toppra-0.5.1.tar.gz
Requirement already satisfied: enum34 in /usr/lib/python2.7/dist-packages (from toppra)
Requirement already satisfied: matplotlib in /usr/lib/python2.7/dist-packages (from toppra)
Requirement already satisfied: numpy in /usr/lib/python2.7/dist-packages (from toppra)
Requirement already satisfied: pathlib2 in /usr/local/lib/python2.7/dist-packages (from toppra)
Requirement already satisfied: scipy==0.18.0 in /usr/local/lib/python2.7/dist-packages (from toppra)
Requirement already satisfied: strip_hints in /usr/local/lib/python2.7/dist-packages (from toppra)
Requirement already satisfied: typing in /usr/local/lib/python2.7/dist-packages (from toppra)
Requirement already satisfied: six in /usr/lib/python2.7/dist-packages (from pathlib2->toppra)
Requirement already satisfied: scandir; python_version < "3.5" in /usr/local/lib/python2.7/dist-packages (from pathlib2->toppra)
Requirement already satisfied: wheel in /usr/lib/python2.7/dist-packages (from strip_hints->toppra)
Building wheels for collected packages: toppra
  Running setup.py bdist_wheel for toppra ... error
  Complete output from command /usr/bin/python -u -c "import setuptools, tokenize;__file__='/tmp/pip-build-HQr2gA/toppra/setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" bdist_wheel -d /tmp/tmpsDqbkXpip-wheel- --python-tag cp27:
  /usr/lib/python2.7/distutils/dist.py:267: UserWarning: Unknown distribution option: 'long_description_content_type'
    warnings.warn(msg)
  running bdist_wheel
  running build
  running build_py
  creating build
  creating build/lib.linux-x86_64-2.7
  creating build/lib.linux-x86_64-2.7/toppra
  copying toppra/simplepath.py -> build/lib.linux-x86_64-2.7/toppra
  copying toppra/exceptions.py -> build/lib.linux-x86_64-2.7/toppra
  copying toppra/interpolator.py -> build/lib.linux-x86_64-2.7/toppra
  copying toppra/planning_utils.py -> build/lib.linux-x86_64-2.7/toppra
  copying toppra/constants.py -> build/lib.linux-x86_64-2.7/toppra
  copying toppra/utils.py -> build/lib.linux-x86_64-2.7/toppra
  copying toppra/__init__.py -> build/lib.linux-x86_64-2.7/toppra
  copying toppra/parametrizer.py -> build/lib.linux-x86_64-2.7/toppra
  creating build/lib.linux-x86_64-2.7/toppra/constraint
  copying toppra/constraint/linear_second_order.py -> build/lib.linux-x86_64-2.7/toppra/constraint
  copying toppra/constraint/linear_joint_velocity.py -> build/lib.linux-x86_64-2.7/toppra/constraint
  copying toppra/constraint/linear_constraint.py -> build/lib.linux-x86_64-2.7/toppra/constraint
  copying toppra/constraint/conic_constraint.py -> build/lib.linux-x86_64-2.7/toppra/constraint
  copying toppra/constraint/linear_joint_acceleration.py -> build/lib.linux-x86_64-2.7/toppra/constraint
  copying toppra/constraint/constraint.py -> build/lib.linux-x86_64-2.7/toppra/constraint
  copying toppra/constraint/joint_torque.py -> build/lib.linux-x86_64-2.7/toppra/constraint
  copying toppra/constraint/__init__.py -> build/lib.linux-x86_64-2.7/toppra/constraint
  creating build/lib.linux-x86_64-2.7/toppra/algorithm
  copying toppra/algorithm/algorithm.py -> build/lib.linux-x86_64-2.7/toppra/algorithm
  copying toppra/algorithm/__init__.py -> build/lib.linux-x86_64-2.7/toppra/algorithm
  creating build/lib.linux-x86_64-2.7/toppra/algorithm/reachabilitybased
  copying toppra/algorithm/reachabilitybased/time_optimal_algorithm.py -> build/lib.linux-x86_64-2.7/toppra/algorithm/reachabilitybased
  copying toppra/algorithm/reachabilitybased/reachability_algorithm.py -> build/lib.linux-x86_64-2.7/toppra/algorithm/reachabilitybased
  copying toppra/algorithm/reachabilitybased/desired_duration_algorithm.py -> build/lib.linux-x86_64-2.7/toppra/algorithm/reachabilitybased
  copying toppra/algorithm/reachabilitybased/__init__.py -> build/lib.linux-x86_64-2.7/toppra/algorithm/reachabilitybased
  creating build/lib.linux-x86_64-2.7/toppra/solverwrapper
  copying toppra/solverwrapper/qpoases_solverwrapper.py -> build/lib.linux-x86_64-2.7/toppra/solverwrapper
  copying toppra/solverwrapper/cvxpy_solverwrapper.py -> build/lib.linux-x86_64-2.7/toppra/solverwrapper
  copying toppra/solverwrapper/solverwrapper.py -> build/lib.linux-x86_64-2.7/toppra/solverwrapper
  copying toppra/solverwrapper/ecos_solverwrapper.py -> build/lib.linux-x86_64-2.7/toppra/solverwrapper
  copying toppra/solverwrapper/__init__.py -> build/lib.linux-x86_64-2.7/toppra/solverwrapper
  copying toppra/solverwrapper/hot_qpoases_solverwrapper.py -> build/lib.linux-x86_64-2.7/toppra/solverwrapper
  creating build/lib.linux-x86_64-2.7/toppra/cpp
  copying toppra/cpp/__init__.py -> build/lib.linux-x86_64-2.7/toppra/cpp
  running build_ext
  building 'toppra._CythonUtils' extension
  creating build/temp.linux-x86_64-2.7
  creating build/temp.linux-x86_64-2.7/toppra
  x86_64-linux-gnu-gcc -pthread -fno-strict-aliasing -Wdate-time -D_FORTIFY_SOURCE=2 -g -fdebug-prefix-map=/build/python2.7-nq92VM/python2.7-2.7.17=. -fstack-protector-strong -Wformat -Werror=format-security -fPIC -I/usr/lib/python2.7/dist-packages/numpy/core/include -I/usr/include/python2.7 -c toppra/_CythonUtils.c -o build/temp.linux-x86_64-2.7/toppra/_CythonUtils.o -O1
  In file included from /usr/lib/python2.7/dist-packages/numpy/core/include/numpy/ndarraytypes.h:1809:0,
                   from /usr/lib/python2.7/dist-packages/numpy/core/include/numpy/ndarrayobject.h:18,
                   from /usr/lib/python2.7/dist-packages/numpy/core/include/numpy/arrayobject.h:4,
                   from toppra/_CythonUtils.c:723:
  /usr/lib/python2.7/dist-packages/numpy/core/include/numpy/npy_1_7_deprecated_api.h:15:2: warning: #warning "Using deprecated NumPy API, disable it by " "#defining NPY_NO_DEPRECATED_API NPY_1_7_API_VERSION" [-Wcpp]
   #warning "Using deprecated NumPy API, disable it by " \
    ^~~~~~~
  x86_64-linux-gnu-gcc -pthread -shared -Wl,-O1 -Wl,-Bsymbolic-functions -Wl,-Bsymbolic-functions -Wl,-z,relro -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -Wdate-time -D_FORTIFY_SOURCE=2 -g -fdebug-prefix-map=/build/python2.7-nq92VM/python2.7-2.7.17=. -fstack-protector-strong -Wformat -Werror=format-security -Wl,-Bsymbolic-functions -Wl,-z,relro -Wdate-time -D_FORTIFY_SOURCE=2 -g -fdebug-prefix-map=/build/python2.7-nq92VM/python2.7-2.7.17=. -fstack-protector-strong -Wformat -Werror=format-security -fPIC build/temp.linux-x86_64-2.7/toppra/_CythonUtils.o -o build/lib.linux-x86_64-2.7/toppra/_CythonUtils.so
  building 'toppra.solverwrapper.cy_seidel_solverwrapper' extension
  creating build/temp.linux-x86_64-2.7/toppra/solverwrapper
  x86_64-linux-gnu-gcc -pthread -fno-strict-aliasing -Wdate-time -D_FORTIFY_SOURCE=2 -g -fdebug-prefix-map=/build/python2.7-nq92VM/python2.7-2.7.17=. -fstack-protector-strong -Wformat -Werror=format-security -fPIC -I/usr/lib/python2.7/dist-packages/numpy/core/include -I/usr/include/python2.7 -c toppra/solverwrapper/cy_seidel_solverwrapper.c -o build/temp.linux-x86_64-2.7/toppra/solverwrapper/cy_seidel_solverwrapper.o -O1
  In file included from /usr/lib/python2.7/dist-packages/numpy/core/include/numpy/ndarraytypes.h:1809:0,
                   from /usr/lib/python2.7/dist-packages/numpy/core/include/numpy/ndarrayobject.h:18,
                   from /usr/lib/python2.7/dist-packages/numpy/core/include/numpy/arrayobject.h:4,
                   from toppra/solverwrapper/cy_seidel_solverwrapper.c:723:
  /usr/lib/python2.7/dist-packages/numpy/core/include/numpy/npy_1_7_deprecated_api.h:15:2: warning: #warning "Using deprecated NumPy API, disable it by " "#defining NPY_NO_DEPRECATED_API NPY_1_7_API_VERSION" [-Wcpp]
   #warning "Using deprecated NumPy API, disable it by " \
    ^~~~~~~
  x86_64-linux-gnu-gcc -pthread -shared -Wl,-O1 -Wl,-Bsymbolic-functions -Wl,-Bsymbolic-functions -Wl,-z,relro -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -Wdate-time -D_FORTIFY_SOURCE=2 -g -fdebug-prefix-map=/build/python2.7-nq92VM/python2.7-2.7.17=. -fstack-protector-strong -Wformat -Werror=format-security -Wl,-Bsymbolic-functions -Wl,-z,relro -Wdate-time -D_FORTIFY_SOURCE=2 -g -fdebug-prefix-map=/build/python2.7-nq92VM/python2.7-2.7.17=. -fstack-protector-strong -Wformat -Werror=format-security -fPIC build/temp.linux-x86_64-2.7/toppra/solverwrapper/cy_seidel_solverwrapper.o -o build/lib.linux-x86_64-2.7/toppra/solverwrapper/cy_seidel_solverwrapper.so
  installing to build/bdist.linux-x86_64/wheel
  running install
  /tmp/pip-build-HQr2gA/toppra/build/lib.linux-x86_64-2.7/toppra/constraint/linear_second_order.py
  /tmp/pip-build-HQr2gA/toppra/build/lib.linux-x86_64-2.7/toppra/constraint/linear_joint_velocity.py
  /tmp/pip-build-HQr2gA/toppra/build/lib.linux-x86_64-2.7/toppra/constraint/linear_constraint.py
  /tmp/pip-build-HQr2gA/toppra/build/lib.linux-x86_64-2.7/toppra/constraint/conic_constraint.py
  /tmp/pip-build-HQr2gA/toppra/build/lib.linux-x86_64-2.7/toppra/constraint/linear_joint_acceleration.py
  /tmp/pip-build-HQr2gA/toppra/build/lib.linux-x86_64-2.7/toppra/constraint/constraint.py
  /tmp/pip-build-HQr2gA/toppra/build/lib.linux-x86_64-2.7/toppra/constraint/joint_torque.py
  /tmp/pip-build-HQr2gA/toppra/build/lib.linux-x86_64-2.7/toppra/constraint/__init__.py
  /tmp/pip-build-HQr2gA/toppra/build/lib.linux-x86_64-2.7/toppra/cpp/__init__.py
  /tmp/pip-build-HQr2gA/toppra/build/lib.linux-x86_64-2.7/toppra/solverwrapper/qpoases_solverwrapper.py
  /tmp/pip-build-HQr2gA/toppra/build/lib.linux-x86_64-2.7/toppra/solverwrapper/cvxpy_solverwrapper.py
  /tmp/pip-build-HQr2gA/toppra/build/lib.linux-x86_64-2.7/toppra/solverwrapper/solverwrapper.py
  /tmp/pip-build-HQr2gA/toppra/build/lib.linux-x86_64-2.7/toppra/solverwrapper/ecos_solverwrapper.py
  /tmp/pip-build-HQr2gA/toppra/build/lib.linux-x86_64-2.7/toppra/solverwrapper/__init__.py
  /tmp/pip-build-HQr2gA/toppra/build/lib.linux-x86_64-2.7/toppra/solverwrapper/hot_qpoases_solverwrapper.py
  /tmp/pip-build-HQr2gA/toppra/build/lib.linux-x86_64-2.7/toppra/algorithm/algorithm.py
  /tmp/pip-build-HQr2gA/toppra/build/lib.linux-x86_64-2.7/toppra/algorithm/__init__.py
  /tmp/pip-build-HQr2gA/toppra/build/lib.linux-x86_64-2.7/toppra/simplepath.py
  /tmp/pip-build-HQr2gA/toppra/build/lib.linux-x86_64-2.7/toppra/exceptions.py
  /tmp/pip-build-HQr2gA/toppra/build/lib.linux-x86_64-2.7/toppra/interpolator.py
  Traceback (most recent call last):
    File "<string>", line 1, in <module>
    File "/tmp/pip-build-HQr2gA/toppra/setup.py", line 117, in <module>
      ext_modules=cythonize(EXTENSIONS)
    File "/usr/lib/python2.7/dist-packages/setuptools/__init__.py", line 129, in setup
      return distutils.core.setup(**attrs)
    File "/usr/lib/python2.7/distutils/core.py", line 151, in setup
      dist.run_commands()
    File "/usr/lib/python2.7/distutils/dist.py", line 953, in run_commands
      self.run_command(cmd)
    File "/usr/lib/python2.7/distutils/dist.py", line 972, in run_command
      cmd_obj.run()
    File "/usr/lib/python2.7/dist-packages/wheel/bdist_wheel.py", line 240, in run
      self.run_command('install')
    File "/usr/lib/python2.7/distutils/cmd.py", line 326, in run_command
      self.distribution.run_command(command)
    File "/usr/lib/python2.7/distutils/dist.py", line 972, in run_command
      cmd_obj.run()
    File "/tmp/pip-build-HQr2gA/toppra/setup.py", line 77, in run
      process_file(f)
    File "/tmp/pip-build-HQr2gA/toppra/setup.py", line 71, in process_file
      out = strip_file_to_string(f)
    File "/usr/local/lib/python2.7/dist-packages/strip_hints/strip_hints_main.py", line 441, in strip_file_to_string
      ast.parse(processed_code.encode("utf-8"))
    File "/usr/lib/python2.7/ast.py", line 37, in parse
      return compile(source, filename, mode, PyCF_ONLY_AST)
    File "<unknown>", line 422
      raise ValueError(f"Invalid order {order}")
                                              ^
  SyntaxError: invalid syntax

  ----------------------------------------
  Failed building wheel for toppra
  Running setup.py clean for toppra
Failed to build toppra
Installing collected packages: toppra
  Running setup.py install for toppra ... error
    Complete output from command /usr/bin/python -u -c "import setuptools, tokenize;__file__='/tmp/pip-build-HQr2gA/toppra/setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" install --record /tmp/pip-eJSugi-record/install-record.txt --single-version-externally-managed --compile:
    /usr/lib/python2.7/distutils/dist.py:267: UserWarning: Unknown distribution option: 'long_description_content_type'
      warnings.warn(msg)
    usage: -c [global_opts] cmd1 [cmd1_opts] [cmd2 [cmd2_opts] ...]
       or: -c --help [cmd1 cmd2 ...]
       or: -c --help-commands
       or: -c cmd --help

    error: option --single-version-externally-managed not recognized

    ----------------------------------------
jmirabel commented 1 year ago

I recommend you to switch to python 3. If not, clone the repo and install it from source. The error you have is easy to fix but you may have subsequent ones.