Home Help Center

Linking problem with PowerTV OS

I am currently working on a PowerTV (PTV) project to integrated ICE. This particular project will be an embedded Linux (Fedora Core 3) application residing on cable settop boxes. The problem is the PowerTV application is using the GCC compiler option -fleading-underscore. Therefore, all symbols including mangle c++ symbols will contain this leading-underscore. I have modified the PTV makefiles to externally link the IceE.so library.

When attempting to link my new PTV module which invokes ICE classes/functions, the linker fails with undefined references. All of the ICE mangle c++ symbols have this additional leading underscore.

Are there any workarounds to this issue? Is it possible to change the ICE compiler option to include leading-underscore?

Thanks,
Tom

Comments

  • bernardbernard Jupiter, FLAdministrators, ZeroC Staff Bernard NormierOrganization: ZeroC, Inc.Project: Ice ZeroC Staff
    Hi Tom,

    I recommend to add this compiler option to the IceE build system and rebuild IceE to see if this solves your problem.

    It's quite easy: download the Ice-E source distribribution, and then in <icee home>/config/Make.rules.Linux, change:
    CXXFLAGS = $(CXXARCHFLAGS) -ftemplate-depth-128 -Wall -D_REENTRANT

    to
    CXXFLAGS = -fleading-underscore $(CXXARCHFLAGS) -ftemplate-depth-128 -Wall -D_REENTRANT

    And then follow the build instructions in INSTALL.LINUX.

    Let us know how it goes!

    Best regards,
    Bernard
  • dimarztdimarzt Member
    Hi Bernard,

    I've made your suggested changes to the Make.rules.Linux file and built the IceE.so library. Upon linking with my PTV app, I received numerous linking errors (undefined references) with pthreads, std, vtable, class type info, standard system calls etc. symbols.

    I've also tried building your simple Hello app within the IceE-1.0.0 directory and it received alot of undefined references as well. I can email my linker output if needed.

    Thanks,
    Tom
  • marcmarc FloridaAdministrators, ZeroC Staff Marc LaukienOrganization: ZeroC, Inc.Project: The Internet Communications Engine ZeroC Staff
    Hi Thomas,

    I'm afraid helping you to port Ice-E to a new embedded platform is out of the scope of the free support we can give here on this forum. However, we can help you to port Ice-E to your platform as consulting service. If you are interested, please contact us at [email protected].

    -- Marc
Sign In or Register to comment.