/lib64/libc.so.6: version `GLIBC_2.14′ not found问题

今天运行一个例程,出现了/lib64/libc.so.6: version `GLIBC_2.14′ not found问题,把解决过程简单记录一下。

系统环境: centos6.2

现象:

[root@localhost nvEncodeApp]# ./nvEncoder 
./nvEncoder: /lib64/libc.so.6: version `GLIBC_2.14' not found (required by ./nvEncoder)

好吧,人家需要的是’GLIBC_2.14’,先查看一下当前系统glibc的情况:

[root@localhost build]# strings /lib64/libc.so.6 |grep GLIBC
GLIBC_2.2.5
GLIBC_2.2.6
GLIBC_2.3
GLIBC_2.3.2
GLIBC_2.3.3
GLIBC_2.3.4
GLIBC_2.4
GLIBC_2.5
GLIBC_2.6
GLIBC_2.7
GLIBC_2.8
GLIBC_2.9
GLIBC_2.10
GLIBC_2.11
GLIBC_2.12
GLIBC_PRIVATE

好吧,确实没有,那简单粗暴,安装一下。

1. glibc下载

http://www.gnu.org/software/libc/ 下载源代码。我下载的版本是2.14,链接地址是http://ftp.gnu.org/gnu/glibc/glibc-2.14.tar.gz

2. 安装

因为glibc库使用广泛,为了避免污染当前系统环境,最好自定义安装目录,使用时定义一下环境变量就行了。具体步骤如下:

[root@localhost ~]# tar xvf glibc-2.14.tar.gz
[root@localhost ~]# cd glibc-2.14
[root@localhost glibc-2.14]# mkdir build
[root@localhost glibc-2.14]# cd ./build
[root@localhost build]# ../configure --prefix=/opt/glibc-2.14
[root@localhost build]# make -j4
[root@localhost build]# make install

执行make install时出现:

/media/linux_install_ai/glibc-2.14/build/elf/ldconfig:

Can’t open configuration file/opt/glibc-2.14/etc/ld.so.conf: No such file or directory

make[1]: Leaving directory`/media/linux_install_ai/glibc-2.14′

[root@www build]# find / -name”ld.so.conf”

/etc/ld.so.conf

[root@www build]# cp/etc/ld.so.conf /opt/glibc-2.14/etc/

make install OK!




3. 测试
[root@localhost nvEncodeApp]# export LD_LIBRARY_PATH=/opt/glibc-2.14/lib:$LD_LIBRARY_PATH
[root@localhost nvEncodeApp]# ./nvEncoder 
Error!  Command line paramters -outFile is required in order to run this application
[ NVENC 3.0 Command Line Encoder]
Usage: nvEncoder -configFile=config.txt -numFramesToEncode=numFramesToEncode -outFile=output.264 <optional params>

> Encoder Test Application Parameters
   [maxNumberEncoders=n] n=number of encoders to use when multiple GPUs are detected
> Optional Parameters to be Set from ConfigFile Or from Command Line
   [frameNum]           Start Frame (within input file)
   [bitrate]            Video Bitrate of output file (eg: n=6000000 for 6 mbps)
   [maxbitrate]         Video Bitrate of output file (eg: n=6000000 for 6 mbps)
   [rcMode]             Rate Control Mode (0=Constant QP, 1=VBR, 2=CBR, 4=VBR_MinQP, 8=Two-Pass CBR
   [enableInitialRCQP]  Enable Initial Frame RC QP mode setting
   [initialQPI]         Initial Frame QP for Intra Frame
   [initialQPP]         Initial Frame QP for Inter P-Frame
   [initialQPB]         Initial Frame QP for Inter B-Frame
   [frameRateNum]       Frame Rate numerator   (default = 30000)  (numerator/denominator = 29.97fps)
   [frameRateDen]       Frame Rate denominator (default =  1001)
   [gopLength]          Specify GOP length (N=distance between I-Frames)
   [profile]            H.264 Codec Profile (n=profile #)
                           66  = (Baseline)
                           77  = (Main Profile)
                           100 = (High Profile)
   [numSlices]          Specify Number of Slices to be encoded per Frame
   [preset]             Specify the encoding preset
                         -1 = No preset
                          0 = NV_ENC_PRESET_DEFAULT
                          1 = NV_ENC_PRESET_LOW_LATENCY_DEFAULT
                          2 = NV_ENC_PRESET_HP
                          3 = NV_ENC_PRESET_HQ
                          4 = NV_ENC_PRESET_BD
                          5 = NV_ENC_PRESET_LOW_LATENCY_HQ
                          6 = NV_ENC_PRESET_LOW_LATENCY_HP
   [numBFrames]         Number fo B frames between P successive frames
   [syncMode]           Run NvEnc in sync Mode if set
   [interfaceType]      Run NvEnc at specified Interface
                           0  = (DX9)
                           1  = (DX11)
                           2  = (cuda)
                           3  = (DX10)
   [vbvBufferSize]      HRD buffer size. For low latancy it should be less or equal to single frame size
   [vbvInitialDelay]    Initial HRD bufffer Fullness
   [fieldMode]          Field Encoding Mode (0=Frame, 1=Field)
   [level])             Codec Level value 
   [inFile])            InputClip 
   [enablePtd])         if set picture type decision will be taken by EncodeAPI 
   [reconfigFile]       Reconfiguration will occur after the frameNum mentioned in reconfig file with specified parameter in reconfig file