unknown symbol

Hi all,

I have problem with my shared library. Whenever I try to load it, the loader
keeps
complaining about “unknown symbol: terminate_3stdv”. I have no idea where
this
coming from. Any idea on how to resolve this?

Thanks a lot.
kc

You need to link against the C++ lib to get this symbol.

Cheers,

Colin

kc <kc@netnobound.com> wrote:

Hi all,

I have problem with my shared library. Whenever I try to load it, the loader
keeps
complaining about “unknown symbol: terminate_3stdv”. I have no idea where
this
coming from. Any idea on how to resolve this?

Thanks a lot.
kc


cburgess@qnx.com

It seems working now. Thanks again.

kc

“Colin Burgess” <cburgess@qnx.com> wrote in message
news:aan4n0$4io$4@nntp.qnx.com

You need to link against the C++ lib to get this symbol.

Cheers,

Colin

kc <> kc@netnobound.com> > wrote:
Hi all,

I have problem with my shared library. Whenever I try to load it, the
loader
keeps
complaining about “unknown symbol: terminate_3stdv”. I have no idea
where
this
coming from. Any idea on how to resolve this?

Thanks a lot.
kc



\

cburgess@qnx.com

Hi Colin,

Since we are in shared library topic, I would like to ask you one more
question if you dont
mind. When I link the shared library with other libraries that arent built
with -fPIC flag, I will
get “segmentation fault” if I load the shared library with dlopen. Am I
missing something when
I link the libraries?

Thanks in advance
kc

“Colin Burgess” <cburgess@qnx.com> wrote in message
news:aan4n0$4io$4@nntp.qnx.com

You need to link against the C++ lib to get this symbol.

Cheers,

Colin

kc <> kc@netnobound.com> > wrote:
Hi all,

I have problem with my shared library. Whenever I try to load it, the
loader
keeps
complaining about “unknown symbol: terminate_3stdv”. I have no idea
where
this
coming from. Any idea on how to resolve this?

Thanks a lot.
kc



\

cburgess@qnx.com

I should put this in the FAQ - Is Camz reading this??! ;v)

If you link non-PIC code into a shared object, then the linker will
generate relocations against the text and/or rodata sections. Since these
are shared between apps they are marked read-only, and thus if you try
and load the shared lib then the application of these relocations causes
a SEGSEGV fault.

This will work in Linux, since they have COW (Copy On Write) and they use
that to share the lib UNLESS someone writes to these sections in which
case a new private copy of the page is generated.

kc <kc@netnobound.com> wrote:

Hi Colin,

Since we are in shared library topic, I would like to ask you one more
question if you dont
mind. When I link the shared library with other libraries that arent built
with -fPIC flag, I will
get “segmentation fault” if I load the shared library with dlopen. Am I
missing something when
I link the libraries?

Thanks in advance
kc

“Colin Burgess” <> cburgess@qnx.com> > wrote in message
news:aan4n0$4io$> 4@nntp.qnx.com> …
You need to link against the C++ lib to get this symbol.

Cheers,

Colin

kc <> kc@netnobound.com> > wrote:
Hi all,

I have problem with my shared library. Whenever I try to load it, the
loader
keeps
complaining about “unknown symbol: terminate_3stdv”. I have no idea
where
this
coming from. Any idea on how to resolve this?

Thanks a lot.
kc



\

cburgess@qnx.com


cburgess@qnx.com

Hi Colin,

I see now.

However, sometimes, you dont always have control of the libraries
(e.g. third party) your shared library is going to link with. In this case,
am I out of luck? Or, is there any way to tell the linker to get around
this?

Thanks a lot.
kc

PS. where is the FAQ you have mentioned about ? I would like to check
it out.

“Colin Burgess” <cburgess@qnx.com> wrote in message
news:aapvpc$aqn$3@nntp.qnx.com

I should put this in the FAQ - Is Camz reading this??! ;v)

If you link non-PIC code into a shared object, then the linker will
generate relocations against the text and/or rodata sections. Since these
are shared between apps they are marked read-only, and thus if you try
and load the shared lib then the application of these relocations causes
a SEGSEGV fault.

This will work in Linux, since they have COW (Copy On Write) and they use
that to share the lib UNLESS someone writes to these sections in which
case a new private copy of the page is generated.

kc <> kc@netnobound.com> > wrote:
Hi Colin,

Since we are in shared library topic, I would like to ask you one more
question if you dont
mind. When I link the shared library with other libraries that arent
built
with -fPIC flag, I will
get “segmentation fault” if I load the shared library with dlopen. Am I
missing something when
I link the libraries?

Thanks in advance
kc

“Colin Burgess” <> cburgess@qnx.com> > wrote in message
news:aan4n0$4io$> 4@nntp.qnx.com> …
You need to link against the C++ lib to get this symbol.

Cheers,

Colin

kc <> kc@netnobound.com> > wrote:
Hi all,

I have problem with my shared library. Whenever I try to load it, the
loader
keeps
complaining about “unknown symbol: terminate_3stdv”. I have no idea
where
this
coming from. Any idea on how to resolve this?

Thanks a lot.
kc



\

cburgess@qnx.com



\

cburgess@qnx.com

However, sometimes, you dont always have control of the libraries
(e.g. third party) your shared library is going to link with. In this case,
am I out of luck? Or, is there any way to tell the linker to get around
this?

Unfortunately no. But third party vendors should supply PIC versions of
their lib as well. Contact their sales and support people! ;v)

Or you could link it into the main lib?

PS. where is the FAQ you have mentioned about ? I would like to check
it out.

Oh, it was on Martin Zimmerman’s site, I think. You can probably
find it via www.qnxzone.org


cburgess@qnx.com

Ok. I suppose I will learn to live with that. :slight_smile:

Besides linking with non PIC version of libraries, is there any case when
loading a shared library that causes a SEGSEGV fault?
Currently, I have a shared library that is still giving me segmentation
fault
problem. It dosent have .text section, but it does contain .rodata section.
I suspect it is the cause. Am I right? If I am, how to get out from this
mess? If not, whatelse should I look for?

Sigh… sometimes, it is hard to build the shared library right…

Thanks again.
kc

“Colin Burgess” <cburgess@qnx.com> wrote in message
news:aasaoq$6k2$2@nntp.qnx.com

However, sometimes, you dont always have control of the libraries
(e.g. third party) your shared library is going to link with. In this
case,
am I out of luck? Or, is there any way to tell the linker to get around
this?

Unfortunately no. But third party vendors should supply PIC versions of
their lib as well. Contact their sales and support people! ;v)

Or you could link it into the main lib?

PS. where is the FAQ you have mentioned about ? I would like to check
it out.

Oh, it was on Martin Zimmerman’s site, I think. You can probably
find it via > www.qnxzone.org


cburgess@qnx.com

Does it have a rel.rodata section?

kc <kc@netnobound.com> wrote:

Ok. I suppose I will learn to live with that. > :slight_smile:

Besides linking with non PIC version of libraries, is there any case when
loading a shared library that causes a SEGSEGV fault?
Currently, I have a shared library that is still giving me segmentation
fault
problem. It dosent have .text section, but it does contain .rodata section.
I suspect it is the cause. Am I right? If I am, how to get out from this
mess? If not, whatelse should I look for?

Sigh… sometimes, it is hard to build the shared library right…

Thanks again.
kc

“Colin Burgess” <> cburgess@qnx.com> > wrote in message
news:aasaoq$6k2$> 2@nntp.qnx.com> …
However, sometimes, you dont always have control of the libraries
(e.g. third party) your shared library is going to link with. In this
case,
am I out of luck? Or, is there any way to tell the linker to get around
this?

Unfortunately no. But third party vendors should supply PIC versions of
their lib as well. Contact their sales and support people! ;v)

Or you could link it into the main lib?

PS. where is the FAQ you have mentioned about ? I would like to check
it out.

Oh, it was on Martin Zimmerman’s site, I think. You can probably
find it via > www.qnxzone.org


cburgess@qnx.com


cburgess@qnx.com

Yes, it does have rel.rodata section. I kind of manage to narrow it down
to one particular routine. Strange. When I comment out that routine and
recompile, the rel.rodata section is gone. As soon as I remove the comments
and recompile, rel.rodata section comes back again. I am totally lost.
As far as I understand, rel.rodata section holds read-only data that
typically
contribute to a non-writable segment in the process image.

