web-dev-qa-db-ja.com

ROSでワークスペースを作成しようとすると、なぜこのエラーが発生するのですか?

ワークスペースを作成しようとするときはいつでも:

~/catkin_ws$ catkin_make

これは次のように表示されます。

ImportError: "from catkin_pkg.package import parse_package" failed: No module named 'catkin_pkg'
Make sure that you have installed "catkin_pkg", it is up to date and on the PYTHONPATH.
CMake Error at /opt/ros/kinetic/share/catkin/cmake/safe_execute_process.cmake:11 (message):
  execute_process(/home/usuario/miniconda3/bin/python
  "/opt/ros/kinetic/share/catkin/cmake/parse_package_xml.py"
  "/opt/ros/kinetic/share/catkin/cmake/../package.xml"
  "/home/usuario/catkin_ws/build/catkin/catkin_generated/version/package.cmake")
  returned error code 1
Call Stack (most recent call first):
  /opt/ros/kinetic/share/catkin/cmake/catkin_package_xml.cmake:63 (safe_execute_process)
  /opt/ros/kinetic/share/catkin/cmake/all.cmake:151 (_catkin_package_xml)
  /opt/ros/kinetic/share/catkin/cmake/catkinConfig.cmake:20 (include)
  CMakeLists.txt:52 (find_package)


-- Configuring incomplete, errors occurred!
See also "/home/usuario/catkin_ws/build/CMakeFiles/CMakeOutput.log".
See also "/home/usuario/catkin_ws/build/CMakeFiles/CMakeError.log".
Invoking "cmake" failed

Catkin_pkgに問題があるようですが、解決策が見つかりません

5
rachuism

Ubuntu 16.04にROSをインストールしたところ、同じ問題が発生し、修正されました。 catkin_pkgの場所はPYTHONPATHにない可能性が高いため、追加する必要があります。

エラー出力から:

「catkin_pkg」が最新であり、PYTHONPATHにインストールされていることを確認してください。

Catkin_pkgを見つけて、PYTHONPATHを確認してください。 catkin_pkgが私のPYTHONPATHになかったので(おそらく他のプログラムのインストールが原因で)、それを追加して、今回は正常にcatkin_makeを再度実行しました。

~/catkin_ws$ locate catkin_pkg
/usr/lib/python2.7/dist-packages/catkin_pkg

~/catkin_ws$ echo $PYTHONPATH
/opt/ros/kinetic/lib/python2.7/dist-packages

Catkin_pkgディレクトリをPYTHONPATHに追加するには(このセッションの場合):

~/catkin_ws$ export PYTHONPATH=$PYTHONPATH:/usr/lib/python2.7/dist-packages

永続性のために、catkin_pkgディレクトリを.bashrcのPYTHONPATHに追加しました(最初に.bashrcファイルをバックアップすることをお勧めします(例:cp -p〜/.bashrc〜/.bashrc-ros-catkin.bak))。

これを行うには、〜/ .bashrcファイルを編集し(このファイルを編集するにはSudoを使用する必要がある場合があります)、ファイルの最後に次の2行を追加します。

# manually added for ROS catkin_make workspace setup
export PYTHONPATH=$PYTHONPATH:/usr/lib/python2.7/dist-packages

ファイルを保存し、ソースを実行してセッションを更新します。

~/catkin_ws$ source ~/.bashrc

PYTHONPATHをもう一度確認してください。

~/catkin_ws$ echo $PYTHONPATH
/opt/ros/kinetic/lib/python2.7/dist-packages:/usr/lib/python2.7/dist-packages

明らかに、catkin_pkgファイルの場所は私のものとは異なる可能性があるため、上記の$ PYTHONPATHに追加するときは、代わりにそのパスを使用してください。

ここで、catkin_makeをもう一度実行してみてください。同じエラーが発生する場合は、catkin_pkgの場所とPYTHONPATHの出力をここに貼り付けてください。

乾杯、sb

5
stephenb

Anaconda環境を使用していますか?この問題は、AnacondaのPythonインストールで非常に一般的です。

試してください:python --version

出力にAnacondaが表示されている場合は、vi ~/.bashrcを指定してbashrcファイルに移動し、anacondaがパスに追加されている行にコメントを付けます。それは次のようなものになります

export PATH="username/anaconda2/bin:$PATH"

その後、source ~/.bashrcを使用してbashrcを入手し、新しいターミナルを開いて、catkinワークスペースに移動します。古いビルドフォルダを削除して、catkin_makeコマンドを再試行してください。

あなたの問題を解決する必要があります。

4

これを試してください:pip install -U rosdep rosinstall_generator wstool rosinstall six vcstools

pipにエラーが表示された場合は、rootに切り替えてpipをインストールしてから、

1
Nasir Shah

エラー出力:

ImportError:「fromcatkin_pkg.package import parse_package」が失敗しました:「catkin_pkg」という名前のモジュールがありません。「catkin_pkg」が最新であり、PYTHONPATHにインストールされていることを確認してください。

上記のように、PYTHONPATHに「catkin_pkg」が必要です。あなたが私に尋ねる場合の最も簡単な方法は:

$ pip install catkin_pkg

1
Sagar Dhungel

実際、AnacondaとROSを同時に使用したい場合、通常、このエラーが発生します。だから最初に.bashrcanacondaのパスをファイルしてコメントします。

書き出す PATH="/home/gaurav/anaconda3/bin:$PATH"

コメントした後、catkin_wsフォルダーを作成し、フォルダー内の既存のフォルダーを削除して、新しいsrcフォルダーを作成します。次に、次の3つの手順に従います。

1-$ mkdir src

2-$ catkin_init_workspace src

3-$ catkin_make

わたしにはできる。

0
Gaurav