This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

DM6446出现`GLIBC_2.4' not found



dm6446运行出现`GLIBC_2.4' not found ,是什么原因,和编译器版本有关吗,是不是要换Linux内核的版本

root@192.168.1.127:~# cd /opt/dvevm
root@192.168.1.127:/opt/dvevm# ./loadmodules.sh
cmemk: module license '(c) Texas Instruments' taints kernel.
cmem initialized 3 pools between 0x87800000 and 0x88000000
dsplinkk: no version for "struct_module" found: kernel tainted.
DDR_START 0x8fa00000 DDR_SIZE 0x400000
root@192.168.1.127:/opt/dvevm# ./encodedecode
./encodedecode: /lib/tls/libpthread.so.0: version `GLIBC_2.4' not found (require
d by ./encodedecode)
root@192.168.1.127:/opt/dvevm# ./encode
./encode: /lib/tls/libpthread.so.0: version `GLIBC_2.4' not found (required by .
/encode)
root@192.168.1.127:/opt/dvevm# MGC_HdrcServiceUsbSt

  • David,

    TI官方的DM6446 dvsdk是没有该问题的。请问你修改了什么部分?

  • 是这样的,我用的是合众达的板子,可是他提供的sdk上servers端的编译出错,我解决不了,所以我去TI下了一个dvsdk2_00_00_22,所有的编译都正常,但是原来的合众达sdk上编译器是mv_pro_4.0,Linux内核是Linux2..6.10,而TI官网dvsdk2_00_00_22上的编译器是mv_pro5.0,内核是Linux2.6.18,会不会是这个原因,所以我是不是应该重新在板子上移植一个2.10.18的内核?

    原来合众达的SDK 上servers端编译结果如下,我反复检查过配置文件,不知道问题出在哪里,如果能解决下面的问题,问题会简单很多。

    [root@localhost video_copy]# make
    /home/feng/dvevm_1_00_00_32/xdctools_1_20/xdc XDCPATH="/home/feng/dvevm_1_00_00_32/codec_engine_1_00/examples;/home/feng/dvevm_1_00_00_32/codec_engine_1_00/packages;/home/feng/dvevm_1_00_00_32/xdais_5_00/packages;/home/feng/dvevm_1_00_00_32/dsplink_1_30_07ce/packages;/home/feng/dvevm_1_00_00_32/cmem_1_00/packages;/home/feng/dvevm_1_00_00_32/framework_components_1_00_01/packages;/home/feng/dvevm_1_00_00_32/bios_5_33_03/packages" \
    XDCOPTIONS=v all
    #
    # making package.mak (because of package.bld) ...
    /home/feng/dvevm_1_00_00_32/xdctools_1_20/tconf -DXDC_OM1= -Dxdc.traceEnable= -p /home/feng/dvevm_1_00_00_32/xdctools_1_20/jre -Dxdc.path="/home/feng/dvevm_1_00_00_32/codec_engine_1_00/examples;/home/feng/dvevm_1_00_00_32/codec_engine_1_00/packages;/home/feng/dvevm_1_00_00_32/xdais_5_00/packages;/home/feng/dvevm_1_00_00_32/dsplink_1_30_07ce/packages;/home/feng/dvevm_1_00_00_32/cmem_1_00/packages;/home/feng/dvevm_1_00_00_32/framework_components_1_00_01/packages;/home/feng/dvevm_1_00_00_32/bios_5_33_03/packages;/home/feng/dvevm_1_00_00_32/xdctools_1_20/packages;../.." -Dxdc.root=/home/feng/dvevm_1_00_00_32/xdctools_1_20 -Dxdc.hostOS=Linux -Dconfig.importPath=".;/home/feng/dvevm_1_00_00_32/codec_engine_1_00/examples;/home/feng/dvevm_1_00_00_32/codec_engine_1_00/packages;/home/feng/dvevm_1_00_00_32/xdais_5_00/packages;/home/feng/dvevm_1_00_00_32/dsplink_1_30_07ce/packages;/home/feng/dvevm_1_00_00_32/cmem_1_00/packages;/home/feng/dvevm_1_00_00_32/framework_components_1_00_01/packages;/home/feng/dvevm_1_00_00_32/bios_5_33_03/packages;/home/feng/dvevm_1_00_00_32/xdctools_1_20/packages;../..;/home/feng/dvevm_1_00_00_32/xdctools_1_20;/home/feng/dvevm_1_00_00_32/xdctools_1_20/etc" -Dxdc.bld.targets="" -DTOOLS= /home/feng/dvevm_1_00_00_32/xdctools_1_20/packages/xdc/bld/bld.js /home/feng/dvevm_1_00_00_32/codec_engine_1_00/packages/config.bld package.bld package.mak
    config.bld> Info: Reading user build settings from file /home/feng/dvevm_1_00_00_32/codec_engine_1_00/examples/user.bld
    building for target C64P ...
    #
    # generating interfaces for package servers.video_copy (because package/package.xdc.xml is older than package.xdc) ...
    /home/feng/dvevm_1_00_00_32/xdctools_1_20/jre/bin/java -cp "/home/feng/dvevm_1_00_00_32/xdctools_1_20/iliad.jar:/home/feng/dvevm_1_00_00_32/xdctools_1_20/antlr.jar:/home/feng/dvevm_1_00_00_32/xdctools_1_20/js.jar" -Dxdc.path="/home/feng/dvevm_1_00_00_32/codec_engine_1_00/examples;/home/feng/dvevm_1_00_00_32/codec_engine_1_00/packages;/home/feng/dvevm_1_00_00_32/xdais_5_00/packages;/home/feng/dvevm_1_00_00_32/dsplink_1_30_07ce/packages;/home/feng/dvevm_1_00_00_32/cmem_1_00/packages;/home/feng/dvevm_1_00_00_32/framework_components_1_00_01/packages;/home/feng/dvevm_1_00_00_32/bios_5_33_03/packages;/home/feng/dvevm_1_00_00_32/xdctools_1_20/packages;../.." Iliad.CMD.Build -m package/package.xdc.dep -i package/package.xdc.inc package.xdc
    #
    # configuring video_copy.x64P from package/cfg/video_copy_x64P.cfg ...
    /home/feng/dvevm_1_00_00_32/xdctools_1_20/tconf -DXDC_OM1= -Dxdc.traceEnable= -p /home/feng/dvevm_1_00_00_32/xdctools_1_20/jre -Dxdc.path="/home/feng/dvevm_1_00_00_32/codec_engine_1_00/examples;/home/feng/dvevm_1_00_00_32/codec_engine_1_00/packages;/home/feng/dvevm_1_00_00_32/xdais_5_00/packages;/home/feng/dvevm_1_00_00_32/dsplink_1_30_07ce/packages;/home/feng/dvevm_1_00_00_32/cmem_1_00/packages;/home/feng/dvevm_1_00_00_32/framework_components_1_00_01/packages;/home/feng/dvevm_1_00_00_32/bios_5_33_03/packages;/home/feng/dvevm_1_00_00_32/xdctools_1_20/packages;../.." -Dxdc.root=/home/feng/dvevm_1_00_00_32/xdctools_1_20 -Dxdc.hostOS=Linux -Dconfig.importPath=".;/home/feng/dvevm_1_00_00_32/codec_engine_1_00/examples;/home/feng/dvevm_1_00_00_32/codec_engine_1_00/packages;/home/feng/dvevm_1_00_00_32/xdais_5_00/packages;/home/feng/dvevm_1_00_00_32/dsplink_1_30_07ce/packages;/home/feng/dvevm_1_00_00_32/cmem_1_00/packages;/home/feng/dvevm_1_00_00_32/framework_components_1_00_01/packages;/home/feng/dvevm_1_00_00_32/bios_5_33_03/packages;/home/feng/dvevm_1_00_00_32/xdctools_1_20/packages;../..;/home/feng/dvevm_1_00_00_32/xdctools_1_20;/home/feng/dvevm_1_00_00_32/xdctools_1_20/etc ;/home/feng/dvevm_1_00_00_32/bios_5_33_03/packages/ti/bios/include" -Dxdc.bld.targets="" -DTOOLS= /home/feng/dvevm_1_00_00_32/xdctools_1_20/packages/xdc/cfg/cfg.js package/cfg/video_copy_x64P video_copy.x64P
    video_copy.x64P .cfg> Warning: DSKT2 scratch sizes may be inappropriate for optimal allocation.
    codecs.videnc_copy.close() ...
    ti.sdo.ce.osal.close() ...
    js: "/home/feng/dvevm_1_00_00_32/xdctools_1_20/include/utils.tci", line 649: exception from uncaught JavaScript throw: TypeError: Cannot call method "findPkg" of undefined
    "/home/feng/dvevm_1_00_00_32/xdctools_1_20/packages/xdc/cfg/cfg.js", line 117
    gmake: *** [package/cfg/video_copy_x64Pcfg_c.c] Error 1
    gmake: *** Deleting file `package/cfg/video_copy_x64Pcfg_c.c'
    gmake: *** [package/cfg/video_copy_x64Pcfg_c.c] Deleting file `package/cfg/video_copy_x64Pcfg.cmd'
    gmake: *** [package/cfg/video_copy_x64Pcfg_c.c] Deleting file `package/cfg/video_copy_x64Pcfg.s62'
    make: *** [all] 错误 2
    [root@localhost video_copy]#

  • 你好:

    编译的问题网上有一篇文章的,make + 文件名 有个顺序的。我在做dm368的时候发现dvsdk0402确实有个模块编译不过去。

    你要换kernel这个工作量比较大的,因为你的开发板是那块国外demo变过来的你未必知道,如果只是升级kernel,那么里面很多BSP的东西要按照目前的硬件设计来修改。

    loadmodul。sh失败了导致你后面的程序运行不正常。具体的要看uboot中的bootargs设置。

    希望对你有帮助

  • 你的意思是说运行出现`GLIBC_2.4' not found 的错误与glibc无关,是因为ubootargs的设置不对,那么用DVSDK2_00_00_22上的mv_pro5.0编译器,内核应当为2.6.18,编译出来的程序也是可以在linux2.6.10上正常运行的是吧?

  • David5 说:
    是这样的,我用的是合众达的板子,可是他提供的sdk上servers端的编译出错,我解决不了,所以我去TI下了一个dvsdk2_00_00_22,所有的编译都正常,但是原来的合众达sdk上编译器是mv_pro_4.0,Linux内核是Linux2..6.10,而TI官网dvsdk2_00_00_22上的编译器是mv_pro5.0,内核是Linux2.6.18,会不会是这个原因,所以我是不是应该重新在板子上移植一个2.10.18的内核?

    不同版本的编译器使用的glibc版本也可能不同。建议所有的软件是在同一个编译器下编译出来的。

  • 是的,我想问的是不同版本编译出的程序是否都能在Linux2.6.10和llinux2..6.18上运行,还是说这两个linux版本对应着不同的编译器版本,所以出现了`GLIBC_2.4' not found 的这个问题?