[Replicant] Building Replicant 10
Tobias Tefke
t.tefke at stud.fh-sm.de
Wed Jun 24 07:25:04 UTC 2020
Hi,
I tried to build Replicant 10 during the past few days and encountered
some issues.
In this mailing list submission I'd like to describe these issues and
provide possible solutions for them.
All patches that need to be made can be found in the attachments.
1) The first issues occured when selecting the device Replicant should
be built for. This issue was caused because the devices were not
correctly integrated in the build system. I wrote patches for i9300 and
i9305 that solve this problem.
2) Some issues were undeclared properties (like you can find them in the
build.prop file). These properties were declared in repositories from
LineageOS that Replicant didn't fork. Rebasing all forked directories
helped me to solve these errors, which are a result of the divergence of
the repositories. The manifest needs to be rebased, too.
3) When building mesa, errors like "using <name of the program> is not
allowed" occurred. I found out that these errors happen because of some
limits Soong (a part of the build system) introduces. Soong uses a
configuration list containing programs that can be used for building
Android and because the mesa build needs some programs that are not on
the list, an error message is being displayed. However, the solution is
simple: just add the names of the programs to that list. In the
attachments you can find the patch allowing the programs needed for the
mesa builds. Unfortunately, we need to fork build/soong for introducing
this patch permanently.
4) Another error occurring during the mesa build was an ImportError
raised by Python, stating a module named 'mako' is not being found.
Installing mako using apt or pip did not work for me. I needed to
download mako from PyPI and copy the module to
development/python-packages. However, this solution would require us to
fork the development directory and I think there are better solutions. A
reason that installing mako did not work could arise if Android uses its
own python environment, but I don't know if that actually is the case.
If you have a better solution for that problem, please let me know.
After making all changes described above I was able to compile Replicant
10 and flash it to an i9300 in Dowload Mode using heimdall.
Yours,
Tobias
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0001-i9300-replace-vendorsetup.sh-by-COMMON_LUNCH_CHOICES.patch
Type: text/x-diff
Size: 1504 bytes
Desc: not available
URL: <http://lists.osuosl.org/pipermail/replicant/attachments/20200624/02053f70/attachment.patch>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0002-i9300-properly-inherit-from-LineageOS.patch
Type: text/x-diff
Size: 861 bytes
Desc: not available
URL: <http://lists.osuosl.org/pipermail/replicant/attachments/20200624/02053f70/attachment-0001.patch>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0001-i9305-replace-vendorsetup.sh-by-COMMON_LUNCH_CHOICES.patch
Type: text/x-diff
Size: 1458 bytes
Desc: not available
URL: <http://lists.osuosl.org/pipermail/replicant/attachments/20200624/02053f70/attachment-0002.patch>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0001-Soong-allow-tools-for-building-mesa.patch
Type: text/x-diff
Size: 973 bytes
Desc: not available
URL: <http://lists.osuosl.org/pipermail/replicant/attachments/20200624/02053f70/attachment-0003.patch>
More information about the Replicant
mailing list