h1. Dependencies h2. Stub This page is a stub, feel free to improve it h3. Replicant 6.0 |_. Dependency |_. Working version |_. Potentially compatible versions |_. Debian 9 |_. Guix |_. PureOS |_. Parabola |_. Trisquel 7 |_. Trisquel 8 |_. Trisquel 9[1] | |_. Android SDK: API Level 23 (Android 6) | * android-sdk(25.0.0) * android-sdk-platform-23(6.0.1) | ? | OK | Absent (NDK only) as October 2018) | OK | Absent as October 2018 | ? | * android-sdk(24.3.3) * no android-sdk-platform-23 (why? needed?) | ? | |_. gcc | * gcc(6.3.0) | ? | OK:gcc(6.3.0) | OK: gcc 4-9, with gcc-5 the default | OK:gcc-6(6.4.0) | ? | ? | * gcc-5 * gcc-4.9 * gcc-4.8 * gcc-4.7 | * gcc-4.8 * gcc-5 * gcc-6 * gcc-7 * gcc-8 | |_. Java (jdk and jre) | * openjdk-8-jdk * openjdk-8-jre | 7 | OK:openjdk 8 | OK: Icedtea 1-3 (=OpenJDK 6-7), OpenJDK 9-11 | OK:openjdk 8 | openjdk 7, 8, 10| 7, 8 | 8, 9 | * openjdk-8-jdk * openjdk-8-jre | |_. i686 packages feed support | * zlib1g-dev:i386 | ? | OK | ? | No 32bit packages | ? | ? | ? | ? | |_. 32bit libc | * libc6-dev-i386 * libc6-i386 | ? | OK | OK: glibc defined in gnu/packages/base.scm | OK | ? | ? | ? | ? | |_. lib32 packages | * lib32z1-dev * lib32readline-dev * lib32ncurses5-dev | ? | OK | ? | OK | ? | ? | ? | ? | |_. ? | libemma-java | ? | OK | ? | missing package (why?) | ? | ? | ? | ? | |_. ? | * libandroidsdk-ddmlib-java * libandroidsdk-sdklib-java | ? | OK | ? | missing package (why?) | ? | ? | ? | ? | |_. ? | libgradle-android-plugin-java:2.2.2-1 | ? | OK | ? | ? | Missing | Missing | Missing | ? | |_. Status | | | Working but not FSDG compliant | No SDK (NDK only) | Few missing packages | No SDK, no NDK | Based on Ubuntu 14.04 which can build AOSP 6 | The toolchain builds with lots of hacks | ? | fn1^. "Trisquel 9 Pre-built Images":http://jenkins.trisquel.info/makeiso-etiona/iso/ h3. AOSP 6.0 |_. Dependency |_. Version |_. Providers | | Java | 7.0 | Debian 9 | | GNU/Linux distribution | Ubuntu 14.04 | Trisquel 7.0 | h2. Distributions h3. Debian 9 packages versions "Debian 'build' dependencies:":https://redmine.replicant.us/projects/replicant/wiki/BuildDependenciesInstallation |_. Dependency |_. Version | | gcc | | | binutils | | | llvm-defaults | | "Debian dependencies:":https://redmine.replicant.us/projects/replicant/wiki/BuildDependenciesInstallation |_. Dependency |_. Version | | gcc-arm-none-eabi | | | cmake | | | python-dev | | | swig | | | ant | | | bc | | | proguard | | | maven-debian-helper | | | libemma-java | | | libasm4-java | | | libguava-java | | | libnb-platform18-java | | | libnb-org-openide-util-java | | | libandroidsdk-ddmlib-java | | | libmaven-source-plugin-java | | | libfreemarker-java | | | libmaven-javadoc-plugin-java | | | ca-cacert | | | curl | | | gawk | | | libgmp3-dev | | | libmpfr-dev | | | libmpc-dev | | | git-core | | | gperf | | | libncurses-dev | | | squashfs-tools | | | pngcrush | | | zip | | | zlib1g-dev | | | lzma | | | libc6-dev-i386 | | | g++-multilib | | | lib32z1-dev | | | lib32readline-dev | | | lib32ncurses5-dev | | | zlib1g-dev:i386 | | | xsltproc | | | python-mako | | | schedtool | | | gradle | | | dirmngr | | | libandroidsdk-sdklib-java | | | eclipse-jdt | | | libgradle-android-plugin-java | 2.2.2-1 | | android-sdk-build-tools | | | android-sdk-platform-23 | | | aapt | | | lzop | | h3. Gradle TODO: * Does "Gradle":https://en.wikipedia.org/wiki/Gradle depends on gradle for being able to built Android[1]? * Does gradle or other dependencies really depends on scala? * if so where are the efforts to build scala without scala? Answers from a Guix perspective: * Julien Lepiller is mainly working on bringing Gradle/Scala into Guix. "In his Guix development project":https://framagit.org/tyreunom/guix-more/tree/master#adding-gradle-and-scalasbt he writes that Gradle depends on Scala/SBT without mentioning the exact blocker. * Scala depends on Scala to bootstrap. If you go down the long bootstrap chain you will end up at "Pizza":https://en.wikipedia.org/wiki/Pizza_(programming_language). It is unsure if you can successfully bootstrap Scala from Pizza from Java. * Julien wrote "this blog post":https://lepiller.eu/fr/scala-et-sbt-bient%C3%B4t-dans-guix-.html (French) about the whole Android/Scala/Kotlin bootstrapping problem. * "Scabo":https://framagit.org/tyreunom/scabo is The Scala Bootstrapping Project, Julien's attempt to bootstrap Scala from Java. * Scala 3.0 will be the new "Dotty project":https://dotty.epfl.ch/, see also "this blog post":https://www.scala-lang.org/blog/2018/04/19/scala-3.html. I have not investigated if this project cleans up bootstrapping or will make it worse. fn1. "A debian build log of gradle":https://buildd.debian.org/status/fetch.php?pkg=gradle&arch=all&ver=4.4.1-4&stamp=1547515176&raw=0 "Merged Build-Depends: [...] gradle (>= 3.4)[...]" h3. References * https://source.android.com/setup/build/older-versions * https://source.android.com/setup/build/requirements