Gts210vewifi build - Problem with dex2oat

hi,

sadly there are no (community) builds available for gts210vewifi (Galaxy Tab S2) https://images.ecloud.global/community/gts210vewifi/ .
So I wanted to build it by my own.
But I got an error, which I couldn’t fix. :frowning:

my command:

docker run --rm -ti \
-v "./src:/srv/src" \
-v "./zips:/srv/zips" \
-v "./logs:/srv/logs" \
-v "./ccache:/srv/ccache" \
-e "MINIMAL_APPS=true" \
-e "BRANCH_NAME=v1-pie" \
-e "DEVICE_LIST=gts210vewifi" \
-e "REPO=https://gitlab.e.foundation/e/os/releases.git" \
registry.gitlab.e.foundation:5000/e/os/docker-lineage-cicd:community

I have even set 2 more env variable, but it didn’t help.

-e "CPU_SSE42=false" \
-e "ART_BOOT_IMAGE_EXTRA_ARGS='--runtime-arg -verbose:verifier'" \

I have even tried different /e/os and Android Releases with the same output.
I read that it could be something with the Kernel Version, but downgrading didn’t work either.

I always get (probably at the end) this error:

ERROR: Dex2oat failed to compile a boot image. It is likely that the boot classpath is inconsistent. Rebuild with ART_BOOT_IMAGE_EXTRA_ARGS=--runtime-arg -verbose:verifier to see verification errors.
[ 98% 82430/83402] target dex2oat: /srv/src/PIE/out/target/product/gts210vewifi/dex_bootjars/system/framework/arm/boot.art
FAILED: /srv/src/PIE/out/target/product/gts210vewifi/dex_bootjars/system/framework/arm/boot.art 
/bin/bash -c "(mkdir -p /srv/src/PIE/out/target/product/gts210vewifi/symbols/system/framework/arm/ ) && (rm -f /srv/src/PIE/out/target/product/gts210vewifi/dex_bootjars/system/framework/arm//*.art /srv/src/PIE/out/target/product/gts210vewifi/dex_bootjars/system/framework/arm//*.oat /srv/src/PIE/out/target/product/gts210vewifi/dex_bootjars/system/framework/arm//*.art.rel ) && (rm -f /srv/src/PIE/out/target/product/gts210vewifi/symbols/system/framework/arm//*.art ) && (rm -f /srv/src/PIE/out/target/product/gts210vewifi/symbols/system/framework/arm//*.oat ) && (rm -f /srv/src/PIE/out/target/product/gts210vewifi/symbols/system/framework/arm//*.art.rel ) && (ANDROID_LOG_TAGS=\"*:v\" /srv/src/PIE/out/host/linux-x86/bin/dex2oatd --runtime-arg -Xms64m             --runtime-arg -Xmx64m           --compiler-filter=speed-profile --profile-file=/srv/src/PIE/out/target/product/gts210vewifi/dex_bootjars/system/framework/boot.prof               --dex-file=/srv/src/PIE/out/target/common/obj/JAVA_LIBRARIES/core-oj_intermediates/javalib.jar --dex-file=/srv/src/PIE/out/target/common/obj/JAVA_LIBRARIES/core-libart_intermediates/javalib.jar --dex-file=/srv/src/PIE/out/target/common/obj/JAVA_LIBRARIES/conscrypt_intermediates/javalib.jar --dex-file=/srv/src/PIE/out/target/common/obj/JAVA_LIBRARIES/okhttp_intermediates/javalib.jar --dex-file=/srv/src/PIE/out/target/common/obj/JAVA_LIBRARIES/bouncycastle_intermediates/javalib.jar --dex-file=/srv/src/PIE/out/target/common/obj/JAVA_LIBRARIES/apache-xml_intermediates/javalib.jar --dex-file=/srv/src/PIE/out/target/common/obj/JAVA_LIBRARIES/ext_intermediates/javalib.jar --dex-file=/srv/src/PIE/out/target/common/obj/JAVA_LIBRARIES/framework_intermediates/javalib.jar --dex-file=/srv/src/PIE/out/target/common/obj/JAVA_LIBRARIES/telephony-common_intermediates/javalib.jar --dex-file=/srv/src/PIE/out/target/common/obj/JAVA_LIBRARIES/voip-common_intermediates/javalib.jar --dex-file=/srv/src/PIE/out/target/common/obj/JAVA_LIBRARIES/ims-common_intermediates/javalib.jar --dex-file=/srv/src/PIE/out/target/common/obj/JAVA_LIBRARIES/android.hidl.base-V1.0-java_intermediates/javalib.jar --dex-file=/srv/src/PIE/out/target/common/obj/JAVA_LIBRARIES/android.hidl.manager-V1.0-java_intermediates/javalib.jar --dex-file=/srv/src/PIE/out/target/common/obj/JAVA_LIBRARIES/framework-oahl-backward-compatibility_intermediates/javalib.jar --dex-file=/srv/src/PIE/out/target/common/obj/JAVA_LIBRARIES/android.test.base_intermediates/javalib.jar                --dex-location=/system/framework/core-oj.jar --dex-location=/system/framework/core-libart.jar --dex-location=/system/framework/conscrypt.jar --dex-location=/system/framework/okhttp.jar --dex-location=/system/framework/bouncycastle.jar --dex-location=/system/framework/apache-xml.jar --dex-location=/system/framework/ext.jar --dex-location=/system/framework/framework.jar --dex-location=/system/framework/telephony-common.jar --dex-location=/system/framework/voip-common.jar --dex-location=/system/framework/ims-common.jar --dex-location=/system/framework/android.hidl.base-V1.0-java.jar --dex-location=/system/framework/android.hidl.manager-V1.0-java.jar --dex-location=/system/framework/framework-oahl-backward-compatibility.jar --dex-location=/system/framework/android.test.base.jar                --oat-symbols=/srv/src/PIE/out/target/product/gts210vewifi/symbols/system/framework/arm/boot.oat          --oat-file=/srv/src/PIE/out/target/product/gts210vewifi/dex_bootjars/system/framework/arm/boot.oat              --oat-location=/system/framework/arm/boot.oat           --image=/srv/src/PIE/out/target/product/gts210vewifi/dex_bootjars/system/framework/arm/boot.art --base=0x70000000                 --instruction-set=arm           --instruction-set-variant=cortex-a53            --instruction-set-features=default                --android-root=/srv/src/PIE/out/target/product/gts210vewifi/system              --runtime-arg -Xnorelocate --compile-pic                --no-generate-debug-info --generate-build-id              --multi-image --no-inline-from=core-oj.jar              --abort-on-hard-verifier-error          --abort-on-soft-verifier-error           --generate-mini-debug-info  '--runtime-arg -verbose:verifier'            || ( echo \"ERROR: Dex2oat failed to compile a boot image. It is likely that the boot classpath is inconsistent. Rebuild with ART_BOOT_IMAGE_EXTRA_ARGS=\"--runtime-arg -verbose:verifier\" to see verification errors.\" ; false ) &&    ANDROID_LOG_TAGS=\"*:v\" ANDROID_ROOT=/srv/src/PIE/out/target/product/gts210vewifi/system ANDROID_DATA=/srv/src/PIE/out/target/product/gts210vewifi/dex_bootjars/system/framework/arm/ /srv/src/PIE/out/host/linux-x86/bin/patchoatd              --input-image-location=/srv/src/PIE/out/target/product/gts210vewifi/dex_bootjars/system/framework/boot.art              --output-image-relocation-directory=/srv/src/PIE/out/target/product/gts210vewifi/dex_bootjars/system/framework/arm/               --instruction-set=arm           --base-offset-delta=0x10000000 )"
dex2oatd E 05-29 18:27:56 406351 406351 dex2oat.cc:199] Failed to parse command line: Unknown argument: --runtime-arg -verbose:verifier
dex2oatd E 05-29 18:27:56 406351 406351 dex2oat.cc:199] Command: /srv/src/PIE/out/host/linux-x86/bin/dex2oatd --runtime-arg -Xms64m --runtime-arg -Xmx64m --compiler-filter=speed-profile --profile-file=/srv/src/PIE/out/target/product/gts210vewifi/dex_bootjars/system/framework/boot.prof --dex-file=/srv/src/PIE/out/target/common/obj/JAVA_LIBRARIES/core-oj_intermediates/javalib.jar --dex-file=/srv/src/PIE/out/target/common/obj/JAVA_LIBRARIES/core-libart_intermediates/javalib.jar --dex-file=/srv/src/PIE/out/target/common/obj/JAVA_LIBRARIES/conscrypt_intermediates/javalib.jar --dex-file=/srv/src/PIE/out/target/common/obj/JAVA_LIBRARIES/okhttp_intermediates/javalib.jar --dex-file=/srv/src/PIE/out/target/common/obj/JAVA_LIBRARIES/bouncycastle_intermediates/javalib.jar --dex-file=/srv/src/PIE/out/target/common/obj/JAVA_LIBRARIES/apache-xml_intermediates/javalib.jar --dex-file=/srv/src/PIE/out/target/common/obj/JAVA_LIBRARIES/ext_intermediates/javalib.jar --dex-file=/srv/src/PIE/out/target/common/obj/JAVA_LIBRARIES/framework_intermediates/javalib.jar --dex-file=/srv/src/PIE/out/target/common/obj/JAVA_LIBRARIES/telephony-common_intermediates/javalib.jar --dex-file=/srv/src/PIE/out/target/common/obj/JAVA_LIBRARIES/voip-common_intermediates/javalib.jar --dex-file=/srv/src/PIE/out/target/common/obj/JAVA_LIBRARIES/ims-common_intermediates/javalib.jar --dex-file=/srv/src/PIE/out/target/common/obj/JAVA_LIBRARIES/android.hidl.base-V1.0-java_intermediates/javalib.jar --dex-file=/srv/src/PIE/out/target/common/obj/JAVA_LIBRARIES/android.hidl.manager-V1.0-java_intermediates/javalib.jar --dex-file=/srv/src/PIE/out/target/common/obj/JAVA_LIBRARIES/framework-oahl-backward-compatibility_intermediates/javalib.jar --dex-file=/srv/src/PIE/out/target/common/obj/JAVA_LIBRARIES/android.test.base_intermediates/javalib.jar --dex-location=/system/framework/core-oj.jar --dex-location=/system/framework/core-libart.jar --dex-location=/system/framework/conscrypt.jar --dex-location=/system/framework/okhttp.jar --dex-location=/system/framework/bouncycastle.jar --dex-location=/system/framework/apache-xml.jar --dex-location=/system/framework/ext.jar --dex-location=/system/framework/framework.jar --dex-location=/system/framework/telephony-common.jar --dex-location=/system/framework/voip-common.jar --dex-location=/system/framework/ims-common.jar --dex-location=/system/framework/android.hidl.base-V1.0-java.jar --dex-location=/system/framework/android.hidl.manager-V1.0-java.jar --dex-location=/system/framework/framework-oahl-backward-compatibility.jar --dex-location=/system/framework/android.test.base.jar --oat-symbols=/srv/src/PIE/out/target/product/gts210vewifi/symbols/system/framework/arm/boot.oat --oat-file=/srv/src/PIE/out/target/product/gts210vewifi/dex_bootjars/system/framework/arm/boot.oat --oat-location=/system/framework/arm/boot.oat --image=/srv/src/PIE/out/target/product/gts210vewifi/dex_bootjars/system/framework/arm/boot.art --base=0x70000000 --instruction-set=arm --instruction-set-variant=cortex-a53 --instruction-set-features=default --android-root=/srv/src/PIE/out/target/product/gts210vewifi/system --runtime-arg -Xnorelocate --compile-pic --no-generate-debug-info --generate-build-id --multi-image --no-inline-from=core-oj.jar --abort-on-hard-verifier-error --abort-on-soft-verifier-error --generate-mini-debug-info --runtime-arg -verbose:verifier

