This is the mail archive of the ecos-discuss@sources.redhat.com mailing list for the eCos project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Question about Linking with Application?


Hi all:
   I have a question about linking with the application. After building the
eCOS configuration and get the libtarget.a built. If I compile and link my
app with the library will all the function inside the library will be linked
to the final output file? ( It seems to be impossible coz the size of the
libtarget.a is about 900KB) So what will be linked with my app ( just a
simple app as Hello World or just a app as: main() {  } nothing inside).  I
have built the eCOS with TCP/IP support and the physical layer device driver
for ehernet ( I got the libtarget.a) and I just tried to link it with my
application( main() { } nothing inside) but I have been told the .bss
section is out of ram region) I wondered that whether the whole library has
been linked with my application, even I didn't call any Network support
function? But the library is about 900KB (it is over the size of the RAM in
my ARM E7T board 512KB)( template: ARM E7T package: net), so it is
impossible to link the whole library with the app. If I tried to build an
other library without the network support its size is 3608KB ( template: ARM
E7T , default package). but I can build my app with this library and it runs
ok. so I bet not the whole library will be linked into the app. so what will
cause the .bss section out of the ram region( I didn't call any network
support function so why .bss section will be out of region in the one have
network spport and not in the one without network support? why they are not
the same?)? Thank you for your help.

Best regards!

james


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]