Any suggestion or idea is greatly appreciated.


“Colin Burgess” <cburgess@qnx.com> wrote in message
news:ab8a1r$6e5$1@nntp.qnx.com

Does it have a rel.rodata section?

kc <> kc@netnobound.com> > wrote:
Ok. I suppose I will learn to live with that. > :slight_smile:

Besides linking with non PIC version of libraries, is there any case
when
loading a shared library that causes a SEGSEGV fault?
Currently, I have a shared library that is still giving me segmentation
fault
problem. It dosent have .text section, but it does contain .rodata
section.
I suspect it is the cause. Am I right? If I am, how to get out from this
mess? If not, whatelse should I look for?

Sigh… sometimes, it is hard to build the shared library right…

Thanks again.
kc

“Colin Burgess” <> cburgess@qnx.com> > wrote in message
news:aasaoq$6k2$> 2@nntp.qnx.com> …
However, sometimes, you dont always have control of the libraries
(e.g. third party) your shared library is going to link with. In this
case,
am I out of luck? Or, is there any way to tell the linker to get
around
this?

Unfortunately no. But third party vendors should supply PIC versions
of
their lib as well. Contact their sales and support people! ;v)

Or you could link it into the main lib?

PS. where is the FAQ you have mentioned about ? I would like to check
it out.

Oh, it was on Martin Zimmerman’s site, I think. You can probably
find it via > www.qnxzone.org


cburgess@qnx.com



\

cburgess@qnx.com

Here are some information from the “readelf -r” of the shared library.

Relocation section ‘.rel.rodata’ at offset 0x7f58 contains 8 entries:
Offset Info Type Symbol’s Value Symbol’s Name
0003c957 00008 R_386_RELATIVE
0003c973 00008 R_386_RELATIVE
0003c97f 00008 R_386_RELATIVE
0003c99b 00008 R_386_RELATIVE
0003c9a7 00008 R_386_RELATIVE
0003c9c3 00008 R_386_RELATIVE
0003c9cf 00008 R_386_RELATIVE
0003c9eb 00008 R_386_RELATIVE

How do I figure out what and where are those read-only data?

Thank a lot.
kc

“Colin Burgess” <cburgess@qnx.com> wrote in message
news:ab8a1r$6e5$1@nntp.qnx.com

Does it have a rel.rodata section?

kc <> kc@netnobound.com> > wrote:
Ok. I suppose I will learn to live with that. > :slight_smile:

Besides linking with non PIC version of libraries, is there any case
when
loading a shared library that causes a SEGSEGV fault?
Currently, I have a shared library that is still giving me segmentation
fault
problem. It dosent have .text section, but it does contain .rodata
section.
I suspect it is the cause. Am I right? If I am, how to get out from this
mess? If not, whatelse should I look for?

Sigh… sometimes, it is hard to build the shared library right…

Thanks again.
kc

“Colin Burgess” <> cburgess@qnx.com> > wrote in message
news:aasaoq$6k2$> 2@nntp.qnx.com> …
However, sometimes, you dont always have control of the libraries
(e.g. third party) your shared library is going to link with. In this
case,
am I out of luck? Or, is there any way to tell the linker to get
around
this?

Unfortunately no. But third party vendors should supply PIC versions
of
their lib as well. Contact their sales and support people! ;v)

Or you could link it into the main lib?

PS. where is the FAQ you have mentioned about ? I would like to check
it out.

Oh, it was on Martin Zimmerman’s site, I think. You can probably
find it via > www.qnxzone.org


cburgess@qnx.com



\

cburgess@qnx.com

Well, this will definately crash in a shared lib. But this sort
of thing is caused by not compiling PIC. If you are compiling this object PIC
and you still get these, can you send me the preprocessed source file (use -P)
and the command line you use to compile/link your shared object?

kc <kc@netnobound.com> wrote:

Here are some information from the “readelf -r” of the shared library.

Relocation section ‘.rel.rodata’ at offset 0x7f58 contains 8 entries:
Offset Info Type Symbol’s Value Symbol’s Name
0003c957 00008 R_386_RELATIVE
0003c973 00008 R_386_RELATIVE
0003c97f 00008 R_386_RELATIVE
0003c99b 00008 R_386_RELATIVE
0003c9a7 00008 R_386_RELATIVE
0003c9c3 00008 R_386_RELATIVE
0003c9cf 00008 R_386_RELATIVE
0003c9eb 00008 R_386_RELATIVE

How do I figure out what and where are those read-only data?

Thank a lot.
kc

“Colin Burgess” <> cburgess@qnx.com> > wrote in message
news:ab8a1r$6e5$> 1@nntp.qnx.com> …
Does it have a rel.rodata section?

kc <> kc@netnobound.com> > wrote:
Ok. I suppose I will learn to live with that. > :slight_smile:

Besides linking with non PIC version of libraries, is there any case
when
loading a shared library that causes a SEGSEGV fault?
Currently, I have a shared library that is still giving me segmentation
fault
problem. It dosent have .text section, but it does contain .rodata
section.
I suspect it is the cause. Am I right? If I am, how to get out from this
mess? If not, whatelse should I look for?

Sigh… sometimes, it is hard to build the shared library right…

Thanks again.
kc

“Colin Burgess” <> cburgess@qnx.com> > wrote in message
news:aasaoq$6k2$> 2@nntp.qnx.com> …
However, sometimes, you dont always have control of the libraries
(e.g. third party) your shared library is going to link with. In this
case,
am I out of luck? Or, is there any way to tell the linker to get
around
this?

Unfortunately no. But third party vendors should supply PIC versions
of
their lib as well. Contact their sales and support people! ;v)

Or you could link it into the main lib?

PS. where is the FAQ you have mentioned about ? I would like to check
it out.

Oh, it was on Martin Zimmerman’s site, I think. You can probably
find it via > www.qnxzone.org


cburgess@qnx.com



\

cburgess@qnx.com


cburgess@qnx.com

“Colin Burgess” <cburgess@qnx.com> wrote in message
news:aapvpc$aqn$3@nntp.qnx.com

I should put this in the FAQ - Is Camz reading this??! ;v)

If you link non-PIC code into a shared object, then the linker will
generate relocations against the text and/or rodata sections. Since these
are shared between apps they are marked read-only, and thus if you try
and load the shared lib then the application of these relocations causes
a SEGSEGV fault.

This will work in Linux, since they have COW (Copy On Write) and they use
that to share the lib UNLESS someone writes to these sections in which
case a new private copy of the page is generated.

I get this kind of problem lot of times. Can’t fix it.

Just a simple example - I’m trying to get libpng working as shared library(v
3.1.2.1).
All code that link into shared library built with -fPIC. As compiler I tried
to use qcc -V gcc_ntox86, gcc.
But ‘make test’ fails on shared executable with SIGSEGV fault as decribed
above.

Attached files is makefile and readelf -r output for library.

Regards, Sergey Sobolev

P.S. The same is on 6.2.



