libstdc++.so.5: cannot open shared object file: No such file or directory

中文分词一般会选择ICTCLAS的模块，虽然不能说很完美，但也算是一个不错的选择。
它提供了windows版本和linux版本，并支持C/C#/JNI接口。这本来是一个不错的事情，但版本一多，官方似乎就有点维护不过来了。
在linux下调用它的.so文件后，它会报错如下:

Exception in thread "main" java.lang.UnsatisfiedLinkError: /..../libICTCLAS50.so:
libstdc++.so.5: cannot open shared object file: No such file or directory

这个错误原因很简单，版本不对，ICTCLAS使用的c++ lib库落后了自己正常使用的stdc++ lib太远了，导致兼容不能。为此我们需要专门为它下载个过去的版本。
fedora这个distribution可以让事情变得比较简单。
libstdc++.so.5 是compat-libstdc++-33 package下的一部分，从这个地址可以找到一些mirror，随便选择一个，下载rpm包，安装即可。
当然，yum可以更容易解决这个问题:

# yum install compat-libstdc++-33

注意，stackoverflow的这个问答中，有人建议使用这个命令

# yum install 'libstdc++.so.5'

这种手法在某些时候也许是可用的，在i386,i686的系统下也是可以的，但是在x64环境下其实是不能用的。
因为它会找到个compat-libstdc++-33.i686，然后安装。效果就是lib/中出现了需要的.so,但在更重要的lib64/中却并没有安装到。
如果是其他版本，应该也可以从软件仓库中找到一些可用的安装包。
如果实在不行。自求多福吧。。libstdc++.so.5是gcc 3.3版本附赠的一个东西，所以你可能需要试试gcc 3是怎么编译的。
提供一个下载的源: http://packages.debian.org/stable/base/libstdc++5
下载那个.tar.gz包，慢慢编译吧
当然，应该还有更好的方法，虽然我不知道。