在 Ubuntu 20.04 上更新犰狳 [关闭]
Posted
技术标签:
【中文标题】在 Ubuntu 20.04 上更新犰狳 [关闭]【英文标题】:Updating Armadillo on Ubuntu 20.04 [closed] 【发布时间】:2020-10-20 19:53:45 【问题描述】:我目前在装有 Ubuntu 20.04 的机器上安装了 Armadillo 9.900.4。我已经下载了 10.1.0 并运行了 cmake .
和 sudo make install
,当我重新编译我的代码并运行它时,它说它是用 9.900.4 编译的。我做错了什么吗?有没有办法完全删除犰狳并重新安装?
谢谢
【问题讨论】:
【参考方案1】:这就是使用make install
安装某些东西的缺点。它绕过了你的发行包管理器,然后你必须手动清理/升级你已经安装的东西。 install
make 目标的实际作用也取决于库的创建者。
一些库还创建了一个“卸载”目标以使卸载更容易。我不知道犰狳是否这样做,但您可以尝试从您编译的文件夹中运行make uninstall
,然后运行make install
命令进行检查。
无论如何,Linux 都有安装库和头文件的标准目录。通常install
make 目标所做的只是将适当的文件复制到这些文件夹中。然后您需要做的就是手动删除这些文件。尝试在 /usr/include
文件夹中查找标头,并在 /usr/lib
文件夹中查找已编译库(名称因发行版而异)。
如果找不到它们,您可以使用locate
程序。只需在 shell 中运行locate armadillo
。不过,我不确定它是否已经安装在 ubuntu 中。
您也可以只将犰狳用作仅标头库,而无需在系统中“安装”它。在这种情况下,您需要将您的程序与 BLAS 实现以及 Lapack 链接起来。事实上,当你编译犰狳时,它所做的只是创建一个可以链接的“包装库”,并且已经链接了 BLAS 和 Lapack(大部分犰狳代码都是模板代码)。
TLDR;
在/usr/include
(或类似的)中搜索犰狳读者并删除它们。在/usr/lib
(或类似的)中搜索已编译的犰狳库并将其删除。
【讨论】:
以上是关于在 Ubuntu 20.04 上更新犰狳 [关闭]的主要内容,如果未能解决你的问题,请参考以下文章
Windows10 + Ubuntu 20.04 上的 CUDA 问题 [关闭]