begin 666 out.zip
M4$L#!!0(`("9KBR&&UJE-A0``/=V```&`"0`<F4N;&]G"@`@```````! M`!@``*#^L5G[P0%2[9] 6OO!`13MEQI8^\$!K5S+LMPVDMW[*VKG70<`@B0P M.\E6VYJ1'R%K.F96%2 >][)5KZCBU:._O@M9) &0O$G,!,L1DFS!YP('B43F MR43]\-$>SEIU[?FTNUD-O__XMZL]_*VSW[H?=ZK;G9V[V6Y'OA6NT3M]/G6J M/=UVM!8[>^JNK;W]QP^[W1^/4??/^Y,[[W:?OE_L+OK\]?W8G \_WG;_4(<7 M&_W[[^IH[_\_(825VFCX$Q&[C_M"5/N/[SZ\^?3^'^]ZD'&<=5GCK!%YXVR3 M-\ZQG'$5I5GKJ"C+6D=%BRISG,D:5\@L7JI"9?%2%4T>+T4C\\9IDC6N*O+6 M4?&\=51EWCJJ,F\=596YCJK.'&=SQM5$YHVC+&N]-6VR^*NIR5J'H'GG5U!7 M9H[+FI]@)&N]]W%9^RL8RSJ7@A4T;QPG>>,,O_]).4+[<07;)1\_RC(K=KO] M&]VU7^QOZO8Y'1*P5-[/M/<U4"K1GVF,]RS[#V]_4M?K]]D/#5C^W J]@J7( M'>O7MS\=K+J^C@5[+_!Y6>9O@OU?SZWK/MKC;O(9L KF_39C*UAZQ'I[N;R* M!3Y[(ZRRV!#+;(<E\NRZ<'RS_2Y<GKUR0C<[(YR(S6R,4[;9.>)4;K:7G,GM MUKBAC?$Z*Y82W)+M]MOF^75NS79[N>$9*0G?;"]+B+&VV<N2L^VP2K<=5K7= M.2K%=GZ_E&0[+)47<Y4V+T8J;5;L+:K,6*HJ\GYN5<C-SEP%\=8V9ZZJ\WQ& MI7+'Y?F]2F?E?*+F63F!J$N>.2YO?G559([+N]?K.L^.:Y&Y7IFYCLS]J)N\ MF*AN,M>A\\Y/;?)RH-IESL_EV94@>;R()L_NA2YW6]U=PFR7&\BRW"R^D-5V M\9'T,<A6\W+U9O-2I-P.BVYWIRKA[54T:WR1A*]W)[.$)?/TCB93)VB*[6R_ MX=O9?J.KS6RL@?MJHWG9[6+3!K3=C>;EMM,1M"BS;$?KO'&FW&XOC<V[LRW+ MN\,LZ(S;S,WE:;G"B=QQ>?&N4WGQCLO3S(7+T\*%,[GC\NS$V<QUV+PXP;FL M>$<2FC4_27B63[V/RXI/),G3X"7)B_,E$5EQM"0R=US6&9)$9:XC+TZ51&?9 M@20F;WXT<S]HWOF]C\N*>R6M,O'J/%Y\_3-KG,BS%T;%5KY/,I9WAMAV>K=D MQ68:J61\,SU&LG)#K"IOS^__9([+Q%-9/E86),^7%'0S?5 6;+,X7Q9Y=3+Y MJ%]O<U:*O%JI+-1FL:8LFLWR&5GHS>)669C-ZDRRL!MBN>VP>%X-6'*69Q<\ MKP=!\B;O'N5Y<;SD>;&W+#/76^;EJ/=Q>?=WR?/.<B-6\%YO43*J4VF+$B]Y MU*+$MFY0,D9E;;:17C+^_RWJZ3QIN^)E&:VIJ+=>E*509;C_6O63_>7#'V_W M/[_Y-*#XA936+_UR>MK_RUUM\D.BA5L*52S&,*S,DVIIX[$XCB6UCXO]O+J/ MO_\UA0I88&7<K*R1DGZ-ZG XZU>P&+F/(B5?6:-)%22V/"^XR2JULD;.'_-Z M_^[WGR>SBM?H^:KQ>4GHL?-8%W6[[;_?.G7MEKCW?-7-"I:O\WJLY_=_?7I] M7E#!%60%2_%H7I-I1?;51YDKW&?<=G>L7@G$L7*40$NA^BPIOD;#8^[-[;(_ M1G%)L D_+ZG7N._/X].;W][LII^PCQ IK9TA7QOR6,U__8+8%S@_)5:PO%[E ML6Y_?D!L`JHIRJYAD1[K[7L$RY%'-+BRCQG1H*6@HC1K?'D-`.;UTYL/TVE% M^^C/H\9M56K>^Z\_/WQZA_#EL<R*?6F?XWJL]J>?_GP=2P-6O>97>YOXUZ?_ MZ5['LH"ULH^F()'='R?L!__E[<NN^8E"];[PUY\_(O,"+/QL%](-\WJY/>]= M>SCLFQ?G['5B$Q[+K?E5V?NO[OUOR#YZU8"2-7^O8[[:DW[E;!./M>HGB@>6 M_O7C;Z_/RY\T2M?.HQ/QW3&96+"O^W^F;(TOK[,`%GJ&?"!%&7IO>S_1V\3M MXR]O$;OW6,4JENOW\1UF][7'XJBMPL??0YVQU^L,*K(O?L<J5WU.T_/UZ__> MD'EYK&KMWB[Z-;Z/_F;A#/E]K%;LR]#XWO[:FNYYD7MO]V)MC55_/Y[__G=D MC3Z"H0+W]U(S\L ZM(W_[8N-MP`)P"^':0!>"1XE%07?/JWP[!!:D;I?T7_^ M]V]_[O_Z\,>GL")20U(!5FZ[^8T8L/S-2@6&Q1@;/+*QM^YZ_KZ___JBNRF6 MZ3,#;%YYF<$=R]\45&%85!>TMP!SWE^M,N"4QYT+6,!7@\[K<?KNZ]*7[]-) M)5C E\'Y*HN(^Z,][MUI"0NB0&K1>4D^>/<G=!_A9F4$Q:K<$ 7Z>7D/OW?M M-U^1F6"!=L4S^#+6'50WV\48"S1CW%9=/>SCUVO;V6D\,F)!Y,906R7*F7Z- MS^ID#G;BY ,6\(7:*F-EW7-OK]?SS"<'+. +M]62EKWG`T/M#]("%O"E42Q2 MN1Y+/UO]>?_9?O]ZOIHIEH7,DZ&V2ERE><S]Y$X,6,"7PWT.D9%]S3*-@.7Y M*E!;9:P2/=97=3VUIZ?=*UB>KX*B\S)%'7/OVE-[>]Y?SU\G6#Z?)T6)8MEQ MC>;LW6![29Q.P/)\%;C=2S?XB=Y6TR U8 %?-8XE38^EKWINKP$+^$+MG@JF MHGU\+%(=+L]J@L6 +]SNB36I?:7Q6\ "OE ?S9@>; (B<-C,6_LTQP*^T#-$ MI& Z^-67]M3M?=O0' OX0GTTXS(YVWUZ,!K9B%4`7_@9LM8EOG"2MP0L4+O0 M,T2)5 GWDQ@U8'F^..[OA6RB>^B^K.9[9V\+6*"<X6>HUEH'^_)/1W>[I7E! MORU'SQ!CO.C7Z,.)O;%.O1RZ!2S@"[T[J&!#5A;L/C**@ 5\X7&.88.M/GRT M?GXY?=Z?U-%.L'JE$8^9<I1&8TOBL59\-"TF/GHQ!K#0UUOB\805)+&OQQKM M('D%+,]7B?MHIR=8:?X9L#Q?99$1F[2GE=C$PGO+$O?1I6$#7^W37A\OKV$! M7[B/-J:)[#Z)55,LX N/3<J*QFK$L_IBPXT68P%?J(]FC Y*H[Y:Y9TTA/=[ M-L&J@2_<5FU5#WSY*7F_&I??`A;PA?M56@QWASGO+THOJW!W+%#%<?MZV,31 M'O'XWH+Z7.'V58FZYZL]N?.KL9SU*@FI4%_(N"[)]$Z+_'3 \GQ5J*U22H=X MHK]KO2R^$.> <E:AMLI(Q?M];%[:@]D_J>-1[3O5'&R*!7SA,;DQ(O(Y[:FS MUX/2]A'UM*<1"RI+%1Z;5#4CB:T.2WU8;, "OM!X@A+5)#YGHET&+. +CR<< M'_S$`VNBSP8LX L_0[VM+OGZ! O*AA6>/U;:1'?:3+$/6% -POU]GR.W3X?S MZ>F?4U<887F^:O0,T4J:A*_VU(X.)\&"RA)ZAF@C2? 3+Z>;K^0LS<M',*1> ML7L>89FV>[;+<314&^L5W42H,0;P-^,DDPE8P-=*/.&&ZH;/.[ZJRVZW/"_@ M:R47%2XZCX^<Z+2 !;VD-6JKE/ ZB5<G%A:P@"_<5HTAT?WH'7Z2]P4LX N- M<V@QGD=8'YA7L80%53WT[F!E:69W[1CE1%B@?PG<[G5CPSY>GYI]=]X_7=7W M&9;G2^ QN5-U<H8FZE# \GP)U";ZL^W<X;["W?P3L( O_-YF?.#K:(\@-?D0 M>([UJ(+B.H"L9+R/KCUT]KIPIX'^)?%[NRYMI,O-5.. Y?F2*/>4&978_6-B MUO13"UB>+[F2#[$F\M&S2M6(!?J7Q.-5(QB/^)J$`!$6\(7'F+R1J=V#2#%& M)P$+^%K1F429\#6I]P8LX&OE3FN&>+6?DKKM7TZ?3^>OIQC+@?XE<3]!&S;9 MQ]-@92D6?(<&OH^"Q''.K,,D8'F^%)XK)#G,>^^]7L'R?"D\9M+"!,W*.QOO M=*Y/S10+]"^5XR=NW;4[F]W\$[" +UQSUTRD^E=:K I8P->*GE,/N?NHYRSE M'0[T+X7;JN(\U9#31IH1"_2O)B=F<I?K?49N-_L$+,]7@^<PFHC4[M-&FH#E M^6I07\@X*V,M[7(]:WN[C9XB8'F^FC5M:+![S_T7=6C-XAI!_VI6_!>H/J,& M\U4ETF.$!7SAL1QCXSV$Z28.]*]F11-U+O+1T<7]D$\"%O"%^Z^Z8A'6K*(] M8H'^I?'[D6JKQ[,]A-)?[+5[T!:P/%\:OQ\5G]1.4@D_8'F^-'X_-H3QM#;7 M7=7IYL[7HR^C!BS/EU[13;2)_&KS-*G$C%B@?VD\%]5-DZXQ;< (6, 7KIMP M2OHU#L?'5\CWOM$TQ0*^<%]HQGT<[/Z5-0)?.?FCONIIX_,$"_0O@VO(95.1 M-$]SYWUCW?D*.6[ \GP9W.<4AJ5:QZWS,$,33<#R?!E<-V&4B@7-:KY&SY?! M?8XH>,1]'TD\<K9;C 7ZE\$UY,H424P>:7+)O$#_,OA=:SD/N<+,[",LX O7 M.AKK2'H>$]\:L( O_*XU)M:0?9Z6V.N(!?J7P6VU(BK6TE[+TQSH7P:/Y1QS MP1>"8+7;+?'UZ!Q#[UI:VG)F]XM8GB_+<%MMAAQF\!.W\]'._03H7Q;WT8V< M^J\DS Q8GB^;4\._I!:ZA 5\X;&O*U,=8-(K%+" KY7>%1'7AV:=CB,6Z%\V M)X[N^Q1\',WVRUC UXH&8^LH-NFOV>/Y=)YB`5\K9[L:^CI )Y\6( ,6\(77 M1?,Z$XT#_<OB9UO1,HW)4_H#%O"%GVWCK$CT^_1:"UC %ZXIE,50.XEST3'K M"UC %^XG*I766"=.9\0"_<OEQ/=]GO;1]MU="UB>+Y=;HYAIJRF6Y\NA/H>* ML8[L;=5^NZBE3O0[EN?+X?<VK4CPJU-U-<("_<OA]W993C2%+XEO#5C %^XG MDK.-</_HR,7C0EOQV7DLYGJT`_W+X7Y"CQIR;Z:IU#1B@?[E\!BS,)6>UH<B MWQJP@"\\QFS&>[N?5RK6!BS@"_<3?5[KY[-;^ 0LX O/AVS=D'D=>;@>`Q;H M7PX_V\KP6"\<DX[>R *6[WPE>.Q+2<63_HFT5SM@"8^%GVU;&3U;XQ*6]E@Y M]>V'MKJ;?X;.5QA%R4H_4UTLU/#'!S4!"_C"SZ.6/+T[TF:?@ 5\K>7N@UZ8 M]ISV-:* !7SA,3FITIA\\OYHQ*+ %ZX#^"[NB5X8-Y,%+. +KYVXL2YJSG,7 M'6$!7^@9HH]O&'C$T6TWR[@#EN>+XG=:4]#4?Z4-F2.6S^8H7>GK*'7"U^1- M6L#R?%'T3B."QO'7[,50P/)\45R?J J1V+U]A7L&?.&V2FDC)AI,+':,6 7P MM5(SY'6HG>C+]^7:R1T+^,)CS"KTKO3]OKO%-1; %YX_EJJ)N.]M_[2 !7RA M=P?S7Z48UT4GW8HC%@>^5F),*X+.] C)=[LE+,_72G^TMC+U7VE#0,#R?#$\ M?RP*PJ?UQ[D>;>'[9BC#8SFBTSZ^B6(X8OG(G3+\[M#E1$.^+/OH$OC">^^H M4E/M,185`A;PA>=IM8@UA=E+N8 %?.&Q7-WH.$^;OFX;L2K@"X_E^GK'BGYO M(5*@> \X,6-]:)J^3+" KY5>V$)'?8_(O("OE7KM6,L,,684GXQ8\(H)[[6F M1+/$5B=5UH#E^2IPN]>4BU2SBJ7M",OSA?=M,^KXU$>WI^ZJ+NTW>XCGY?G" M^Z-)"14\\%_JH%]\]N&[KF=KA%=R>!\R+:HR[5-(9*8("_C"XVA7I;')I ,_ M8'F^.'YOR[%>Z_O)9V%^P/)\<;SGH2Y<,J])P]R(Y;TOQ?N0*1WCU7@?'PUE M"9;G"^\=)JIFD[<B20-%P *^5OP7C>_'V0OW@ 5\X3& ;(8X^GC\MK^]7"[G MI5?W!%X[XGW(K!SYTN=CTYYLJD@'+. +]SG$F<E[J_@(15C %VZK_6M'WU7[ MS^/%"Z.'\[S7QX(Z3/&>9MK8,LQ+/Y\ON]TB]_ "%N]IIJ4J>JS%5IB Y?G" M>YI946L1^55_D&Z?V\L<R_.5U=/LP.*GDTJP/%]X3S.M=-J[TA[5DUW @A>P M>.\P+:R*XYR7BU&Q6AZP@"\\+BR:,KZ'0(A9>&%-X'7H2A]R.;X[N5J(?H-_ M3K& +SRW:BH3:B<OIVDG\HAE@"_<5KD8XJ_'`4JIC[#@9>Y*GE;5DWP[28D" MEN=KI3]:BF$?O9D^LMK%>7F^*OS>+EP1KW%2`@M87O^B*[W62I9IO)JF,0$+ M^%KQT2K.A_Q+M\<#B#NPAPU8P!?NH[G5L[[M*%T(6, 7?H;JL7^U?Q?@6]R> M[<NUO76MOHU8#OA:T12DG&H*^XLZV*ZSR;Q _UKI':Y%W,\T>TD>L( OW.[K M\?UCGSNFWC5@>;[J%5M58\YG]?EXN?J26@A8QY??H'_5*[D5**=1;I6N,F!Y MONJ<>IHG:]X<G6!YOE9ZFDN1Z)BC&#K#`KYR:F!/QZX]8G<'!?UKI0_9"I[V M\;5/RUC 5^:;ZX,]H?,"OO XFD'70-0/T+<_]IIAP *^5FK2='@[_WA3]AKW MH'_A/<VL4M4LAPGA:H0%?.%OMQXOJ2;UQ] =%;#@VQ/PNZ.6<3_3[)LP`I;G M2^ Z0%';:9P37R C%NA?`L_=DWI:^NU)*9;G2^!:+6%-8JN3CLR !7RMO)$J MACK,HY=L\M(P8 %?N*U6%1]C\L<FNNOY.!CKJ-52T+_P7FLB2-Q+-OLVF8#E M^9*XOFK,<->"34P+?0'+\[72:RUK&[T7G;9C1EB>+[RGF992)/LX.9 C%NA? M\O_0#X#8%^A?<D5?U4.>!O*>3];NL$^W&1;PA>=6W)*%7NLQH@A8P!=N7V;, M.WS?D-*?GZ[GE]E[!4M!_UKIVQ[K?$LW1XP%?*WH3,I&M@JJ[Y*&3$'_PONV M?0M<&A>FCYL#EN=+X9H5ERR.5R>E@-T/_P902P,$% @X)FN+%&F=4,, M!P``TA(```@) !M86ME9FEL90H( ```````08!R2!U:^\$!@GJ'0%K[ MP0%Q`8$:6/O!`:U6>V\:N1;_F_D49Q.D"Q$S;$B3ME1(I4 H6S)4(6EV[W85 M.3-FQLJ,/=<V)>RGOW[,*Y30KK01@6,?G]]Y'_L84O2(5R3!L&(<$O*0T0@8 MA3FAZR>8S"]A0V0,41# 6A#%N[KZ'9 0.'U(,(> A=@YAA'+MIQ$L833MV\O M7/7U&H8TY!@)&),DPGSWT!NW]^NOIS#E.()KAA.V$NK()=.0-"22,"J K2 D M0G+RL-8;@&BHK, =$!BK<P4<99($& @%9;P7.UK7\/9FMO#[,&::K:5 QD14 M[I9N?<-<&&T][[77\WI&"T8\(9A[&NMN>.W/_&D?;F*\XWJN4\'PT L4^-9H M>]#*E/,A"+3"!L1?W$SZ`'<QIB"QD$4H,\Q5X%-$E0/:0TC7B202B4=]0FR% MQ&G'6 UBS76L\S\98Z[,4?^4P2IA2$.Z&2-40L99Q%$JH(6]R.O <G(S>_^1 MI;@-?$VI1B;T&10\H. QXFQ-PU] 98I*_"1!J" %,1;*(;G!RG*3?!6>R\^W M1C5^RC 5Y)OV<30:_$^%T_VBHWI/)7MZ<Z$]WQA#CXP+A J)DN0(LK44>;5Y MJ%-0@IUT; X[1HTB`T97*J495UE[&G19)DU*#*:V^V\EJL4YXELC0VB0K%5F M=)*%,3)A`9(X=([_.Y]]4)]!=RUX5^\F725I]V?^J+Z?HSB%B.=UM2:G.%JL MG>%\-O4'RB3=/N3LS47?.;9[;HH2$E$W82P3@QX4Z]6:!J:\!SWEBBZNJ\7U M9.#>;3B1V-7E3B,![IW))>8NXKI4W3L1HY!MX*MSW'#O4B)T.[HA#A+$D>T7 M]TYR9)L')6H5("%=HS67TN"!=#/.))/;#&N1`JFV>:Q$&<T;PW%*&YW<SZS6 M-]#SWIY[IQUP%V= !#RLHVC[#D)&_V/;CDC3`-<X9=\PN.//_O3^YN/U9#B^ MO_67P\O)_>(3D!5LV1HHQF&]=>36.3ZV.B-,L3)>%Y<*\>AR/IPN!R^@V>W; MY>1>_4Y'H^LQN+-F*T]>6SF-DD2')&^ 1K-E<J8X*CN<)8G-FHW:BJ5$NBN. M4NSF.0$XAF:KB(L2BW*=X\F'V^G@O+):!<H$J*>[^T*7Q[]A>FDO[&C2$^Q, MJWKUYL*.R^Q?BI9.KPE'JJ&+8@[9^B%165VM=*FE2,;FT$OQ+)>HMK4GO(XS M'^<VSSUE0-)Q>:; .VHQMZ:I3[O.J>\F^A)S/X1;BE(2J/7?SU9I@7X_'/P$ M7#&F+(Z2=JZ'OAX*'%$S/_(E#F*F*]U4;RXDGR3HAM$S#20S%]<FWH**]-7P M-]TO9Q[ 'VP-(F;K)-37AX*(T3>LCP<QHI%MH5QB`&>&G/F*/%79/M7++Y-K MM6RV[*&V9ZF9WW8<E<+/PYN/@V;+SM!V.=N4S3L<,]$6'WY;*C!M,M/?`DM+ M1 7!UY(DEI0J!L*2FWSWJ]/09U00\M.$Y0=*0@^ZG*D!2J%-OE)DBE-+8,X9 MMV16@=H;EUEKQ_.Y\5[3?8\-O(P$'E.^>\O;R\O9[Y-EW_:Y%X 2MVS%#2S5 M=QK-UD@7>J! ;*^T=5?,1N"NS#>#YGMHGGB!XZ DZ5<E45Y<)AA8R.+7%1)) MHLY7QO8;M:>"K8CJ@MMK0DUM*6I-_L=0WWE3`3A.X4X_#V+;:2 ./##JBYUF MR]9Y6^V6(H+UJQAX90$ZC82"*U;[>-5>#:5B?X?W97+](I[F[=6_BZP/%MZ- MY_-V&201(XY#V_F"493BSCZ;R\CM,^"KTZA![TRHEZ?0LY5-L:Z<?E%"7DU; M:6]5:%5RJ_/-5C[9VB5<7HA[4-'WH/GAP]CW0X7^S-+=HF^\U[,0CHY*"@!N M\E=O[C-*DJVRA#ZJZ.=/B?Y17=+KYJB'X:S*GT<K&S-_B^YKYGKAN>_)"OZ$ M7\ -50CR:=H&^.N=?G]22!]#PFN<=[ BNU+YI&U_)U0PK%"0[?9R#5>QXY2% M</'J56VW:P6>;Q1S0.$=\JVFOP!_?7Y>V^V^$)#N`Z%=GH*[.G#8M,T^MM-H M!>$SW_]9;[\S_?8S\Z7M.$&"$>T[C9K))[4.J,WO/4@G]?IF:^FI'\<9+T;Z M?ASZ_N+6'TU@]''H3R=+F/G+F^%\#I_\Q9W_X78*\]EHXB\GH)];5Q.X68P7 M\$?OT\R_7#CF"DQ8\-@O0H_<C3+MSR ^._]+14=K:8,(.,FDZ)Z8=K977W$# M-'9K1:\#Y_F5:<GJSM@5L'PC5=[3FCB@0[.-P*9^L1\0V!0"Y9VNB0,"FFT$ MRJ>')@X(:+81B.IOE0,"42%0>Z9HZN5 &;85J1XIECP@9/A6JGHS6?* E.$; MJ=KSRI(O2UF^34SUOK+DRU*6;Z4JOS8_\&M3^;6I_-K\P*]-Y5?M)9?](/!9 M'GFGO(E42O<&0#,#Y_]02P$"&0`4````" " F:XLAAM:I384#W=@!@
M" <F4N;&]G4$L!AD% @`X)FN+%&F=4,,!P`` MTA(```@````````````@?A0&UA:V5F:6QE4$L%!@`````"(:@`` '-0;````````
`
end

If that’s the readelf -r for the lib there is is a bunch of non-pic code
in there.

But the makefile does look like it’s ok.

Is it building a shared zlib?

Sergey Sobolev <ssobolev@volgasoft.net> wrote:

“Colin Burgess” <> cburgess@qnx.com> > wrote in message
news:aapvpc$aqn$> 3@nntp.qnx.com> …
I should put this in the FAQ - Is Camz reading this??! ;v)

If you link non-PIC code into a shared object, then the linker will
generate relocations against the text and/or rodata sections. Since these
are shared between apps they are marked read-only, and thus if you try
and load the shared lib then the application of these relocations causes
a SEGSEGV fault.

This will work in Linux, since they have COW (Copy On Write) and they use
that to share the lib UNLESS someone writes to these sections in which
case a new private copy of the page is generated.

I get this kind of problem lot of times. Can’t fix it.
Just a simple example - I’m trying to get libpng working as shared library(v
3.1.2.1).
All code that link into shared library built with -fPIC. As compiler I tried
to use qcc -V gcc_ntox86, gcc.
But ‘make test’ fails on shared executable with SIGSEGV fault as decribed
above.

Attached files is makefile and readelf -r output for library.

Regards, Sergey Sobolev

P.S. The same is on 6.2.



begin 666 out.zip
M4$L#!!0(`("9KBR&&UJE-A0``/=V```&`"0`<F4N;&]G"@`@```````! M`!@``*#^L5G[P0%2[9] 6OO!`13MEQI8^\$!K5S+LMPVDMW[*VKG70<`@B0P M.\E6VYJ1'R%K.F96%2 >][)5KZCBU:._O@M9) &0O$G,!,L1DFS!YP('B43F MR43]\-$>SEIU[?FTNUD-O__XMZL]_*VSW[H?=ZK;G9V[V6Y'OA6NT3M]/G6J M/=UVM!8[>^JNK;W]QP^[W1^/4??/^Y,[[W:?OE_L+OK\]?W8G \_WG;_4(<7 M&_W[[^IH[_\_(825VFCX$Q&[C_M"5/N/[SZ\^?3^'^]ZD'&<=5GCK!%YXVR3 M-\ZQG'$5I5GKJ"C+6D=%BRISG,D:5\@L7JI"9?%2%4T>+T4C\\9IDC6N*O+6 M4?&\=51EWCJJ,F\=596YCJK.'&=SQM5$YHVC+&N]-6VR^*NIR5J'H'GG5U!7 M9H[+FI]@)&N]]W%9^RL8RSJ7@A4T;QPG>>,,O_]).4+[<07;)1\_RC(K=KO] M&]VU7^QOZO8Y'1*P5-[/M/<U4"K1GVF,]RS[#V]_4M?K]]D/#5C^W J]@J7( M'>O7MS\=K+J^C@5[+_!Y6>9O@OU?SZWK/MKC;O(9L KF_39C*UAZQ'I[N;R* M!3Y[(ZRRV!#+;(<E\NRZ<'RS_2Y<GKUR0C<[(YR(S6R,4[;9.>)4;K:7G,GM MUKBAC?$Z*Y82W)+M]MOF^75NS79[N>$9*0G?;"]+B+&VV<N2L^VP2K<=5K7= M.2K%=GZ_E&0[+)47<Y4V+T8J;5;L+:K,6*HJ\GYN5<C-SEP%\=8V9ZZJ\WQ& MI7+'Y?F]2F?E?*+F63F!J$N>.2YO?G559([+N]?K.L^.:Y&Y7IFYCLS]J)N\ MF*AN,M>A\\Y/;?)RH-IESL_EV94@>;R()L_NA2YW6]U=PFR7&\BRW"R^D-5V M\9'T,<A6\W+U9O-2I-P.BVYWIRKA[54T:WR1A*]W)[.$)?/TCB93)VB*[6R_ MX=O9?J.KS6RL@?MJHWG9[6+3!K3=C>;EMM,1M"BS;$?KO'&FW&XOC<V[LRW+ MN\,LZ(S;S,WE:;G"B=QQ>?&N4WGQCLO3S(7+T\*%,[GC\NS$V<QUV+PXP;FL M>$<2FC4_27B63[V/RXI/),G3X"7)B_,E$5EQM"0R=US6&9)$9:XC+TZ51&?9 M@20F;WXT<S]HWOF]C\N*>R6M,O'J/%Y\_3-KG,BS%T;%5KY/,I9WAMAV>K=D MQ68:J61\,SU&LG)#K"IOS^__9([+Q%-9/E86),^7%'0S?5 6;+,X7Q9Y=3+Y MJ%]O<U:*O%JI+-1FL:8LFLWR&5GHS>)669C-ZDRRL!MBN>VP>%X-6'*69Q<\ MKP=!\B;O'N5Y<;SD>;&W+#/76^;EJ/=Q>?=WR?/.<B-6\%YO43*J4VF+$B]Y MU*+$MFY0,D9E;;:17C+^_RWJZ3QIN^)E&:VIJ+=>E*509;C_6O63_>7#'V_W M/[_Y-*#XA936+_UR>MK_RUUM\D.BA5L*52S&,*S,DVIIX[$XCB6UCXO]O+J/ MO_\UA0I88&7<K*R1DGZ-ZG XZU>P&+F/(B5?6:-)%22V/"^XR2JULD;.'_-Z M_^[WGR>SBM?H^:KQ>4GHL?-8%W6[[;_?.G7MEKCW?-7-"I:O\WJLY_=_?7I] M7E#!%60%2_%H7I-I1?;51YDKW&?<=G>L7@G$L7*40$NA^BPIOD;#8^[-[;(_ M1G%)L D_+ZG7N._/X].;W][LII^PCQ IK9TA7QOR6,U__8+8%S@_)5:PO%[E ML6Y_?D!L`JHIRJYAD1[K[7L$RY%'-+BRCQG1H*6@HC1K?'D-`.;UTYL/TVE% M^^C/H\9M56K>^Z\_/WQZA_#EL<R*?6F?XWJL]J>?_GP=2P-6O>97>YOXUZ?_ MZ5['LH"ULH^F()'='R?L!__E[<NN^8E"];[PUY\_(O,"+/QL%](-\WJY/>]= M>SCLFQ?G['5B$Q[+K?E5V?NO[OUOR#YZU8"2-7^O8[[:DW[E;!./M>HGB@>6 M_O7C;Z_/RY\T2M?.HQ/QW3&96+"O^W^F;(TOK[,`%GJ&?"!%&7IO>S_1V\3M MXR]O$;OW6,4JENOW\1UF][7'XJBMPL??0YVQU^L,*K(O?L<J5WU.T_/UZ__ MD'EYK&KMWB[Z-;Z/_F;A#/E]K%;LR]#XWO[:FNYYD7MO]V)MC55_/Y[__G=D MC3Z"H0+W]U(S\L ZM(W_[8N-MP`)P"^':0!>"1XE%07?/JWP[!!:D;I?T7_^ M]V]_[O_Z\,>GL")20U(!5FZ[^8T8L/S-2@6&Q1@;/+*QM^YZ_KZ___JBNRF6 MZ3,#;%YYF<$=R]\45&%85!>TMP!SWE^M,N"4QYT+6,!7@\[K<?KNZ]*7[]-) M)5C E\'Y*HN(^Z,][MUI"0NB0&K1>4D^>/<G=!_A9F4$Q:K<$ 7Z>7D/OW?M M-U^1F6"!=L4S^#+6'50WV\48"S1CW%9=/>SCUVO;V6D\,F)!Y,906R7*F7Z- MS^ID#G;BY ,6\(7:*F-EW7-OK]?SS"<'+. +M]62EKWG`T/M#]("%O"E42Q2 MN1Y+/UO]>?_9?O]ZOIHIEH7,DZ&V2ERE><S]Y$X,6,"7PWT.D9%]S3*-@.7Y M*E!;9:P2/=97=3VUIZ?=*UB>KX*B\S)%'7/OVE-[>]Y?SU\G6#Z?)T6)8MEQ MC>;LW6![29Q.P/)\%;C=2S?XB=Y6TR U8 %?-8XE38^EKWINKP$+^$+MG@JF MHGU\+%(=+L]J@L6 +]SNB36I?:7Q6\ "OE ?S9@>; (B<-C,6_LTQP*^T#-$ MI& Z^-67]M3M?=O0' OX0GTTXS(YVWUZ,!K9B%4`7_@9LM8EOG"2MP0L4+O0 M,T2)5 GWDQ@U8'F^..[OA6RB>^B^K.9[9V\+6*"<X6>HUEH'^_)/1W>[I7E! MORU'SQ!CO.C7Z,.)O;%.O1RZ!2S@"[T[J&!#5A;L/C**@ 5\X7&.88.M/GRT M?GXY?=Z?U-%.L'JE$8^9<I1&8TOBL59\-"TF/GHQ!K#0UUOB\805)+&OQQKM M('D%+,]7B?MHIR=8:?X9L#Q?99$1F[2GE=C$PGO+$O?1I6$#7^W37A\OKV$! M7[B/-J:)[#Z)55,LX N/3<J*QFK$L_IBPXT68P%?J(]FC Y*H[Y:Y9TTA/=[ M-L&J@2_<5FU5#WSY*7F_&I??`A;PA?M56@QWASGO+THOJW!W+%#%<?MZV,31 M'O'XWH+Z7.'V58FZYZL]N?.KL9SU*@FI4%_(N"[)]$Z+_'3 \GQ5J*U22H=X MHK]KO2R^$.> <E:AMLI(Q?M];%[:@]D_J>-1[3O5'&R*!7SA,;DQ(O(Y[:FS MUX/2]A'UM*<1"RI+%1Z;5#4CB:T.2WU8;, "OM!X@A+5)#YGHET&+. +CR M'_S$`VNBSP8LX L_0[VM+OGZ! O*AA6>/U;:1'?:3+$/6% -POU]GR.W3X?S MZ>F?4U<887F^:O0,T4J:A*_VU(X.)\&"RA)ZAF@C2? 3+Z>;K^0LS<M',*1 ML7L>89FV>[;+<314&^L5W42H,0;P-^,DDPE8P-=*/.&&ZH;/.[ZJRVZW/"_@ M:R47%2XZCX^<Z+2 !;VD-6JKE/ ZB5<G%A:P@"_<5HTAT?WH'7Z2]P4LX N- M<V@QGD=8'YA7L80%53WT[F!E:69W[1CE1%B@?PG<[G5CPSY>GYI]=]X_7=7W M&9;G2^ QN5-U<H8FZE# \GP)U";ZL^W<X;["W?P3L( O_-YF?.#K:(\@-?D0 M>([UJ(+B.H"L9+R/KCUT]KIPIX'^)?%[NRYMI,O-5.. Y?F2*/>4&978_6-B MUO13"UB>+[F2#[$F\M&S2M6(!?J7Q.-5(QB/^)J$`!$6\(7'F+R1J=V#2#%& M)P$+^%K1F429\#6I]P8LX&OE3FN&>+6?DKKM7TZ?3^>OIQC+@?XE<3]!&S;9 MQ]-@92D6?(<&OH^"Q''.K,,D8'F^%)XK)#G,>^^]7L'R?"D\9M+"!,W*.QOO M=*Y/S10+]"^5XR=NW;4[F]W\$[" +UQSUTRD^E=:K I8P->*GE,/N?NHYRSE M'0[T+X7;JN(\U9#31IH1"_2O)B=F<I?K?49N-_L$+,]7@^<PFHC4[M-&FH#E M^6I07\@X*V,M[7(]:WN[C9XB8'F^FC5M:+![S_T7=6C-XAI!_VI6_!>H/J,& M\U4ETF.$!7SAL1QCXSV$Z28.]*]F11-U+O+1T<7]D$\"%O"%^Z^Z8A'6K*(] M8H'^I?'[D6JKQ[,]A-)?[+5[T!:P/%\:OQ\5G]1.4@D_8'F^-'X_-H3QM#;7 M7=7IYL[7HR^C!BS/EU[13;2)_&KS-*G$C%B@?VD\%]5-DZXQ;< (6, 7KIMP M2OHU#L?'5\CWOM$TQ0*^<%]HQGT<[/Z5-0)?.?FCONIIX_,$"_0O@VO(95.1 M-$]SYWUCW?D*.6[ \GP9W.<4AJ5:QZWS,$,33<#R?!E<-V&4B@7-:KY&SY?! M?8XH>,1]'TD\<K9;C 7ZE\$UY,H424P>:7+)O$#_,OA=:SD/N<+,[",LX O7 M.AKK2'H>$]\:L( O_*XU)M:0?9Z6V.N(!?J7P6VU(BK6TE[+TQSH7P:/Y1QS MP1>"8+7;+?'UZ!Q#[UI:VG)F]XM8GB_+<%MMAAQF\!.W\]'._03H7Q;WT8V M^J\DS Q8GB^;4\._I!:ZA 5\X;&O*U,=8-(K%+" KY7>%1'7AV:=CB,6Z%\V M)X[N^Q1\',WVRUC UXH&8^LH-NFOV>/Y=)YB`5\K9[L:^CI )Y\6( ,6\(77 M1?,Z$XT#_<OB9UO1,HW)4_H#%O"%GVWCK$CT^_1:"UC %ZXIE,50.XEST3'K M"UC %^XG*I766"=.9\0"_<OEQ/=]GO;1]MU="UB>+Y=;HYAIJRF6Y\NA/H>* ML8[L;=5^NZBE3O0[EN?+X?<VK4CPJU-U-<("_<OA]W993C2%+XEO#5C %^XG MDK.-</_HR,7C0EOQV7DLYGJT`_W+X7Y"CQIR;Z:IU#1B@?[E\!BS,)6>UH<B MWQJP@"\\QFS&>[N?5RK6!BS@"_<3?5[KY[-;^ 0LX O/AVS=D'D=>;@>`Q;H M7PX_V\KP6"\<DX[>R *6[WPE>.Q+2<63_HFT5SM@"8^%GVU;&3U;XQ*6]E@Y M]>V'MKJ;?X;.5QA%R4H_4UTLU/#'!S4!"_C"SZ.6/+T[TF:?@ 5\K>7N@UZ8 M]ISV-:* !7SA,3FITIA\\OYHQ*+ %ZX#^"[NB5X8-Y,%+. +KYVXL2YJSG,7 M'6$!7^@9HH]O&'C$T6TWR[@#EN>+XG=:4]#4?Z4-F2.6S^8H7>GK*'7"U^1- M6L#R?%'T3B."QO'7[,50P/)\45R?J J1V+U]A7L&?.&V2FDC)AI,+':,6 7P MM5(SY'6HG>C+]^7:R1T+^,)CS"KTKO3]OKO%-1; %YX_EJJ)N.]M_[2 !7RA M=P?S7Z48UT4GW8HC%@>^5F),*X+.] C)=[LE+,_72G^TMC+U7VE#0,#R?#$\ M?RP*PJ?UQ[D>;>'[9BC#8SFBTSZ^B6(X8OG(G3+\[M#E1$.^+/OH$OC">^^H M4E/M,185`A;PA>=IM8@UA=E+N8 %?.&Q7-WH.$^;OFX;L2K@"X_E^GK'BGYO M(5*@> \X,6-]:)J^3+" KY5>V$)'?8_(O("OE7KM6,L,,684GXQ8\(H)[[6F M1+/$5B=5UH#E^2IPN]>4BU2SBJ7M",OSA?=M,^KXU$>WI^ZJ+NTW>XCGY?G" M^Z-)"14\\%_JH%]\]N&[KF=KA%=R>!\R+:HR[5-(9*8("_C"XVA7I;')I ,_ M8'F^.'YOR[%>Z_O)9V%^P/)\<;SGH2Y<,J])P]R(Y;TOQ?N0*1WCU7@?'PUE M"9;G"^\=)JIFD[<B20-%P *^5OP7C>_'V0OW@ 5\X3& ;(8X^GC\MK^]7"[G MI5?W!%X[XGW(K!SYTN=CTYYLJD@'+. +]SG$F<E[J_@(15C %VZK_6M'WU7[ MS^/%"Z.'\[S7QX(Z3/&>9MK8,LQ+/Y\ON]TB]_ "%N]IIJ4J>JS%5IB Y?G" M>YI946L1^55_D&Z?V\L<R_.5U=/LP.*GDTJP/%]X3S.M=-J[TA[5DUW @A>P M>.\P+:R*XYR7BU&Q6AZP@"\\+BR:,KZ'0(A9>&%-X'7H2A]R.;X[N5J(?H-_ M3K& +SRW:BH3:B<OIVDG\HAE@"_<5KD8XJ_'`4JIC[#@9>Y*GE;5DWP[28D" MEN=KI3]:BF$?O9D^LMK%>7F^*OS>+EP1KW%2`@M87O^B*[W62I9IO)JF,0$+ M^%KQT2K.A_Q+M\<#B#NPAPU8P!?NH[G5L[[M*%T(6, 7?H;JL7^U?Q?@6]R M[<NUO76MOHU8#OA:T12DG&H*^XLZV*ZSR;Q _UKI':Y%W,\T>TD>L( OW.[K M\?UCGSNFWC5@>;[J%5M58\YG]?EXN?J26@A8QY??H'_5*[D5**=1;I6N,F!Y MONJ<>IHG:]X<G6!YOE9ZFDN1Z)BC&#K#`KYR:F!/QZX]8G<'!?UKI0_9"I[V M\;5/RUC 5^:;ZX,]H?,"OO XFD'70-0/T+<_]IIAP *^5FK2='@[_WA3]AKW MH'_A/<VL4M4LAPGA:H0%?.%OMQXOJ2;UQ] =%;#@VQ/PNZ.6<3_3[)LP`I;G M2^ Z0%';:9P37R C%NA?`L_=DWI:^NU)*9;G2^!:+6%-8JN3CLR !7RMO)$J MACK,HY=L\M(P8 %?N*U6%1]C\L<FNNOY.!CKJ-52T+_P7FLB2-Q+-OLVF8#E M^9*XOFK,<->"34P+?0'+\[72:RUK&[T7G;9C1EB>+[RGF992)/LX.9 C%NA? M\O_0#X#8%^A?<D5?U4.>!O*>3];NL$^W&1;PA>=6W)*%7NLQH@A8P!=N7V;, M.WS?D-*?GZ[GE]E[!4M!_UKIVQ[K?$LW1XP%?*WH3,I&M@JJ[Y*&3$'_PONV M?0M<&A>FCYL#EN=+X9H5ERR.5R>E@-T/_P902P,$% @X)FN+%&F=4,, M!P``TA(```@) !M86ME9FEL90H( ```````08!R2!U:^\$!@GJ'0%K[ MP0%Q`8$:6/O!`:U6>V\:N1;_F_D49Q.D"Q$S;$B3ME1(I4 H6S)4(6EV[W85 M.3-FQLJ,/=<V)>RGOW[,*Y30KK01@6,?G]]Y'_L84O2(5R3!L&(<$O*0T0@8 MA3FAZR>8S"]A0V0,41# 6A#%N[KZ'9 0.'U(,(> A=@YAA'+MIQ$L833MV\O M7/7U&H8TY!@)&),DPGSWT!NW]^NOIS#E.()KAA.V$NK()=.0-"22,"J K2 D M0G+RL-8;@&BHK, =$!BK<P4<99($& @%9;P7.UK7\/9FMO#[,&::K:5 QD14 M[I9N?<-<&&T][[77\WI&"T8\(9A[&NMN>.W/_&D?;F*\XWJN4\'PT L4^-9H M>]#*E/,A"+3"!L1?W$SZ`'<QIB"QD$4H,\Q5X%-$E0/:0TC7B202B4=]0FR% MQ&G'6 UBS76L\S\98Z[,4?^4P2IA2$.Z&2-40L99Q%$JH(6]R.O <G(S>_^1 MI;@-?$VI1B;T&10\H. QXFQ-PU] 98I*_"1!J" %,1;*(;G!RG*3?!6>R\^W M1C5^RC 5Y)OV<30:_$^%T_VBHWI/)7MZ<Z$]WQA#CXP+A J)DN0(LK44>;5Y MJ%-0@IUT; X[1HTB`T97*J495UE[&G19)DU*#*:V^V\EJL4YXELC0VB0K%5F M=)*%,3)A`9(X=([_.Y]]4)]!=RUX5^\F725I]V?^J+Z?HSB%B.=UM2:G.%JL MG>%\-O4'RB3=/N3LS47?.;9[;HH2$E$W82P3@QX4Z]6:!J:\!SWEBBZNJ\7U M9.#>;3B1V-7E3B,![IW))>8NXKI4W3L1HY!MX*MSW'#O4B)T.[HA#A+$D>T7 M]TYR9)L')6H5("%=HS67TN"!=#/.))/;#&N1`JFV>:Q$&<T;PW%*&YW<SZS6 M-]#SWIY[IQUP%V= !#RLHVC[#D)&_V/;CDC3`-<X9=\PN.//_O3^YN/U9#B^ MO_67P\O)_>(3D!5LV1HHQF&]=>36.3ZV.B-,L3)>%Y<*\>AR/IPN!R^@V>W; MY>1>_4Y'H^LQN+-F*T]>6SF-DD2')&^ 1K-E<J8X*CN<)8G-FHW:BJ5$NBN. M4NSF.0$XAF:KB(L2BW*=X\F'V^G@O+):!<H$J*>[^T*7Q[]A>FDO[&C2$^Q, MJWKUYL*.R^Q?BI9.KPE'JJ&+8@[9^B%165VM=*FE2,;FT$OQ+)>HMK4GO(XS M'^<VSSUE0-)Q>:; .VHQMZ:I3[O.J>\F^A)S/X1;BE(2J/7?SU9I@7X_'/P$ M7#&F+(Z2=JZ'OAX*'%$S/_(E#F*F*]U4;RXDGR3HAM$S#20S%]<FWH**]-7P M-]TO9Q[ 'VP-(F;K)-37AX*(T3>LCP<QHI%MH5QB`&>&G/F*/%79/M7++Y-K MM6RV[*&V9ZF9WW8<E<+/PYN/@V;+SM!V.=N4S3L<,]$6'WY;*C!M,M/?`DM+ M1 7!UY(DEI0J!L*2FWSWJ]/09U00\M.$Y0=*0@^ZG*D!2J%-OE)DBE-+8,X9 MMV16@=H;EUEKQ_.Y\5[3?8\-O(P$'E.^>\O;R\O9[Y-EW_:Y%X 2MVS%#2S5 M=QK-UD@7>J! ;*^T=5?,1N"NS#>#YGMHGGB!XZ DZ5<E45Y<)AA8R.+7%1)) MHLY7QO8;M:>"K8CJ@MMK0DUM*6I-_L=0WWE3`3A.X4X_#V+;:2 ./##JBYUF MR]9Y6^V6(H+UJQAX90$ZC82"*U;[>-5>#:5B?X?W97+](I[F[=6_BZP/%MZ- MY_-V&201(XY#V_F"493BSCZ;R\CM,^"KTZA![TRHEZ?0LY5-L:Z<?E%"7DU; M:6]5:%5RJ_/-5C[9VB5<7HA[4-'WH/GAP]CW0X7^S-+=HF^\U[,0CHY*"@!N M\E=O[C-*DJVRA#ZJZ.=/B?Y17=+KYJB'X:S*GT<K&S-_B^YKYGKAN>_)"OZ$ M7\ -50CR:=H&^.N=?G]22!]#PFN<=[ BNU+YI&U_)U0PK%"0[?9R#5>QXY2% M</'J56VW:P6>;Q1S0.$=\JVFOP!_?7Y>V^V^$)#N`Z%=GH*[.G#8M,T^MM-H M!>$SW_]9;[\S_?8S\Z7M.$&"$>T[C9K))[4.J,WO/4@G]?IF:^FI'\<9+T;Z M?ASZ_N+6'TU@]''H3R=+F/G+F^%\#I_\Q9W_X78*\]EHXB\GH)];5Q.X68P7 M\$?OT\R_7#CF"DQ8\-@O0H_<C3+MSR ^._]+14=K:8,(.,FDZ)Z8=K977W$# M-'9K1:\#Y_F5:<GJSM@5L'PC5=[3FCB@0[.-P*9^L1\0V!0"Y9VNB0,"FFT$ MRJ>')@X(:+81B.IOE0,"42%0>Z9HZN5 &;85J1XIECP@9/A6JGHS6?* E.$; MJ=KSRI(O2UF^34SUOK+DRU*6;Z4JOS8_\&M3^;6I_-K\P*]-Y5?M)9?](/!9 M'GFGO(E42O<&0#,#Y_]02P$"&0`4````" " F:XLAAM:I384#W=@!@
M" <F4N;&]G4$L!AD% @`X)FN+%&F=4,,!P`` MTA(```@````````````@?A0&UA:V5F:6QE4$L%!@`````"(:@`` '-0;````````
`
end


cburgess@qnx.com

“Colin Burgess” <cburgess@qnx.com> wrote in message
news:abrsif$3n2$1@nntp.qnx.com

If that’s the readelf -r for the lib there is is a bunch of non-pic code
in there.

But the makefile does look like it’s ok.

Is it building a shared zlib?

It’s link against shared (system) zlib. I used -Bdynamic to force shared

linking.
But the same result if link with static zlib.

Sergey Sobolev <ssobolev@volgasoft.net> wrote:

“Colin Burgess” <> cburgess@qnx.com> > wrote in message
news:abrsif$3n2$> 1@nntp.qnx.com> …
If that’s the readelf -r for the lib there is is a bunch of non-pic code
in there.

But the makefile does look like it’s ok.

Is it building a shared zlib?

It’s link against shared (system) zlib. I used -Bdynamic to force shared
linking.
But the same result if link with static zlib.

Check where in the shared objects those relocations are pointing to, then you
will see which object file was compiled wrong.

Cheers,

Colin


cburgess@qnx.com

“Colin Burgess” <cburgess@qnx.com> wrote in message
news:abue7u$2t4$2@nntp.qnx.com

Sergey Sobolev <> ssobolev@volgasoft.net> > wrote:

“Colin Burgess” <> cburgess@qnx.com> > wrote in message
news:abrsif$3n2$> 1@nntp.qnx.com> …
If that’s the readelf -r for the lib there is is a bunch of non-pic
code
in there.

But the makefile does look like it’s ok.

Is it building a shared zlib?

It’s link against shared (system) zlib. I used -Bdynamic to force shared
linking.
But the same result if link with static zlib.

Check where in the shared objects those relocations are pointing to, then
you
will see which object file was compiled wrong.

Thanks, I found it.
it was ‘pnggccrd.c’ - support for MMX processor and gcc compiler.

Sergey