building android sdk tools (aapt, adb, etc.) for arm/arm64
I am currently interested in building the Android SDK tools (aapt, adb, etc.) for the ARM-v7a and ARM64-v8a architectures so that it can be run directly on an Android device. Is this possible?
I was able to build the Android SDK tools for x86/x86_64 pretty easily following the documentation.
https://source.android.com/setup
To do this, I performed the following steps.
mkdir ~/WORKING_DIRECTORY
cd ~/WORKING_DIRECTORY
repo init -u https://android.googlesource.com/platform/manifest -b master -g all,-notdefault,tools
repo sync
. build/envsetup.sh
lunch sdk-eng
make sdk
As mentioned above, this will build the android SDK tools for x86/x86_64. I am just not sure how I can build the tools for other architectures.
I am aware that you can specify the desired architecture to the make targets. For example, "make aosp_arm-eng" which will build the image for the arm environment. However, when I tried "make sdk_arm-eng", it told me that the target did not exist.
Any help would be greatly appreciated.
EDIT:
It looks like Debian has arm/arm64 packages for aapt and other android tools here.
https://packages.debian.org/buster/aapt
However, these will be unable to run on the actual android device it seems because of dependencies.
/android-sdk/ndk-bundle/toolchains/aarch64-linux-android-4.9/prebuilt/linux-x86_64/bin/aarch64-linux-android-readelf -a aapt | grep Shared
Type: DYN (Shared object file)
0x0000000000000001 (NEEDED) Shared library: [libaapt.so.0]
0x0000000000000001 (NEEDED) Shared library: [libutils.so.0]
0x0000000000000001 (NEEDED) Shared library: [libstdc++.so.6]
0x0000000000000001 (NEEDED) Shared library: [libm.so.6]
0x0000000000000001 (NEEDED) Shared library: [libgcc_s.so.1]
0x0000000000000001 (NEEDED) Shared library: [libc.so.6]
0x0000000000000001 (NEEDED) Shared library: [ld-linux-aarch64.so.1]
As we can see below, it requires libgcc libstc++ which isn't packaged with android.
android android-source
add a comment |
I am currently interested in building the Android SDK tools (aapt, adb, etc.) for the ARM-v7a and ARM64-v8a architectures so that it can be run directly on an Android device. Is this possible?
I was able to build the Android SDK tools for x86/x86_64 pretty easily following the documentation.
https://source.android.com/setup
To do this, I performed the following steps.
mkdir ~/WORKING_DIRECTORY
cd ~/WORKING_DIRECTORY
repo init -u https://android.googlesource.com/platform/manifest -b master -g all,-notdefault,tools
repo sync
. build/envsetup.sh
lunch sdk-eng
make sdk
As mentioned above, this will build the android SDK tools for x86/x86_64. I am just not sure how I can build the tools for other architectures.
I am aware that you can specify the desired architecture to the make targets. For example, "make aosp_arm-eng" which will build the image for the arm environment. However, when I tried "make sdk_arm-eng", it told me that the target did not exist.
Any help would be greatly appreciated.
EDIT:
It looks like Debian has arm/arm64 packages for aapt and other android tools here.
https://packages.debian.org/buster/aapt
However, these will be unable to run on the actual android device it seems because of dependencies.
/android-sdk/ndk-bundle/toolchains/aarch64-linux-android-4.9/prebuilt/linux-x86_64/bin/aarch64-linux-android-readelf -a aapt | grep Shared
Type: DYN (Shared object file)
0x0000000000000001 (NEEDED) Shared library: [libaapt.so.0]
0x0000000000000001 (NEEDED) Shared library: [libutils.so.0]
0x0000000000000001 (NEEDED) Shared library: [libstdc++.so.6]
0x0000000000000001 (NEEDED) Shared library: [libm.so.6]
0x0000000000000001 (NEEDED) Shared library: [libgcc_s.so.1]
0x0000000000000001 (NEEDED) Shared library: [libc.so.6]
0x0000000000000001 (NEEDED) Shared library: [ld-linux-aarch64.so.1]
As we can see below, it requires libgcc libstc++ which isn't packaged with android.
android android-source
add a comment |
I am currently interested in building the Android SDK tools (aapt, adb, etc.) for the ARM-v7a and ARM64-v8a architectures so that it can be run directly on an Android device. Is this possible?
I was able to build the Android SDK tools for x86/x86_64 pretty easily following the documentation.
https://source.android.com/setup
To do this, I performed the following steps.
mkdir ~/WORKING_DIRECTORY
cd ~/WORKING_DIRECTORY
repo init -u https://android.googlesource.com/platform/manifest -b master -g all,-notdefault,tools
repo sync
. build/envsetup.sh
lunch sdk-eng
make sdk
As mentioned above, this will build the android SDK tools for x86/x86_64. I am just not sure how I can build the tools for other architectures.
I am aware that you can specify the desired architecture to the make targets. For example, "make aosp_arm-eng" which will build the image for the arm environment. However, when I tried "make sdk_arm-eng", it told me that the target did not exist.
Any help would be greatly appreciated.
EDIT:
It looks like Debian has arm/arm64 packages for aapt and other android tools here.
https://packages.debian.org/buster/aapt
However, these will be unable to run on the actual android device it seems because of dependencies.
/android-sdk/ndk-bundle/toolchains/aarch64-linux-android-4.9/prebuilt/linux-x86_64/bin/aarch64-linux-android-readelf -a aapt | grep Shared
Type: DYN (Shared object file)
0x0000000000000001 (NEEDED) Shared library: [libaapt.so.0]
0x0000000000000001 (NEEDED) Shared library: [libutils.so.0]
0x0000000000000001 (NEEDED) Shared library: [libstdc++.so.6]
0x0000000000000001 (NEEDED) Shared library: [libm.so.6]
0x0000000000000001 (NEEDED) Shared library: [libgcc_s.so.1]
0x0000000000000001 (NEEDED) Shared library: [libc.so.6]
0x0000000000000001 (NEEDED) Shared library: [ld-linux-aarch64.so.1]
As we can see below, it requires libgcc libstc++ which isn't packaged with android.
android android-source
I am currently interested in building the Android SDK tools (aapt, adb, etc.) for the ARM-v7a and ARM64-v8a architectures so that it can be run directly on an Android device. Is this possible?
I was able to build the Android SDK tools for x86/x86_64 pretty easily following the documentation.
https://source.android.com/setup
To do this, I performed the following steps.
mkdir ~/WORKING_DIRECTORY
cd ~/WORKING_DIRECTORY
repo init -u https://android.googlesource.com/platform/manifest -b master -g all,-notdefault,tools
repo sync
. build/envsetup.sh
lunch sdk-eng
make sdk
As mentioned above, this will build the android SDK tools for x86/x86_64. I am just not sure how I can build the tools for other architectures.
I am aware that you can specify the desired architecture to the make targets. For example, "make aosp_arm-eng" which will build the image for the arm environment. However, when I tried "make sdk_arm-eng", it told me that the target did not exist.
Any help would be greatly appreciated.
EDIT:
It looks like Debian has arm/arm64 packages for aapt and other android tools here.
https://packages.debian.org/buster/aapt
However, these will be unable to run on the actual android device it seems because of dependencies.
/android-sdk/ndk-bundle/toolchains/aarch64-linux-android-4.9/prebuilt/linux-x86_64/bin/aarch64-linux-android-readelf -a aapt | grep Shared
Type: DYN (Shared object file)
0x0000000000000001 (NEEDED) Shared library: [libaapt.so.0]
0x0000000000000001 (NEEDED) Shared library: [libutils.so.0]
0x0000000000000001 (NEEDED) Shared library: [libstdc++.so.6]
0x0000000000000001 (NEEDED) Shared library: [libm.so.6]
0x0000000000000001 (NEEDED) Shared library: [libgcc_s.so.1]
0x0000000000000001 (NEEDED) Shared library: [libc.so.6]
0x0000000000000001 (NEEDED) Shared library: [ld-linux-aarch64.so.1]
As we can see below, it requires libgcc libstc++ which isn't packaged with android.
android android-source
android android-source
edited Jan 19 at 4:04
Jon
asked Jan 19 at 3:23
JonJon
4021617
4021617
add a comment |
add a comment |
1 Answer
1
active
oldest
votes
I ended up just building aapt myself from the AOSP source code. This was much easier than I initially thought. To do this, I modified the build script to build the binaries for the "target" architecture instead of the "host" architecture.
https://android.googlesource.com/platform/frameworks/base/+/master-soong/tools/aapt/Android.bp
The built binaries are here in case anyone else needs them.
https://github.com/thejunkjon/android-aapt-lib
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%2f54263814%2fbuilding-android-sdk-tools-aapt-adb-etc-for-arm-arm64%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 ended up just building aapt myself from the AOSP source code. This was much easier than I initially thought. To do this, I modified the build script to build the binaries for the "target" architecture instead of the "host" architecture.
https://android.googlesource.com/platform/frameworks/base/+/master-soong/tools/aapt/Android.bp
The built binaries are here in case anyone else needs them.
https://github.com/thejunkjon/android-aapt-lib
add a comment |
I ended up just building aapt myself from the AOSP source code. This was much easier than I initially thought. To do this, I modified the build script to build the binaries for the "target" architecture instead of the "host" architecture.
https://android.googlesource.com/platform/frameworks/base/+/master-soong/tools/aapt/Android.bp
The built binaries are here in case anyone else needs them.
https://github.com/thejunkjon/android-aapt-lib
add a comment |
I ended up just building aapt myself from the AOSP source code. This was much easier than I initially thought. To do this, I modified the build script to build the binaries for the "target" architecture instead of the "host" architecture.
https://android.googlesource.com/platform/frameworks/base/+/master-soong/tools/aapt/Android.bp
The built binaries are here in case anyone else needs them.
https://github.com/thejunkjon/android-aapt-lib
I ended up just building aapt myself from the AOSP source code. This was much easier than I initially thought. To do this, I modified the build script to build the binaries for the "target" architecture instead of the "host" architecture.
https://android.googlesource.com/platform/frameworks/base/+/master-soong/tools/aapt/Android.bp
The built binaries are here in case anyone else needs them.
https://github.com/thejunkjon/android-aapt-lib
answered Jan 24 at 3:53
JonJon
4021617
4021617
add a comment |
add a comment |
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%2f54263814%2fbuilding-android-sdk-tools-aapt-adb-etc-for-arm-arm64%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