我的环境是Ubuntu 18.04
https://blog.csdn.net/hustymf/article/details/9469277
这是一篇比较靠谱的文章,但是,由于版本问题,这里面有些行不通的地方。
我用的软件包和他的不太一样,他的在我这里会报错,估计是他的他老了吧。我的软件包如下:
trousers-0.3.14.tar.gz gmp-6.1.2.tar.bz tpm-emulator-master.zip tpm-tools-1.3.9.1.tar.gz TPMManager-master.zip
全部的下载地址:https://download.csdn.net/download/qq_41426887/11156295
我遇到的问题及解决方法如下:
① 第三部分安装GTK时
#apt-get install build-essential#这将安装gcc/g++/gdb/make等基本编程工具
#apt-get install gnome-core-devel#这将安装 libgtk2.0-dev libglib2.0-dev等开发相关的库文件
#apt-get install pkg-config #用于在编译GTK程序时自动找出头文件及库文件位置
#apt-get install devhelp #这将安装 devhelp GTK文档查看程序
#apt-get install libglib2.0-doc libgtk2.0-doc #这将安装 gtk/glib的API参考手册及其它帮助文档
#apt-get install glade libglade2-dev#这将安装基于GTK的界面GTK是开发Gnome窗口的c/c++语言图形库
#apt-get install libgtk2.0* #gtk+2.0所需的所有文件统通下载安装完毕
其中第二行命令显示找不到gnome-core-devel。经过各种查找,我判断是版本的问题,这里应该是只需要gdk.h这个库文件,所以只需要安装libgtk2.0-dev就行了,这样就不会报错。其他的命令最好执行一遍,否则可能会遇到缺少文件的支持的问题。
② 第四部分 make install
At main.c:160:
- SSL error:02001002:system library:fopen:No such file or directory: ../crypto/bio/bss_file.c:72
- SSL error:2006D080:BIO routines:BIO_new_file:no such file: ../crypto/bio/bss_file.c:79
sign-file: certs/signing_key.pem: No such file or directory
-- Up-to-date: /usr/local/bin/tpmd
这里会提示bss_file.c 找不到 。我在各个论坛上都没找到结果,对自己的Ubuntu全盘搜索也没有找到这个文件,估计是这个文件就不存在吧,我选择忽略这个问题,毕竟没有说是error。
③ 第五部分./configure
configure: error: openssl is currently the only supported crypto library for trousers. Please install openssl from http://www.openssl.org or the -devel package from your distro
提示要安装openssl,可是明明已经安装了。实际上,这是因为缺少库支持,要安装libssl-dev,注意不要安装openssl-dev,后者是Centos上的,在Ubuntu上找不到。安装libssl-dev之后,这一步就能成功了。
另外,trousers-0.3.8有一些问题,应该安装trousers-0.3.14,这样就不用按照那篇文章里面的进行修改,直接就能按照命令正常操作。
tcsd -e -f后,可能会遇到如下报错TCSD TCS ERROR: TCS GetCapability failed with result = 0x1c,这是因为上次tpm_emulator不正常退出,而这次默认以save方式运行造成的。应该退出tpm_emulator,然后使用 tpmd -f -d clear命令开启tpm_emulator,在tcsd -e -f 就能正确连接到设备了。
下次如果出现这样的提示 :mode 600子类的,直接重装trousers-0.3.14,快速解决问题。
④ 安装tpmmanager
安装时用这个tpm版本就行https://github.com/Rohde-Schwarz/TPMManager,不过这里的安装方法我没用,我还是参考那一片文章做的。安装好了以后,应该运行tpm_emulator和trousers,然后才能运行tpmmanager。结果如下。
总之,这个安装过程是比较艰难的,网上有很多前辈写了很多文章,过程比较复杂,而且包含了很多问题的解决办法。但是由于版本和环境的问题,我们遇到的问题可能是重来没有出现过的。即使我上面又列出了一些新的问题及其解决方法,但有一些细节可能还需要读者自己去发现和解决,毕竟我很难把所有的地方都列举出来。如果有什么问题可以留言,或者在国内外各个论坛里找答案,相信总会安装成功的。
最后,善意的提醒一下:最后把源换成国内的,清华 阿里 科大的都可以,这样可以大大提高下载速度。比如原来是几十K,换了源之后就可能是M级的速度了,更新软件就非常快啦。此外,有些操作需要管理员权限,如果不成功不妨试一试,不过不要随意提权,否则会造成管理混乱,出现难以解决的错误。