Some more insight or some more confusion, I do not know.

Using -Wl,-ztext we can force the linker to emit a warning about text
relocations. The advantage is that it shows the actual symbols. For an ECL
with an external GMP (not its own) it shows the ones below. I would say they
are pretty harmless, aren't they? GMP has the same relocation "problems" so
to say.

;;;   gcc -o "libecl.so" -L"/export/home/jjgarcia/tmp/opensolaris64/"
"c/main.o" "c/all_symbols2.o" "liblsp.a" "libeclmin.a"
 "-Wl,-R,/export/home/jjgarcia/lib/" -dy -G  -fPIC -Wl,-ztext   -leclgc
 -ldl  -lm -lsocket -lnsl -lintl  -lgmp
Text relocation remains                         referenced
    against symbol                  offset      in file
__get_exit_frame_monitor_ptr        0x27        /usr/lib/crt1.o
__do_exit_code_ptr                  0x33        /usr/lib/crt1.o
__fsr_init_value_ptr                0xa6        /usr/lib/crt1.o
trap_table                          0xbf        /usr/lib/crt1.o
main                                0x7f        /usr/lib/crt1.o
_DYNAMIC                            0x7         /usr/lib/crt1.o
_environ                            0x4b        /usr/lib/crt1.o
_environ                            0x59        /usr/lib/crt1.o
___Argv                             0x69        /usr/lib/crt1.o
_fini                               0x19        /usr/lib/crt1.o
__fsr                               0x75        /usr/lib/crt1.o
_init                               0x7a        /usr/lib/crt1.o
__fpstart                           0x70        /usr/lib/crt1.o
exit                                0x8b        /usr/lib/crt1.o
_exit                               0x97        /usr/lib/crt1.o
atexit                              0x11        /usr/lib/crt1.o
atexit                              0x1e        /usr/lib/crt1.o
atexit                              0x3f        /usr/lib/crt1.o

Now the funny thing is that if I copy the *.so file to a Linux box with
"scanelf' (none of the Solaris boxes have this program), I get different
results which I do not know how to interpret. scanelf -qtT is supposed to
reveal the text relocations, but all it shows is function calls and global
variables and they are tagged "optimized out" which I do not know how to
interpret.

  libecl.so: (memory/data?) [0x39467] in (optimized out) [0x39440]
  libecl.so: (memory/data?) [0x39473] in (optimized out) [0x39440]
  libecl.so: (memory/data?) [0x394E6] in (optimized out: previous __fsr)
[0x394DC]
  libecl.so: (memory/data?) [0x394FF] in (optimized out: previous __fsr)
[0x394DC]
  libecl.so: c_register_block [0x394BF] in (optimized out) [0x39440]
  libecl.so: LC30cadadr [0x39447] in (optimized out) [0x39440]
  libecl.so: VV [0x3948B] in (optimized out) [0x39440]
  libecl.so: VV [0x39499] in (optimized out) [0x39440]
  libecl.so: L8find_restart_never_fail [0x394A9] in (optimized out)
[0x39440]
  libecl.so: LC117__g1448 [0x39459] in (optimized out) [0x39440]
  libecl.so: .LC0 [0x394B5] in (optimized out) [0x39440]
  libecl.so: LC98__g1345 [0x394BA] in (optimized out) [0x39440]
  libecl.so: L4_convert_to_ffi_type [0x394B0] in (optimized out) [0x39440]
  libecl.so: .L112 [0x394CB] in (optimized out) [0x39440]
  libecl.so: compiler_data_text [0x394D7] in (optimized out) [0x39440]
  libecl.so: LC64rotatef [0x39451] in (optimized out) [0x39440]
  libecl.so: LC64rotatef [0x3945E] in (optimized out) [0x39440]
  libecl.so: LC64rotatef [0x3947F] in (optimized out) [0x39440]
 0755 LE --- --- RWX TEXTREL
/usr/ccs/lib:/lib:/usr/lib:/usr/sfw/lib:/export/hom

-- 
Instituto de FĂ­sica Fundamental, CSIC
c/ Serrano, 113b, Madrid 28006 (Spain)
http://juanjose.garciaripoll.googlepages.com
------------------------------------------------------------------------------
Forrester recently released a report on the Return on Investment (ROI) of
Google Apps. They found a 300% ROI, 38%-56% cost savings, and break-even
within 7 months.  Over 3 million businesses have gone Google with Google Apps:
an online email calendar, and document program that's accessible from your 
browser. Read the Forrester report: http://p.sf.net/sfu/googleapps-sfnew
_______________________________________________
Ecls-list mailing list
Ecls-list@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/ecls-list

Reply via email to