Intel® C++ Compiler
Support and discussions for creating C++ code that runs on platforms based on Intel® processors.
7600 Discussions

Examine objects to determine memory model, relocatable?

jkwi
Beginner
121 Views

Is there a way to examine an object (.o or collection .a)
and know what memory model they were compiled with? Or,
if they are compiled as being relocatable?

I've looked at readelf but doesn't give me what
I want or I am missing it.

Getting ld complaints on relocation errors for C modules
but they were compiled with medium memory model and/or
as relocatable (-fPIC). GCC compile gives relocation errors
but compiled with ICC they are relocatable?

I'd like to see what is different about the ICC compiled .o's.

We are dealing with static objects but
due to the memory usage of the application (>2GB data)
my understanding is that all objects must be compiled
with GCC -fPIC.

fyi: main is Fortran, (ifort v11.1).
GCC is RHEL 5 (4.1.2) and Ubuntu (4.6.1)

0 Kudos
2 Replies
SergeyKostrov
Valued Contributor II
121 Views
Quoting jkwi
Is there a way to examine an object (.o or collection .a)
and know what memory model they were compiled with?Or,
if they are compiled as being relocatable?
...


Try to use GCC's'Objdump' utility.It allows to display information about object files.

jkwi
Beginner
121 Views
Thanks. Looks to be similar information that I get from readelf -all, and it agrees.

Reply