[lsb-discuss] LSB Build Environment and DT_NEEDED entries resulting from pkg-config

Daniel Yek dyek at real.com
Thu Jan 4 23:07:35 PST 2007


Resending...(It is weird that I didn't receive a copy.) I received no 
response at all so far, so I hope someone will reply to me.

I have figured out that "e_type 3" means Shared object file (ET_DYN).

Wouldn't it be risky to change ld-linux.so to ld-lsb.so, especially that 
seems to make the executable not loadable at all if the system doesn't have 
ld-lsb.so?


-- 
Daniel Yek


At 09:00 PM 12/27/2006, Daniel Yek wrote:
>Hi,
>
>I'm getting closer to LSB 3.1 compliance in Helix and RealPlayer. There 
>are a few more issues remain:
>
>RealPlayer:
>
>Incorrect program interpreter: /lib/ld-linux.so.2
>Header[ 1] PT_INTERP       Failed
>Found wrong intepreter in .interp section: /lib/ld-linux.so.2 instead of: 
>/lib/ld-lsb.so.3
>DT_NEEDED: libXrandr.so.2 is used, but not part of the LSB
>DT_NEEDED: libXinerama.so.1 is used, but not part of the LSB
>DT_NEEDED: libXfixes.so.3 is used, but not part of the LSB
>DT_NEEDED: libXcursor.so.1 is used, but not part of the LSB
>DT_NEEDED: libXft.so.2 is used, but not part of the LSB
>DT_NEEDED: libXrender.so.1 is used, but not part of the LSB
>DT_NEEDED: libpangox-1.0.so.0 is used, but not part of the LSB
>DT_NEEDED: libfreetype.so.6 is used, but not part of the LSB
>Symbol __divdi3 used, but not part of LSB_Modules
>Symbol __moddi3 used, but not part of LSB_Modules
>Checking binary 
>/opt/lsb-buildenv-ia32/home/dyek/source/helix/realplayer_voldemort.lsb2/player/installer/archive/temp/realplay.bin
>
>Plugins:
>
>compareElfhdr: e_type isn't expected value ET_EXEC, found 3 instead
>compareElfhdr: e_type isn't expected value ET_EXEC, found 3 instead
>compareElfhdr: e_type isn't expected value ET_EXEC, found 3 instead
>Symbol __divdi3 used, but not part of LSB_Modules
>Symbol __moddi3 used, but not part of LSB_Modules
>read_FDE_encoded() unexpected encoding 10
>read_FDE_encoded() unexpected encoding 10
>Symbol __divdi3 used, but not part of LSB_Modules
>Symbol __stack_chk_fail used, but not part of LSB_Modules
>Symbol __moddi3 used, but not part of LSB_Modules
>...
>
>
>I have several questions.
>
>How come using LSB Build Environment, I'm getting more DT_NEEDED entries, 
>such as
>libXinerama.so, that I don't get outside of LSB BE? I'm running 
><https://ribosome.helixcommunity.com/>Ribosome in LSB BE and it is 
>configured to use pkg-config in some source directories.
>
>Is there a best practise in removing the DT_NEEDED entries resulting from 
>the extra linker flags produced by pkg-config (while still using 
>pkg-config)? I found "--as-needed" inconsistent in its effectiveness and I 
>still haven't found out why.
>
>Apparently, LSB BE doesn't automatically take care of the program 
>interpreter. Do I have to configure my build process to use the following 
>linker switch while building inside LSB BE?
>-Wl,--dynamic-linker,
>/lib/ld-lsb.so.3
>
>
>Most LSB web site information showed that __divdi3 should be transparently 
>taken cared of, but it is not. Do I have to do anything about it?
>
>
>Any idea what e_type 3 means? Shouldn't most executable be compiled with 
>-fpic or -fPIC and hence not ET_EXEC?
>
>
>What is read_FDE_encoded()?
>
>Thanks.
>
>--
>Daniel Yek




More information about the lsb-discuss mailing list