最近更新了spark到1.1.0版本。跑任务出错。java
Caused by: java.lang.UnsatisfiedLinkError: /tmp/snappy-1.0.5.3-6ceb7982-8940-431c-95a8-25b3684fa0be-libsnappyjava.so: /usr/lib64c++
/libstdc++.so.6: version `GLIBCXX_3.4.9' not found (required by /tmp/snappy-1.0.5.3shell
因为咱们的系统是rhel5,glibc版本只到3.4.8,而snappy须要使用3.4.9版本,坑爹。bootstrap
spark1.0.0没有出现过这个问题,为了减小系统改动,从新编译了spark,并将pom.xml 的snappy版本(1.5.3)手动修改为spark1.0.0中的1.5.0版本。可是问题仍是没能解决。app
最终只能编译了更高版本的gcc,我用的gcc4.7.3,将新gcc的libstd++.so.6.x连接过去/usr/lib64/libstd++.so.6, 问题解决。ui
gcc编译时依赖的库:spa
../configure --prefix=/usr/local/gcc-4.7.3 --enable-threads=posix --disable-bootstrap --disable-multilib --enable-languages=c ,c++,java --with-gmp=/usr/local/gmp-6.0.0/ --with-mpfr=/usr/local/mpfr-3.1.2/ --with-mpc=/usr/local/mpc-1.0.2/
ps:网上那些直接找个库作软链接的方法不用试了,太不靠谱。code