How does AOSP 9.0 build system link the executable?What does @ mean in this clang command in AOSP build log?How does AOSP build system produce .rsp files and how to get them?Building a Android 6 Messaging app out of AOSP treeWhile trying to build android source code, make clobber gives “no such file or directory”where is 'target-executable-hook' defined in AOSP?Failed to build AOSP [run_soong_ui] Error 1AOSP: Can't get prebuilt static libraries into their intermediary folders in order to link to other moduleserror: failed parsing overlays when build AOSP sourceHow to build AOSP Latin IME out of tree?Native Code coverage with android soong build systemHow to include custom splash.img in AOSP buildWhat does the command “PWD=/proc/self/cwd another_executable ” mean?
Was lunar module "pilot" Harrison Schmitt legally a "pilot" at the time?
Storming Area 51
Does Google Maps take into account hills/inclines for route times?
Simple LED driver, transistor and GPIO
As the Dungeon Master, how do I handle a player that insists on a specific class when I already know that choice will cause issues?
Why isn't pressure filtration popular compared to vacuum filtration?
Rhombuses, kites etc
Shortest distance around a pyramid?
What was the definition of "set" that resulted in Russell's Paradox
Why didn't Thanos kill all the Dwarves on Nidavellir?
Machine learning and operations research projects
What are some examples of special things about Russian?
How can I get a player to accept that they should stop trying to pull stunts without thinking them through first?
Cubic programming and beyond?
How do I take a fraction to a negative power?
Why does Hellboy file down his horns?
Why are Hobbits so fond of mushrooms?
Is purchasing foreign currency before going abroad a losing proposition?
Why isn't there research to build a standard lunar, or Martian mobility platform?
<schwitz>, <zwinker> etc. Does German always use 2nd Person Singular Imperative verbs for emoticons? If so, why?
Are neural networks prone to catastrophic forgetting?
Was I subtly told to resign?
Parse source code of the RAPID robot-automation language
How can an advanced civilization forget how to manufacture its technology?
How does AOSP 9.0 build system link the executable?
What does @ mean in this clang command in AOSP build log?How does AOSP build system produce .rsp files and how to get them?Building a Android 6 Messaging app out of AOSP treeWhile trying to build android source code, make clobber gives “no such file or directory”where is 'target-executable-hook' defined in AOSP?Failed to build AOSP [run_soong_ui] Error 1AOSP: Can't get prebuilt static libraries into their intermediary folders in order to link to other moduleserror: failed parsing overlays when build AOSP sourceHow to build AOSP Latin IME out of tree?Native Code coverage with android soong build systemHow to include custom splash.img in AOSP buildWhat does the command “PWD=/proc/self/cwd another_executable ” mean?
.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty margin-bottom:0;
With AOSP 9.0.0_r30 source code, first use these commands to output a
detailed build log during build:
make clean
make showcommands -j8 > ~/BuildAndroid.txt
Then search in ~/BuildAndroid.txt
for "lld" (whole word match). I can't find anything. Clang linker should have the lld keyword.Search "ld" there are 50 results but they are hardly be the link commands.One of them is "ld.mc" which is a candidate,though.
And search for some cpp source file name like "TextDropShadowCache". I only get 2 commands, both of which are clang++ compilation commands.
The link command of libhwui.so references a file "libhwui.so.rsp" which seems to possibly (only guess) contains "TextDropShadowCache.o":
prebuilts/clang/host/linux-x86/clang-4691093/bin/clang++ /OpenSource/Build/Android/9.0.0_r30/soong/.intermediates/bionic/libc/crtbegin_so/android_x86_64_core/crtbegin_so.o @/OpenSource/Build/Android/9.0.0_r30/soong/.intermediates/frameworks/base/libs/hwui/libhwui/android_x86_64_core_shared/libhwui.so.rsp ......
If this is true, then how is libhwui.so.rsp produced?
The command also give rise to this question: What does @ mean in this clang command in AOSP build log?
according to the above question, @ means read a long command from a file, so it is highly possibly be a file that list all the obj files that libhwui.so needs.
So the problem is basically answered, but not verified because libhwui.so.rsp seems to be removed after build.
How does the AOSP 9.0 build system link the executable?
build android-source
add a comment |
With AOSP 9.0.0_r30 source code, first use these commands to output a
detailed build log during build:
make clean
make showcommands -j8 > ~/BuildAndroid.txt
Then search in ~/BuildAndroid.txt
for "lld" (whole word match). I can't find anything. Clang linker should have the lld keyword.Search "ld" there are 50 results but they are hardly be the link commands.One of them is "ld.mc" which is a candidate,though.
And search for some cpp source file name like "TextDropShadowCache". I only get 2 commands, both of which are clang++ compilation commands.
The link command of libhwui.so references a file "libhwui.so.rsp" which seems to possibly (only guess) contains "TextDropShadowCache.o":
prebuilts/clang/host/linux-x86/clang-4691093/bin/clang++ /OpenSource/Build/Android/9.0.0_r30/soong/.intermediates/bionic/libc/crtbegin_so/android_x86_64_core/crtbegin_so.o @/OpenSource/Build/Android/9.0.0_r30/soong/.intermediates/frameworks/base/libs/hwui/libhwui/android_x86_64_core_shared/libhwui.so.rsp ......
If this is true, then how is libhwui.so.rsp produced?
The command also give rise to this question: What does @ mean in this clang command in AOSP build log?
according to the above question, @ means read a long command from a file, so it is highly possibly be a file that list all the obj files that libhwui.so needs.
So the problem is basically answered, but not verified because libhwui.so.rsp seems to be removed after build.
How does the AOSP 9.0 build system link the executable?
build android-source
add a comment |
With AOSP 9.0.0_r30 source code, first use these commands to output a
detailed build log during build:
make clean
make showcommands -j8 > ~/BuildAndroid.txt
Then search in ~/BuildAndroid.txt
for "lld" (whole word match). I can't find anything. Clang linker should have the lld keyword.Search "ld" there are 50 results but they are hardly be the link commands.One of them is "ld.mc" which is a candidate,though.
And search for some cpp source file name like "TextDropShadowCache". I only get 2 commands, both of which are clang++ compilation commands.
The link command of libhwui.so references a file "libhwui.so.rsp" which seems to possibly (only guess) contains "TextDropShadowCache.o":
prebuilts/clang/host/linux-x86/clang-4691093/bin/clang++ /OpenSource/Build/Android/9.0.0_r30/soong/.intermediates/bionic/libc/crtbegin_so/android_x86_64_core/crtbegin_so.o @/OpenSource/Build/Android/9.0.0_r30/soong/.intermediates/frameworks/base/libs/hwui/libhwui/android_x86_64_core_shared/libhwui.so.rsp ......
If this is true, then how is libhwui.so.rsp produced?
The command also give rise to this question: What does @ mean in this clang command in AOSP build log?
according to the above question, @ means read a long command from a file, so it is highly possibly be a file that list all the obj files that libhwui.so needs.
So the problem is basically answered, but not verified because libhwui.so.rsp seems to be removed after build.
How does the AOSP 9.0 build system link the executable?
build android-source
With AOSP 9.0.0_r30 source code, first use these commands to output a
detailed build log during build:
make clean
make showcommands -j8 > ~/BuildAndroid.txt
Then search in ~/BuildAndroid.txt
for "lld" (whole word match). I can't find anything. Clang linker should have the lld keyword.Search "ld" there are 50 results but they are hardly be the link commands.One of them is "ld.mc" which is a candidate,though.
And search for some cpp source file name like "TextDropShadowCache". I only get 2 commands, both of which are clang++ compilation commands.
The link command of libhwui.so references a file "libhwui.so.rsp" which seems to possibly (only guess) contains "TextDropShadowCache.o":
prebuilts/clang/host/linux-x86/clang-4691093/bin/clang++ /OpenSource/Build/Android/9.0.0_r30/soong/.intermediates/bionic/libc/crtbegin_so/android_x86_64_core/crtbegin_so.o @/OpenSource/Build/Android/9.0.0_r30/soong/.intermediates/frameworks/base/libs/hwui/libhwui/android_x86_64_core_shared/libhwui.so.rsp ......
If this is true, then how is libhwui.so.rsp produced?
The command also give rise to this question: What does @ mean in this clang command in AOSP build log?
according to the above question, @ means read a long command from a file, so it is highly possibly be a file that list all the obj files that libhwui.so needs.
So the problem is basically answered, but not verified because libhwui.so.rsp seems to be removed after build.
How does the AOSP 9.0 build system link the executable?
build android-source
build android-source
edited Apr 1 at 4:59
jw_
asked Mar 26 at 3:41
jw_jw_
1249 bronze badges
1249 bronze badges
add a comment |
add a comment |
1 Answer
1
active
oldest
votes
I found the link command line for pppd,it just use
prebuilts/clang/host/linux-x86/clang-4691093/bin/clang++
with all the .o/.a/.so file as input,and pppd as output.
But this still does not explain why there are no link commands that use TextDropShadowCache.o as input,maybe they use some script to read multiple .o files?
You have found an example of the common practice (perhaps today more often than not) of having the compiler invoke the linker (either only, or in addition to doing some compilation), rather than directly invoking it yourself.
– Chris Stratton
Mar 27 at 19:45
What about TextDropShadowCache.o?
– jw_
Mar 28 at 0:37
add a comment |
Your Answer
StackExchange.ifUsing("editor", function ()
StackExchange.using("externalEditor", function ()
StackExchange.using("snippets", function ()
StackExchange.snippets.init();
);
);
, "code-snippets");
StackExchange.ready(function()
var channelOptions =
tags: "".split(" "),
id: "1"
;
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function()
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled)
StackExchange.using("snippets", function()
createEditor();
);
else
createEditor();
);
function createEditor()
StackExchange.prepareEditor(
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader:
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
,
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
);
);
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f55349527%2fhow-does-aosp-9-0-build-system-link-the-executable%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
I found the link command line for pppd,it just use
prebuilts/clang/host/linux-x86/clang-4691093/bin/clang++
with all the .o/.a/.so file as input,and pppd as output.
But this still does not explain why there are no link commands that use TextDropShadowCache.o as input,maybe they use some script to read multiple .o files?
You have found an example of the common practice (perhaps today more often than not) of having the compiler invoke the linker (either only, or in addition to doing some compilation), rather than directly invoking it yourself.
– Chris Stratton
Mar 27 at 19:45
What about TextDropShadowCache.o?
– jw_
Mar 28 at 0:37
add a comment |
I found the link command line for pppd,it just use
prebuilts/clang/host/linux-x86/clang-4691093/bin/clang++
with all the .o/.a/.so file as input,and pppd as output.
But this still does not explain why there are no link commands that use TextDropShadowCache.o as input,maybe they use some script to read multiple .o files?
You have found an example of the common practice (perhaps today more often than not) of having the compiler invoke the linker (either only, or in addition to doing some compilation), rather than directly invoking it yourself.
– Chris Stratton
Mar 27 at 19:45
What about TextDropShadowCache.o?
– jw_
Mar 28 at 0:37
add a comment |
I found the link command line for pppd,it just use
prebuilts/clang/host/linux-x86/clang-4691093/bin/clang++
with all the .o/.a/.so file as input,and pppd as output.
But this still does not explain why there are no link commands that use TextDropShadowCache.o as input,maybe they use some script to read multiple .o files?
I found the link command line for pppd,it just use
prebuilts/clang/host/linux-x86/clang-4691093/bin/clang++
with all the .o/.a/.so file as input,and pppd as output.
But this still does not explain why there are no link commands that use TextDropShadowCache.o as input,maybe they use some script to read multiple .o files?
answered Mar 27 at 4:29
jw_jw_
1249 bronze badges
1249 bronze badges
You have found an example of the common practice (perhaps today more often than not) of having the compiler invoke the linker (either only, or in addition to doing some compilation), rather than directly invoking it yourself.
– Chris Stratton
Mar 27 at 19:45
What about TextDropShadowCache.o?
– jw_
Mar 28 at 0:37
add a comment |
You have found an example of the common practice (perhaps today more often than not) of having the compiler invoke the linker (either only, or in addition to doing some compilation), rather than directly invoking it yourself.
– Chris Stratton
Mar 27 at 19:45
What about TextDropShadowCache.o?
– jw_
Mar 28 at 0:37
You have found an example of the common practice (perhaps today more often than not) of having the compiler invoke the linker (either only, or in addition to doing some compilation), rather than directly invoking it yourself.
– Chris Stratton
Mar 27 at 19:45
You have found an example of the common practice (perhaps today more often than not) of having the compiler invoke the linker (either only, or in addition to doing some compilation), rather than directly invoking it yourself.
– Chris Stratton
Mar 27 at 19:45
What about TextDropShadowCache.o?
– jw_
Mar 28 at 0:37
What about TextDropShadowCache.o?
– jw_
Mar 28 at 0:37
add a comment |
Got a question that you can’t ask on public Stack Overflow? Learn more about sharing private information with Stack Overflow for Teams.
Got a question that you can’t ask on public Stack Overflow? Learn more about sharing private information with Stack Overflow for Teams.
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f55349527%2fhow-does-aosp-9-0-build-system-link-the-executable%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown