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.

hard float libWdrSupport_ti.a libGlbceSupport_ti.a libraries?

Hello,


We're trying to use the linaro 4.7 toolchain to compile the ipnc rdk with armhf so that we can use our debian root filesystem.  Everything compiles ok, but linking fails because of libWdrSupport_ti.a and libGlbceSupport_ti.a libraries.


Is there source code available for these libraries?  If not, can TI provide these libraries compiled with the linaro toolchain with hard float turned on?

Thanks.

  • Hello,

    I will notify the IPNC team to help here.

    Best Regards,

    Margarita

  • Hi

  • Here is the error messages:

    /opt/linaro/gcc-linaro-arm-linux-gnueabihf-4.7-2013.04-20130415_linux/bin/../lib/gcc/arm-linux-gnueabihf/4.7.3/../../../../arm-linux-gnueabihf/bin/ld: error: /home/david/build/8039/1.0.7/brown/products/grange/vidsrv/src/build/ipnc_rdk/../ipnc_rdk/ipnc_mcfw/bin/ti814x/bin//algoApp.out uses VFP register arguments, /home/david/build/8039/1.0.7/brown/products/grange/vidsrv/src/build/ipnc_rdk/../ipnc_rdk/ipnc_mcfw/mcfw/src_linux/links/alg/glbce/lib/libGlbceSupport_ti.a(TI_glbce.o) does not

    ...

    /opt/linaro/gcc-linaro-arm-linux-gnueabihf-4.7-2013.04-20130415_linux/bin/../lib/gcc/arm-linux-gnueabihf/4.7.3/../../../../arm-linux-gnueabihf/bin/ld: error: /home/david/build/8039/1.0.7/brown/products/grange/vidsrv/src/build/ipnc_rdk/../ipnc_rdk/ipnc_mcfw/bin/ti814x/bin//algoApp.out uses VFP register arguments, /home/david/build/8039/1.0.7/brown/products/grange/vidsrv/src/build/ipnc_rdk/../ipnc_rdk/ipnc_mcfw/mcfw/src_linux/links/alg/wdr/lib/libWdrSupport_ti.a(TI_glbce.o) does not

    ...

  • I'm having the same error while trying to compile our code with a newer toolchain that has NEON hard floating points enabled. Anything you can do to help here would be greatly appreciated!

    Thanks,
    -Shawn
  • Hello,

    If you want to build the uImage (kernel) and modules, for DM81xx devices only software floating point toolchain is available:

    http://processors.wiki.ti.com/index.php/TI81XX_PSP_User_Guide#Toolchain

    If you want to build a debian package for the kernel (.deb file), armhf should be working. Note that Linaro armhf is supported for newer devices like Sitara, DRA7, OMAP5

    See also if the below links would be in help:

    http://omappedia.org/wiki/Ubuntu_kernel_for_OMAP4
    https://launchpad.net/linaro-toolchain-binaries

    BR
    Pavel
  • Pavel,

    Thanks for the reply.  DM81xx has a normal ARM Cortex-A8 core with the capacity to do hard float.  We need this capacity for some algorithm running on our products and we have tested everything else with no any issue.  We do not need TI to support the toolchain as we've done it by ourselves.  What we ask is just to recompile the two binary static libraries, or release the source code so we can recompile.

    Regards,

    David

  • Pavel,

    We are in the same situation as David.  We have the rest of our code base working with a compiler that supports hard floating points and we need to use hard floating for our application.  Any help would be greatly appreciated.

    Thanks!

    -Shawn

  • David,

    David Liu1 said:
    What we ask is just to recompile the two binary static libraries, or release the source code so we can recompile.

    I would suggest you to check in our C/C++ compiler forum, if the team there have something to share.

    BR
    Pavel

  • It might be possible to add some gcc options to bypass the link error for the stock application, but it won't help if we need to link other library compiled with different FP option, or run the executable on binary distro like debian armhf.

    We had the same issue on other modules, like cmem, and fixed them by recompiling the source code. It probably takes only a few minutes to compile the code for the 20+ C files in the two libraries. I can submit a Makefile if it helps.

    By the way, the new compiler can even detect some out of array boundary issues in mcfw_api files, which are ignored by old arago toolchain. There is really no harm but benefits to compile the source code with a different toolchain.