本文共 3357 字,大约阅读时间需要 11 分钟。
《Intel Optane DC Persistent Memory Module (PMM)详解》
地址:
《Linux上快速入门英特尔Optane DC Persistent Memory Module的配置与使用》
地址:
通过前面的两篇博文,了解到了Optane DC PMM的相关知识以及配置方法,现在就把配置工具在ipmctl来进行安装~
虽然在github上提供了编译安装的方法,但是我们实际操作的时候可能不会如此一帆风顺,这也是这篇博文的目的,讲解一下我的安装过程,以及遇到的那些问题。
没想到在安装的过程中遇到了这么多的问题,所以本文分为两个版本,一个是遇坑版,一个是简洁版,遇坑版就描述自己安装过程中遇到的问题以及解决方法,简洁版就把整个过程简洁地表达出来,如果时间紧可以直接跳到文末的简洁版。
目录
环境:Ubuntu 18.04
我是新装机的一台Ubuntu 18.04,里面什么都没有,第一步更新国内的软件源(随意),然后update
sudo apt-get update
将github上的软件下载到Ubuntu 18.04上,然后解压
ipmctl:
按照github上的指示进行安装:
mkdir output && cd outputcmake -DRELEASE=ON -DCMAKE_INSTALL_PREFIX=/ ..
在cmake的时候遇到第一个问题,新装的Ubuntu 18.04中并没有安装cmake,接下来先安装cmake
sudo apt install cmake
安装好之后继续运行:
cmake -DRELEASE=ON -DCMAKE_INSTALL_PREFIX=/ ..
又遇到了下面的问题:
问题具体描述:No CMAKE_CXX_COMPILER could be found.
解决方案:
sudo apt-get install build-essential
再次运行:
cmake -DRELEASE=ON -DCMAKE_INSTALL_PREFIX=/ ..
又遇到了如下的新问题:
这个问题试了很多办法,进入到CMakeLists.txt中:
vi CMakeLists.txt
我目前是将CMakeLists.txt第43行的语句:
if(NOT GIT_FOUND OR ${GIT_RETURN_CODE})
改为了:
if(NOT GIT_FOUND OR GIT_RETURN_CODE)
改成这样之后这里就没有报错了,但是具体原因还不清楚,在网上找到一个可能靠谱的资料。
地址:
但是这个问答里面我也还是没弄清楚到底是怎么回事,感觉跟cmake关系很大,这个问题按照上面板的方法去除之后,继续进行cmake,又遇到了如下的问题:
具体问题应该是:
Could NOT find PkgConfig (missing: PKG_CONFIG_EXECUTABLE)
按照这个问题进行解决,没有pkg,我们先安装上:
sudo apt-get install pkg-config
安装上后继续运行,又遇到了一大堆问题,这些问题如下:
看来是因为电脑里缺少太多的包了,必须先将这些包装上才能继续运行
依次安装这些需要的包:
sudo apt-get install asciidoctor
sudo apt-get install asciidoc
装下面这个废了半天劲,如果一次安装不成功就多试几次:
sudo gem install asciidoctor-pdf --pre
如下图,我是失败了很多次
装了上面这三个,我们再来运行一下cmake:
cmake -DRELEASE=ON -DCMAKE_INSTALL_PREFIX=/ .
得到如下的结果:
没有找到 libndctl,那么使用apt-get install试试:
sudo apt-get install libndctl
找不到~~~这就很难受了~~~
但是我们注意ndctl是我们之前提到的一个工具,它的github地址如下:
可以下载下来进行安装,但是这个时候我突然想到既然直接找libndctl找不到,那加上dev试试,所以:
sudo apt-get install libndctl-dev
这玩意是真玄学,如果安装不成功可以按照下面的链接进行安装:
下图为我在主机(Ubuntu 18.04)上安装成功后的图
下图为在虚拟机(Ubuntu 18.04)上安装成功的图:
使用上面的语句试一试,最后成功安装,我们再执行cmake,又遇到如下的问题:
前面的问题已经解决,接下来又有一个包没有,能怎么办~~接着装吧~~~
装git:
sudo apt-get install git
然后再装safec-3.3……
这safec-3.3到底是什么!!!
找不到~找不到~找不到~
好吧,这里粗心了,搜索了半天,结果人家github界面上提示了方法,如下图:
进入到github中提示的页面,现在环境Ubuntu 18.04对应的页面地址如下:
首先输入如下命令:
sudo add-apt-repository ppa:jhli/libsafecsudo apt-get update
这个貌似需要梯子,不确定,但是在我的Ubuntu 18.04上始终add不成功,问题如下:
然后我转到我电脑的虚拟机(Ubuntu 16.04)里面add成功。
好吧,为了保证是在Ubuntu18.04上安装的,所以我又装了一个Ubuntu 18.04的虚拟机:
继续按照上面的步骤到安装libsafec。
add好之后,update,然后在安装libsafec:
sudo apt-get update
sudo apt-get install libsafec-dev
现在就安装成功了,如下图所示:
再次cmake:
cmake -DRELEASE=ON -DCMAKE_INSTALL_PREFIX=/ ..
cmake成功之后,开始编译:
make -j all
安装:
sudo make install
在终端输入 ipmctl 得到下图所示结果:
至此,安装成功
ipmctl:
在上面的网址中,下载ipmctl代码,解压到要安装该工具的主机中,解压然后进入到ipmctl的目录中。
vi CMakeLists.txt
将 CMakeLists.txt 第43行的:
if(NOT GIT_FOUND OR ${GIT_RETURN_CODE})
更改为:
if(NOT GIT_FOUND OR GIT_RETURN_CODE)
更改完成后依次输入如下命令,如果一次没安装成功,那么多试几次:
sudo apt-get update
mkdir output && cd output
sudo apt install cmake
sudo apt-get install build-essential
sudo apt-get install pkg-config
sudo apt-get install asciidoctor
sudo apt-get install asciidoc
sudo gem install asciidoctor-pdf --pre
sudo apt-get install libndctl-dev
sudo apt-get install git
这个可能需要梯子:
sudo add-apt-repository ppa:jhli/libsafecsudo apt-get update
sudo apt-get install libsafec-dev
然后再进行cmake、编译、安装~
cmake -DRELEASE=ON -DCMAKE_INSTALL_PREFIX=/ ..
make -j all
sudo make install
最后验证:
ipmctl
安装这个可是真的费了我一些功夫,大家在安装过程中最好多试验,经过我的一番折腾,最后成功安装~
转载地址:http://yxhxi.baihongyu.com/