HI Nidhi,

>
> Even executable file has to be dependent on dynamic loader and c library at
> least, assuming you don't use any other library fucntions like threads etc.
>
> When you use any library calls and obviyuosly link them to compile the file
> to produce executable file, it contains the references to those libraries
> and the symbols you need to resolve at run time just before control reaches
> to your program.
>
> Please read http://people.redhat.com/drepper/dsohowto.pdf
>
>
>
> On Tue, Dec 16, 2008 at 11:54 AM, nidhi mittal <[email protected]>wrote:
>
>> hi all i know its not directly related to kernel ...but its the doubt i
>> got while kernel programming only ..its in c langugage
>> it wd be kind if you accept this ques and answer it
>> i have a doubt regarding linking of libraries in c program
>> lets say i have a hello.c C program and hello is executable file
>> correspoding to this.
>>
>> i read that if libraries are linked dynamically then size of executable
>> file hello is smaller as compared to the size of executable if libararies
>> are linked statically .
>> in my opinion that means that in case of dynamic linked library hello does
>> not contain libraries with it it is just linked with them.
>> may be hello contain references to symbols ...where they are present in
>> linked libraries.
>>
>> now suppose i transfer this hello file to some other machine but same
>> platform which doesnt contain these libraries ....will it work there ?
>> i hope it shd not
>> but i have heard ppl say that executable file is complete in itself and it
>> works taken anywhere on same platform.
>>
>> pl clarify ..
>> where i m wrong i know there is some fault in my understanding of linking
>> concept but unable to clarify it from google...
>> --
>> Thanks & Regards
>> Nidhi
>>
>
>
>
> --
> --,
> BR,
> Ravi Sankar Guntur.
>



-- 
--,
BR,
Ravi Sankar Guntur.

Reply via email to