CMake错误:此项目中使用了以下变量,但是将它们设置为NOTFOUND

Muh*_*sad 5 linux configure cmake

我正在尝试whalebot使用tar文件配置搜寻器whalebot-0.02.00.tar.gz。我已经用以下方法正确提取了它:

root@Admin1:~/dls# tar xvzf whalebot-0.02.00.tar.gz
Run Code Online (Sandbox Code Playgroud)

之后,我想用以下配置:

root@Admin1:~/dls/whalebot# ./configure
Run Code Online (Sandbox Code Playgroud)

它给我错误:

bash:./configure:没有这样的文件或目录

我也已经运行了命令:

root@Admin1:~/dls/whalebot# cmake ./
Run Code Online (Sandbox Code Playgroud)

它给我以下结果:

root@Admin1:~/dls/whalebot# cmake ./
-- The C compiler identification is GNU
-- The CXX compiler identification is GNU
-- Check for working C compiler: /usr/bin/gcc
-- Check for working C compiler: /usr/bin/gcc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - 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
-- Boost version: 1.44.0
-- Found the following Boost libraries:
-- filesystem
-- system
-- thread
-- program_options
-- date_time
CMake Warning (dev) at webspider/CMakeLists.txt:25 (link_directories):
This command specifies the relative path

../statsem_string/bin

as a link directory.

Policy CMP0015 is not set: link_directories() treats paths relative to the
source dir. Run "cmake --help-policy CMP0015" for policy details. Use the
cmake_policy command to set the policy and suppress this warning.
This warning is for project developers. Use -Wno-dev to suppress it.

CMake Warning (dev) at webspider/CMakeLists.txt:25 (link_directories):
This command specifies the relative path

../3dparty/google-url

as a link directory.

Policy CMP0015 is not set: link_directories() treats paths relative to the
source dir. Run "cmake --help-policy CMP0015" for policy details. Use the
cmake_policy command to set the policy and suppress this warning.
This warning is for project developers. Use -Wno-dev to suppress it.

CMake Error: The following variables are used in this project, but they are set to NOTFOUND.
Please set them or make sure they are set and tested correctly in the CMake files:
HTMLCXX_LIBRARY
linked by target "whalebot" in directory /root/dls/whalebot/webspider

-- Configuring incomplete, errors occurred!
Run Code Online (Sandbox Code Playgroud)

我该如何进行?

Fra*_*ser 7

CMake 似乎无法找到 htmlcxx 库。

whalebot 文档中,htmlcxx 被列为依赖项。


您需要下载 htmlcxx,解压,然后安装:

cd <path to unzipped htmlcxx>
./configure --enable-static=on --enable-shared=off
make
sudo make install
Run Code Online (Sandbox Code Playgroud)

您可能需要添加#include <cstddef>到顶部html/tree.h以使其成功构建。它将usr/local/默认安装到。


如果你还没有icu, 你还需要安装它:

sudo apt-get install libicu-dev
Run Code Online (Sandbox Code Playgroud)


最后,您现在可以构建和安装鲸鱼机器人。同样,如果您有合理的最新 boost 安装,制作可能会失败。

在 的第 57 行中webspider/src/webspider_options.cpp,您需要替换boost::filesystem::initial_path().native_directory_string()boost::filesystem::initial_path().string()。那么你应该很好地构建和安装:

cd <path to unzipped whalebot>
mkdir build
cd build
cmake .. -DCMAKE_BUILD_TYPE=Release
make
sudo make install
Run Code Online (Sandbox Code Playgroud)

这也将usr/local/默认安装到。