Linux flc installation tutorial and No rule to naked target 'octonap-NOTFOUND', needed by 'lib/libfcl.so.0.7.0.stop. Solved

environment:

VMware workstation

unbantu 18.04

octomap 1.8.1

flc 0.7.0

Written in front:

Recently, to learn the control of robots, you need to install the OMPL library, but the premise of this library is to install the flc library. So here is the installation tutorial of this library, and record some solutions to errors.

Installation tutorial:

Before installing this library, you need to install the octomap library

The octomap library link (version 1.8.1) will report the error described in the title when installing a version above 1.9, and the solution will be given later.

After downloading the installation package, just create a directory on the computer, unzip it, then create a folder build, and execute cmake in the build. The command is as follows:

cd octomap
mkdir build
cd build
cmake ..
make
sudo make install

The result is as follows:

 

install fcl

The installation steps of fcl are the same as above, you can first use

git clone https://github.com/flexible-collision-library/fcl 

Git the installation package locally. If you can't git, you can go to GitHub to download the installation package, and then unzip it.

(ps: Because of the network of the host machine used by VMware, accessing git from the domestic network will be very slow, and errors may be reported. Interested students can try to use the proxy of the virtual machine )

After git is finished, use the same installation steps as fcl:

cd fcl
mkdir build
cd build
cmake ..
make
sudo make install

 This completes the successful installation! ! !

Errors and Solutions

Install fcl directly without installing octomap.

When I installed fcl directly according to the online tutorial, I found that there was the following reminder during compilation:

 Package octomap was not found in the pkg-config search path.
Perhaps you should add the directory containing `octomap.pc'
to the PKG_CONFIG_PATH environment variable
Package 'octomap', required by 'world', not found

 Although cmake did not directly report an error, I dare not install fcl directly because I am as timid as a mouse. I am afraid that it will not work after installation.

So I installed octomap first.

Wrong octomap version installed

When I installed it directly according to the online tutorial, although I successfully installed octomap version 1.9.8, a new error appeared again. When my cmake reached 51%, an error was reported:

*** No rule to make target 'octomap-NOTFOUND', needed by 'lib/libfcl.so.0.7.0'.  Stop.
CMakeFiles/Makefile2:1310: recipe for target 'src/CMakeFiles/fcl.dir/all' failed
make[1]: *** [src/CMakeFiles/fcl.dir/all] Error 2
Makefile:159: recipe for target 'all' failed
make: *** [all] Error 2

as follows:

Check the information to find:

It seems that octomap above 1.9 is not compatible with the current version 0.7.0 of fcl. Because I did not find a low version of fcl. So when installing, I recommend using octomap1.8.1 for installation.

When you encounter the above error, you need to uninstall the original version, then re-download 1.8.1, and then recompile

Guess you like

Origin blog.csdn.net/weixin_53665577/article/details/129771982