c++ - 构建libssh时在qt和cmake错误上找不到libssh的功能

标签 c++ qt ubuntu cmake libssh

我想在 Qt 中使用 libssh 库,我的操作系统是 ubuntu 18.04 。
所以我克隆了库的文件并尝试用cmake构建它。
我按照安装文件夹中的教程进行操作,但构建过程无法完成。
起初我有这个错误:

Could NOT find CMocka (missing: CMOCKA_LIBRARIES CMOCKA_INCLUDE_DIR)**
我用了rm CMakeCache.txtcmake之后make .没关系,但是当我再次使用 make install 时我有这个错误:
CMake Error at cmake_install.cmake:41 (file):
  file INSTALL cannot copy file
  "/home/heydari.f/libssh-mirror/build/libssh.pc" to
  "/usr/local/lib/pkgconfig/libssh.pc".
Makefile:85: recipe for target 'install' failed
make: *** [install] Error 1
我应该怎么办?
在构建过程之后,与qt有什么关系吗?因为它显然找不到libssh的功能!

最佳答案

file INSTALL cannot copy file
"/home/heydari.f/libssh-mirror/build/libssh.pc" to
"/usr/local/lib/pkgconfig/libssh.pc"


这是一个权限问题。使用sudo make install解决这个问题。 sudo赋予命令 root 权限。小心使用它。

** error: undefined reference to 'ssh_session_is_known_server'**

undefined reference通常意味着您正在尝试访问某些东西,在这种情况下是一个未找到的函数。这个函数属于libssh,所以要么你没有libssh-dev安装或您提供的库路径不正确。由于后者的可能性很小,我将假设 libssh不见了。在 Ubuntu 上,您可以使用以下命令安装它:
sudo apt install openssh-server libssh-dev

关于c++ - 构建libssh时在qt和cmake错误上找不到libssh的功能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62857452/

相关文章:

c++ - 如何在qt中使用带有两个参数的qDebug()?

image - 缩小时 GraphicsView fitInView() 非常像素化的结果

mysql - Ruby on Rails 5 - seeds.rb

c++ - 对返回和参数类型的混淆

c++ - Py ILM Base 无法在 Windows 上编译

c++ - 只读结构?如何在结构中使用指针?

php - 最佳实践 : Managing system programs from PHP site

c# - 如何在 Ubuntu Server 上的 Mono 中获得系统正常运行时间?

javascript - 使用 Eclipse 调试 javascript

c++ - 如何使用 CreateFile API 打开分区?