This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

ARM Compilers: refer external symbols from elf

Note: This was originally posted on 18th April 2011 at http://forums.arm.com

HI guys,



is it possible to compile a source file where the external symbols should be referred in the elf (elf for whole build) by ARM compiler/Linker.

we use compilers :ADS120 ,RVCT3.1,RVCT4.1

Scenario :

Build consist of all the source, we make build by integrating  this source file/changes and we compile whole build. so if there is any compilation/link error with integrated source file/changes we will able to know after whole build is compiled .
i want to optimize this process,by compiling only changed files before integrating in the whole build ,where external symbols should be referred in elf (generated for whole build(previous  successful build)). Once it compiled successfully i can integrated in build and compile.so by this process i will be able to resolve the errors in very less time.

Thanks for reading the post.
Parents
  • Note: This was originally posted on 20th April 2011 at http://forums.arm.com


    Once you have complied things to an executable no symbolic information is exported, so an ELF executable cannot be an input to a link step.

    You original question was around trying to avoid recompiling everything  if only a few files have changed - build tools like GNU Make will only rebuild what has changed, and reuse the old output objects if the file has not changed. I'd suggest investigating that type of Build tool - it does exactly what you are trying to do ...

    Iso


    Iso.. i am so sorry if i confuse you....

    let me  try to explain clearly   the question again...

    Our Builds system is like for every src changes we keep a separate builds(compiled src code ) in filers i.e if we have changes to fix x,y,z bugs respectively. we sync whole src code and integrate x bug fixes then make a build (Build 1)like wise we do a separate builds for y(Build 2),z(Build 3).so we sync whole src code and compile the whole  for only few file changes.

    In above when we integrate fixes, these changes might have some  compilation/linking issue,if so we can know after few hrs(i.e after whole build src got synced and tried to compile).So, to reduce the time.. i thought of 

    compile only those changes with -c option without integrating in the build and compiling whole build.

    in the above process we can know only about compilation errors(i.e syntactical errors ) whether they are present or not. But for linking errors,i need to resolve the all external symbols referred by  obj file.


    so , my Question is whether we have any option/way  in linking to tell linker to fetch external symbols referred by obj file from elf of build(which has all the symbols defined  bye each source file in build).

    Thanks for the reading my post patiently :)




Reply
  • Note: This was originally posted on 20th April 2011 at http://forums.arm.com


    Once you have complied things to an executable no symbolic information is exported, so an ELF executable cannot be an input to a link step.

    You original question was around trying to avoid recompiling everything  if only a few files have changed - build tools like GNU Make will only rebuild what has changed, and reuse the old output objects if the file has not changed. I'd suggest investigating that type of Build tool - it does exactly what you are trying to do ...

    Iso


    Iso.. i am so sorry if i confuse you....

    let me  try to explain clearly   the question again...

    Our Builds system is like for every src changes we keep a separate builds(compiled src code ) in filers i.e if we have changes to fix x,y,z bugs respectively. we sync whole src code and integrate x bug fixes then make a build (Build 1)like wise we do a separate builds for y(Build 2),z(Build 3).so we sync whole src code and compile the whole  for only few file changes.

    In above when we integrate fixes, these changes might have some  compilation/linking issue,if so we can know after few hrs(i.e after whole build src got synced and tried to compile).So, to reduce the time.. i thought of 

    compile only those changes with -c option without integrating in the build and compiling whole build.

    in the above process we can know only about compilation errors(i.e syntactical errors ) whether they are present or not. But for linking errors,i need to resolve the all external symbols referred by  obj file.


    so , my Question is whether we have any option/way  in linking to tell linker to fetch external symbols referred by obj file from elf of build(which has all the symbols defined  bye each source file in build).

    Thanks for the reading my post patiently :)




Children
No data