What steps will reproduce the problem?
1.Specify a set of library archives using GROUP command in linker script. Make
sure the SEARCH_DIR option is set for the directories conatining those archives.
2.Make sure some symbols defined in the archive are being used in your program
3.Use the linker script to link
What is the expected output? What do you see instead?
The expected output is that the symbol should get resolved. However it fails
mentioning the symbol could not be resolved.
What version of the product are you using? On what operating system?
My revision code is 4bebbd8f62c02c85bf2da78bc09f39a3ce2f2f3b and I'm using
Ubuntu 12.04 with gcc-4.6
Additional information:
When the grouping of library is done with -start-group and -end-group on
command line, the specified archives are added to the end of the input tree
which get processed after finding out all the undefined symbols from the inputs
(lazy resolution of symbols). When these same libraries are specified using the
GROUP command in linker script, the merging of the newly created input tree
with the existing input tree fails. Even though the readGroup function called
before merging computes successfully, the undefined symbols are not available
yet to be resolved and fail to get resolved later when they are actually
detected in the inputs.
The problem happens to be that the archives specified in the GROUP command of
the linker script are read only once and that too before any of the inputs are
read.
Original issue reported on code.google.com by vishwacs...@gmail.com on 6 Jul 2014 at 6:46
Original issue reported on code.google.com by
vishwacs...@gmail.com
on 6 Jul 2014 at 6:46