1

こんにちはC++および/またはROSエキスパート

Ubuntu12.04とROSを新規インストールしました。

私の古いインストールもubunru12.04にあり、うまく機能しました。

しかし、プロジェクトを作成またはrosmakeしようとすると、次のエラーが発生します。

  Linking CXX executable ../bin/robot_task_execution
  /usr/bin/ld: cannot find -lrw_sandbox
  /usr/bin/ld: cannot find -lrw_control
  /usr/bin/ld: cannot find -lrw_algorithms
  /usr/bin/ld: cannot find -lrw_pathplanners
  /usr/bin/ld: cannot find -lrw_pathoptimization
  /usr/bin/ld: cannot find -lrw_task
  /usr/bin/ld: cannot find -lrw_simulation
  /usr/bin/ld: cannot find -lrw_opengl
  /usr/bin/ld: cannot find -lrw_lua
  /usr/bin/ld: cannot find -llua51
  /usr/bin/ld: cannot find -lrw_proximitystrategies
  /usr/bin/ld: cannot find -lyaobi
  /usr/bin/ld: cannot find -lpqp
  /usr/bin/ld: cannot find -lrw
  /usr/bin/ld: cannot find -lrw_qhull
  collect2: ld returned 1 exit status

これが何を意味するのか、またはこれを修正する方法について何か考えがありますか?

私はこのようにROSをインストールしました、多分私は何か他のものが必要ですか?:

sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu precise main" > /etc/apt/sources.list.d/ros-latest.list'
wget http://packages.ros.org/ros.key -O - | sudo apt-key add -
sudo apt-get update
sudo apt-get install ros-fuerte-desktop-full
echo "source /opt/ros/fuerte/setup.bash" >> ~/.bashrc
. ~/.bashrc
sudo apt-get install python-rosinstall python-rosdep

よろしくビャルケ

4

3 に答える 3

2

このエラーは、リンカがライブラリrw_sandbox、rw_sandboxなどを見つけることができないことを示しています。makefileで指定されたライブラリの場所へのパスがあることを確認してください。

于 2012-10-11T21:48:06.593 に答える
2

メッセージには、プログラムのリンクに必要なライブラリが見つからないことが示されています。インストールガイドをざっと見てください:

新しいシェルが起動されるたびに、ROS環境変数がbashセッションに自動的に追加されると便利です。

echo "source /opt/ros/fuerte/setup.bash" >> ~/.bashrc
. ~/.bashrc

したがって、そのsetup.bashを起動して、リンカー変数(通常はLD_LIBRARY_PATH)を更新し、不足しているライブラリの場所を追加する必要があると思います。

于 2012-10-11T21:40:12.043 に答える
0

-llibsをg++コマンドラインに追加することにより、ライブラリを直接リンクできます。

この回答を確認してください: rosなしでroscppをコンパイルします(g ++を使用)

そこでリンクは、コマンドラインで個々のライブラリを追加することによって行われます。

于 2017-07-07T02:44:19.950 に答える