http://qs1969.pair.com?node_id=1209796


in reply to Re: How to obtain perl5/auto/IO/IO.so with global symbols?
in thread How to obtain perl5/auto/IO/IO.so with global symbols?

edit: For your question "what global symbols?", this is what I mean (the directly delivered executable from Company A).

[emk@ekdev2 IO]$ pwd /tmp/par-656d6b/cache-08da00fae2ebdaf6d8f69a0988dac72d0e1f3d62/inc/lib +/auto/IO [emk@ekdev2 IO]$ nm -g IO.so U PerlIO_getpos U PerlIO_setpos U PerlIO_tmpfile U PerlIO_ungetc U Perl_Isv_undef_ptr U Perl_Isv_yes_ptr U Perl_PerlIO_clearerr U Perl_PerlIO_error U Perl_PerlIO_fileno U Perl_PerlIO_flush ... 0000000000001760 T boot_IO U fcntl@@GLIBC_2.2.5 U fsync@@GLIBC_2.2.5 U poll@@GLIBC_2.2.5 U sockatmark@@GLIBC_2.2.5

The following is what I get when I run ldd -v IO.so on each machine. The outputs are exactly the same, apart from the memory addresses. I ran ldd on the test machine's IO.so found in /tmp/par-..., and I ran ldd on the build machine's IO.so found in /usr/lib64/perl5/auto/IO.

Just realized you probably meant to run ldd -v IO.so for the executable I got directly from Company A. I checked on that, and even that one has the same output for ldd -v.

linux-vdso.so.1 => (0x00007fff091de000) libc.so.6 => /lib64/libc.so.6 (0x00007f1a0386b000) /lib64/ld-linux-x86-64.so.2 (0x00007f1a03e47000) Version information: ./IO.so: libc.so.6 (GLIBC_2.2.5) => /lib64/libc.so.6 /lib64/libc.so.6: ld-linux-x86-64.so.2 (GLIBC_2.3) => /lib64/ld-linux-x86-64.so. +2 ld-linux-x86-64.so.2 (GLIBC_PRIVATE) => /lib64/ld-linux-x86-64 +.so.2