VIM3L android source code

You continue to incrementally compile and send me the compilation log for a look

make -j10 2>&1 | tee build_vim3l_android.log

Did you execute source build/ && lunch kvim3l-userdebug before compiling make
Is it executed according to the command of the document?
According to the log you sent, the product is not VIM3L

The following is the result of adding lunch to source


On the logs I sent you, I only executed

make -j10 2>&1 | tee build_vim3l_android.log

On the other tests, yes, I executed build/ and lunch kvim3l-userdebug

@xiong.zhang, I tried to send over messages but I had to divide the log and use several ones and reached my maximum messages.

I also tried to send it over Email. Please let me know if you received it.

@xiong.zhang, any news ? I tried to download over and over the sources and still got errors.

It is on the same machine that compiles the ‘old’ android 64 bits (that is the ones I got some months ago).

Looks like that there were somekind of change on the repo.

Sorry, we had a holiday yesterday
After reading the email you sent, it seems that the compilation environment is chaotic, and there is no error message. In this way, follow my steps below to clean up the code environment and recompile.

1.Delete the generated out directory(PATH_YOUR_PROJECT is your root directory khadas9_64_15)

rm -rf out/

2.delete intermediate files(Execute the following command with this)

cd common
make clean
make mrproper
make distclean

3.compile uboot

cd bootloader/uboot
./mk kvim3l

4.compile android

source build/ && lunch kvim3l-userdebug
make -j10 2>&1 | tee build_vim3l_android.log

Didn’t work.

Tested with a repo downloaded Today.

@xiong.zhang, any other idea ? We are in a hurry here.

Do you have a suggestion to reset the repo I have here that works ? In other words, how to copy the .repo folder (of the working one, not this one) to a new folder and extract from there the files ? I tried some commands like repo sync --local-only amoung others, they work partially.

Could be the repo file ? Iḿ using the 2.3.2 that comes inside the .repo


Hello, you uploaded the compiled build_vim3l_android.log to the cloud disk. The email seems to be faulty, and the information in the middle feels like something is missing. You upload it to the cloud disk for us to check

Hello, I read your two logs are this

FAILED: out/target/product/kvim3l/obj/APPS/Chrome_intermediates/package.apk

report error
Check if there is a Google directory in the following directory, and do you still have the log printed out by the repo sync process?

It may be that Google-related things are not synchronized to your local when you synchronize, so there is a problem when compiling and packaging the apk


The directory vendor/amlogic/google is not there.

Btw, I don know if it makes any difference but it is also not on the old one (which compiles). I used to add it somewhere to have Google and PlayStore. But usually I don’t need them.

I downloaded them in the past for 32 bits, if it is the same I can manually add it. But I think it’s better to cut it for now.

About the log of the sync, I copied the screens to a log file and uploaded it to Google Drive.

@JohnGalt Android 9.0编译出错

@JohnGalt You can also execute the following two commands to see if it can be pulled down.

$ cd device/khadas
$ git lfs pull

Thanks @goenjoy

I tried to just delete the preinstalls. Didn’t work.

I put the files back on preinstall and executed your suggested commands. Didn’t work.

About your suggested solution on baidu net disk, is there is other way to download ? Iḿ outside China and it is pretty hard to download from Baidu NetDisk.

@JohnGalt You can also execute the following commands to see if it can be pulled down.
$ repo sync --force-sync -j4 device/khadas
$ cd device/khadas
$ git lfs pull

@JohnGalt @xiong.zhang Additionally, you need to download the Google code. If you don’t want to download, you need to set the Google Code macro definition(BUILD_WITH_GAPPS_CONFIG ) to false.

Great job, @goenjoy , it worked !!!

About BUILD_WITH_GAPPS_CONFIG=true, at my experience it used to compile even if the google files weren’t there (but obviously the goolgle files should be there to add the features to the image).

@xiong.zhang, thank very much for your dedication !

@goenjoy , @xiong.zhang , I have good and bad news. The bad one is that the new version didn’t solve my target problem: the Q key on USB keyboards.

The good news is that I found the cause and solve:

File “device/khadas/kvim3l/files/generic.kl” was missing line “key 16 Q”. Added the line, recompiled and worked.

Only on kvim3l, kvim3 is fine.


Hello, I just checked the code. The definition of key 16 Q is indeed missing on the code vim3l. It may have been missed when I added it at the time. I am sorry for causing trouble to you. According to your description above, the Q key does not work. I was using vim3 at the time. Come to verify, all the problems that have not been verified to the failure of the Q key you said, it is really amazing that you can find and find a solution

@xiong.zhang, no problem, it is part of the game. I really appreciate that you and Khadas team answered fast and we could solve this in just 1 week - which is pretty fast considering the cause.

About the VIM3, I know what you mean because I had exactally the same problem… I made complete tests only on VIM3 and when I start receiving complaints about the ‘Q’ key it took a while to get that it only happened on VIM3L. To make things worst I also made a custom keyboard and wrote a custom firmware for it.

Ate the end of the day, the boards are going pretty well in the field, I mainly use VIM3 and 3L but we are also running tests with VIM4, edge5 and edge2. This was a small issue quickly solved.