【已解决】error while loading shared libraries: libstdc++.so.5: cannot open shared object file: No such file or directory –

对于在安装包的时候遇到“error while loading shared libraries: libstdc++.so.5: cannot open shared object file: No such file or directory”错误的时候,如何来解决呢?

出现在个错误的原因主要是因为在有些系统管理默认的libstdc库只libstd++.so.5. 而系统默认安装的可能是libstd++.so.6..所以这个时候需要找到libstd++.so.6,然后重新做个软链接,输入下面的命令:

1
2
3
4
5
6
7
8
9
10
$ find /usr -name libstdc*
usr/lib/coreutils/libstdbuf.so<br />
/usr/lib/gcc/x86_64-linux-gnu/4.8/libstdc++.a<br />
/usr/lib/gcc/x86_64-linux-gnu/4.8/libstdc++.so<br />
/usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.19<br />
/usr/lib/x86_64-linux-gnu/libstdc++.so.6<br />
/usr/share/doc/libstdc++-4.8-dev<br />
/usr/share/doc/gcc-4.8-base/test-summaries/libstdc++.sum.gz<br />
/usr/share/doc/gcc-4.8-base/C++/libstdc++_symbols.txt.amd64<br />
/usr/share/doc/libstdc++6

切换到libstdc++.so.6 所在的目录,输入命令:

1
    cd /usr/lib/x86_64-linux-gnu/

重新做软连接:

1
 $ ln libstdc++.so.6 libstdc++.so.5

这样问题就应该被解决了。

在说明下,我是在ubuntu 14.04 上遇到这个问题的。

python 中mysql_config not found 错误的解决办法

在python中安装MySQL_python。不想通过下载源码编译,而是想用

1
easy_install MySQL_python

来安装。结果一直报错:

1
mysql_config not found

网上很多资料说要通过修改site.cfg来指定mysql_config的位置。我想只是因为我的macos里的mysql没有安装到系统默认位置导致的。考虑到系统会到/usr/bin找mysql,那自然也会去这里找mysql_config。于是安装语句变成了:

1
easy_install MySQL-python --with-mysql_config=/usr/local/mysql-5.6.20-osx10.8-x86_64/bin/mysql_config

就通过了。

python 里如何解决中文乱码的问题

在python代码里如何来解决中文乱码的问题。

1
2
3
4
5
6
# -*- coding:utf-8 -*-
import sys
reload(sys)
sys.setdefaultencoding('utf8')
physicsPath = u"D:\\文档\\"
print physicsPath

上面的方案 已经可以解决乱码;

在控制台和sublime text 中 都是可以通过的!

centos如何解决“rpmdb:PANIC: fatal region error detected; run recovery error and solution"错误

在centos 或者rhel系统,当你使用yum命令的时候可能会遇到下面的错误信息:

1
2
3
4
5
6
rpmdb: PANIC: fatal region error detected; run recovery
error: db3 error(-30974) from dbenv->open: DB_RUNRECOVERY: Fatal error, run database recovery
error: cannot open Packages index using db3 - (-30974)
error: cannot open Packages database in /var/lib/rpm
CRITICAL:yum.main:
Error: rpmdb open failed

如何解决这个问题呢?

首先要先备份下rpm数据库,以防万一。使用下面的命令备份rpm数据库:

1
cp -avr /var/lib/rpm/ /root/backups.rpm.mm_dd_yyyy/

显示所有的rpm 数据库文件,输入下面的命令:

1
ls -l /var/lib/rpm/_*

命令输出:

1
2
3
4
5
[root@devops Desktop]# ls -l /var/lib/rpm/_*
-rw-r--r--. 1 root root   24576 Dec 14 04:13 /var/lib/rpm/__db.001
-rw-r--r--. 1 root root  229376 Dec 14 04:13 /var/lib/rpm/__db.002
-rw-r--r--. 1 root root 1318912 Dec 14 04:13 /var/lib/rpm/__db.003
-rw-r--r--. 1 root root  753664 Dec 14 04:13 /var/lib/rpm/__db.004

执行下面的命令,修复问题:

1
2
3
4
rm -f /var/lib/rpm/__db*
db_verify /var/lib/rpm/Packages
rpm --rebuilddb
yum clean all

到此我们可以执行一个yum命令来验证问题已经被解决。
输入下面命令:

1
yum repolist

命令输出:

1
2
3
4
5
6
7
8
9
10
11
[root@devops Desktop]# yum repolist
Loaded plugins: fastestmirror, refresh-packagekit, security
Loading mirror speeds from cached hostfile
 * base: mirrors.btte.net
 * extras: mirrors.btte.net
 * updates: mirrors.btte.net
repo id                        repo name                                  status
base                           CentOS-6 - Base                            6,518
extras                         CentOS-6 - Extras                             36
updates                        CentOS-6 - Updates                           494
repolist: 7,048