Does anyone have an idea what I can try next?

Thanks!

If you search the forum for

CPU_SSE42=false

I think you will find this error covered.

I guess docker cannot recognise environmental variables you specify.

1 Like

I made some unofficial builds for the S2. Most stable is A11 based /e/OS-R

Also A13 based /e/OS-T is available, however not that stable as compared to R. Just search here in ther forum

1 Like

Thanks for your reply.

I have already searched the Forum, but nothing worked.
I have even changed the VM CPU Type.

How can I set such variables?
Are there changes in the Docker Image necessary?
Which process needs to see the variable? And what are the parents?

thank you for your reply.

I already found your builds. Thank you.

I’d like to learn more about the Android Universe and hopefully extend the list of supported devices. Therefore I like to start with one of my old devices which is running lineageOS / e/OS for a long time.

Personally I like to see more build for devices, preferably official, but also community.

You are running docker on a VM?

Anyway I don’t do docker nor debug docker. When you say nothing worked I guess you did not try to follow @ronnz98’s guide(s) where it clearly does work.

I think you are on the right lines in asking this.

Some part of my brain guesses that this export is required at a higher level. When I used the term “environmental variable” I guess I was pointing to the way you used -e but I think CPU_SSE42=false is still undefined in the build process, perhaps study Set environment variables | Docker Docs. Separately, an online search may reveal more of the history of the error.

It is so much easier just not to use docker especially for non current builds.

So if you are interested to build yourself I would start with A10/A11 based S2 sources:
https://xdaforums.com/t/rom-unofficial-10-lineageos-17-1-t713-t719-t813-t819.4070161/

If you want to use a more recent version you need patches to work on later as A11 due to eBPF support. You can find patches for A13 here:

However, A13 is not as stable as A11 for Tab S2