G
Guest
Dear all,
I have written a C++ program 1.cpp
#include <stdioh>
main() {
}
then I compile with g++ 1.cpp, it generated a ./a.out.
[root@backup-server tmp]# ldd ./a.out
libstdc++.so.5 => /usr/lib/libstdc++.so.5 (0x40027000)
libm.so.6 => /lib/tls/libm.so.6 (0x400da000)
libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x400fc000)
libc.so.6 => /lib/tls/libc.so.6 (0x42000000)
/lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000)
[root@backup-server tmp]# objdump -x a.out | grep NEED
NEEDED libstdc++.so.5
NEEDED libm.so.6
NEEDED libgcc_s.so.1
NEEDED libc.so.6
VERNEED 0x804822c
VERNEEDNUM 0x1
why is there libm.so.6??? I dont have any math function called?
I need to modify an extremely complicated C++ project using only integer
and I need to prove to my client that the project does not use libm. However
seems I cannot get rid of libm. Could anyone help?
Hong
I have written a C++ program 1.cpp
#include <stdioh>
main() {
}
then I compile with g++ 1.cpp, it generated a ./a.out.
[root@backup-server tmp]# ldd ./a.out
libstdc++.so.5 => /usr/lib/libstdc++.so.5 (0x40027000)
libm.so.6 => /lib/tls/libm.so.6 (0x400da000)
libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x400fc000)
libc.so.6 => /lib/tls/libc.so.6 (0x42000000)
/lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000)
[root@backup-server tmp]# objdump -x a.out | grep NEED
NEEDED libstdc++.so.5
NEEDED libm.so.6
NEEDED libgcc_s.so.1
NEEDED libc.so.6
VERNEED 0x804822c
VERNEEDNUM 0x1
why is there libm.so.6??? I dont have any math function called?
I need to modify an extremely complicated C++ project using only integer
and I need to prove to my client that the project does not use libm. However
seems I cannot get rid of libm. Could anyone help?
Hong