ImportError: libgflags.so.2: cannot open shared object file: No such file or directory

近日在TX2上部署深度学习环境Pytorch, 按照github上的教程进行安装,在终端显示已经成功安装,可是在python3环境下导入torch时出现以下的错误.

ImportError: libgflags.so.2: cannot open shared object file: No such file or directory_第1张图片

 上图提示找不到 libgflags.so.2 这个链接库, 无法导入. 于是我们进入 /usr/local/lib 目录下, 发现在该目录下没有 libgflags.so.2 .那既然没有, 我们就自己给编译生成再使能为动态链接库.

解决办法:

(1)下载gflags2.1.2 source package

下载地址:https://launchpad.net/ubuntu/+source/gflags/2.1.2-3

(2)进入下载目录,在终端执行如下命令进行解压

tar -xzvf gflags_2.1.2.orig.tar.gz

(3) 接着进入解压后的文件下创建 build 文件

cd gflags_2.1.2
mkdir build
cd build

(4)在终端输入以下命令

cmake -DCMAKE_INSTALL_PREFIX=/usr/local -DBUILD_SHARED_LIBS=ON -DGFLAGS_NAMESPACE=google -G"Unix Makefiles" ..

(5)接着继续执行如下命令 进行cpu编译

make -j4

 (5) 输入如下命令进行install

sudo make install

编译后的最终实际图如下,可以看到出现了我们期望的 libgflags.so.2 

ImportError: libgflags.so.2: cannot open shared object file: No such file or directory_第2张图片

(6) 继续执行如下的命令进行动态库链接的加载

sudo ldconfig

完成了上述工作我们 在终端输入 python3 进入python3环境后执行命令: import torch 发现并不能成功导入, 又出现了新的报错, 具体报错信息和刚才解决的一样,  ImportError: libglog.so.0: cannot open shared object file: No such file or directory .不慌, 我们继续按照前面的办法来解决.

解决办法:

(1) 下载 glog

下载地址: git clone https://github.com/google/glog

(2) 执行如下的命令进行编译安装

cd glog
./autogen.sh
sudo CFLAGS="-fPIC" ./configure
mkdri build
cd build
cmake -D BUILD_gflags_LIBS=ON  -D BUILD_SHARED_LIBS=ON -D BUILD_gflags_nothreads_LIBS=ON -D GFLAGS_NAMESPACE=ON ..
make -j4
sudo make install

编译安装完成后, 终端显示如下的信息, 我们可以看到 libglog.so.0 已经有了.

ImportError: libgflags.so.2: cannot open shared object file: No such file or directory_第3张图片

完成上述所有操作后,我们再次在终端输入 python3 进入python3环境, 并试着导入 torch 和执行相关的 torch 命令操作, 具体的实验图如下所示.

ImportError: libgflags.so.2: cannot open shared object file: No such file or directory_第4张图片

可以看到, 上图中我们成功运用 torch 进行了两个数的相加, 哈哈哈终于成功的在 TX2 上成功的安装了 pytorch1.1稳定版, 终于可以尝试进行与 tensorflow 不同风格的开发了.啦啦啦啦

 

 

 

 

 

 

 

 

你可能感兴趣的:(ImportError: libgflags.so.2: cannot open shared object file: No such file or directory)