Rebuilding Android LK - android

We are trying to bringup a new MIPI display that we are using for our smart glasses solution. To do this we have roughly followed the guide provided by Qualcomm: https://developer.qualcomm.com/download/db410c/dsi-display-porting-guide-linux-android.pdf
The method of porting a new display required that we modify the Android bootloader (Little Kernel) with the new configuration for the display we are using. This allows us to select the new display using the command:
$ fastboot oem select-display-panel <display-name>
The problem is that to add this new configuration to LK we need to rebuild the image (emmc_appsboot.mbn). This has been unsuccessful so far.
We found a file within the LK directory that is called AndroidBoot.mk. A comment in this file says “#Android makefile to build lk bootloader as a part of Android Build”
According to that comment, it seems that LK should be built as a part of Android build, however we cannot seem to do so. Is this thinking correct?
As per the LK github build instructions, we've also tried running
$ make msm8909
from the LK directory but we are getting the following error:
unrecognised option '-mcpu=cortex-a8'
I suspect this may be due to missing part of the toolchain as I've had to manually add arm-eabi-gcc to the path variable.
Can anyone provide any information on what command we need to use or what process needs to be followed in order to generate a new LK bootloader file with the updated config?

The problem was due to an incorrect PATH variable set. I fixed the issue by adding the correct path: ".../prebuilts/gcc/linux-x86/arm/arm-eabi-4.8/bin/" to the .bashrc file and re-logging in.

Related

How to solve this valgrind issue?

I'm trying to run valgrind on an android OS but it couldn't start and it shows this errors that i couldn't find how to solve:
valgrind: Startup or configuration error:
Can't create client cmdline file in /tmp/valgrind_proc_87_cmdline_876a7612
valgrind: Unable to start up properly. Giving up.
Thanks in advance !
I tried to change the default path that valgrind use and which is shown on the error log but i couldn't make it
The problem is happening in the code where the Valgrind host is creating a fake /proc/<pid>/cmdline.
This file should be created in the location given by the first valid item in the following list:
The TMPDIR environment variable
The constant VG_TMPDIR that gets baked into the binary via a configure time option. This defaults to /tmp but can be overriden using configure --with-tmpdir=/your/tmp/dir. That would require that you get the Valgrind source and configure and build it. It is possible that you are using a package that was built using this option and is not compatible with your system.
Last resort, "/tmp"
All of the above checks just test that the string is non-null and not empty. They do not test for the existance and accessibility of the directory. That gets determined by the Valgrind version of mkstemp and the error message comes from 'valgrind_main'.
Valgrind needs to create a file TMPDIR/valgrind_proc_PID_cmdline_RAND where TMPDIR is described above, PID is the pid of the Valgrind process and RAND is a random number.
There is at least one other similar files that get created, for auxv.
There are no Valgrind command line options to turn off the creation of these files.

Using arcoreimg from command line

I need to evaluate the image quality of several images using the arcoreimg tool to process a failed build in Unreal using blueprints.
I'm running on a Mac, but far more familiar with a PC. I've tried the following:
./arcoreimg eval-img --input_image_path=/Users/scull/Documents/Proj/Content/images/s_recog_turl.png
No such file or directory
I have located the ptdbtool_macos_lipobin tool in the ~Library and tried running it from there but to no avail:
/Users/Shared/Epic Games/UE_4.21/Engine/Plugins/Runtime/GoogleARCore/Binaries/ThirdParty/Google/ARCoreImg/Mac
Can anyone point out where I'm going wrong?
To my future self:
Use
./ptdbtool_macos_lipobin eval-img --input_image_path=/Users/scull/Documents/Proj/Content/images/s_recog_turl.png
Looks like someone at Android forgot to rename the executable to arcoreimg.

System can't find specifed path ndkbuild in android

I want to build an ocr app in android.For that i am using tessaract library.I am following this turorial ocr tutoial it says follow below steps
Download the NDK & extract to C:\ drive-Done
Set NDK Path & Android SDK path to PATH variable in Enviorment Variable.-Done
Download tessaract library and extract it to C:-Done
open command line & go inside tessract folder ibn downloaded library.-
Write ndk-build-Not Done
When i write ndk-build it says the system can't find the specified path.
Please tell me how to resolve this issue.I have already spent lot of hard time on this.
Thanks in advance.
If you re-read the link you posted, you may notice this line from the author:
Attention: if you fail at any of the above steps, you are not ready for this shit yet. Better grab an introduction to android development course, read a book, then come back to this tutorial. You’ll just waste time and nerves and you’ll bitch about it in the comments that this crash, this doesn’t work. (PS. no, I will not send you the source code on your email, stop spamming k thx.)
You should seriously consider his advice - working with the Android NDK only gets more difficult from here.
You're probably getting that error message because cmd couldn't find the ndk-build program, which is located inside the root of android-ndk-r10e. Possible causes:
You made an error when editing your PATH variable - make sure each file path is separated by a semicolon and that you provided the full path to your NDK install.
Your PATH is too long - the max length is 260 characters. See this page for more info. tl;dr: prefix \?\ to your PATH to get around this length limit.
You had cmd open when you set the variables - try restarting the cmd
program or even restarting your machine.

missing a command building android kernel

I have been trying to build an android kernel for a certain device, the Huawei Vitria, they finally uploaded their kernel source about 2 months ago so I try to build it the normal way which fails so I fix the main errors I see and get the kernel to build finally but, then I notice one error while building. I look into this file and see that they are using a weird way of building I think instead of the normal defconfigs, using a generic defconfig then a configuration file to configure their devices ontop of that(they've done this before but not to this extent), which leads me to think I'm missing a command to select the device config ontop of the defconfig to set up the drivers, but don't know what command was used.
So might there be a way to find out the command by looking at these two files
https://raw.githubusercontent.com/KainXS/android_kernel_huawei_y301a2/jellybean/drivers/huawei/hsad/parse_product.pl
https://raw.githubusercontent.com/KainXS/android_kernel_huawei_y301a2/jellybean/drivers/huawei/hsad/parse_product_id.pl
thanks
I'm not sure how much help this is, but the first command seems to want to be called with a parameter of a path to an XML file.
./parse_product.pl /ab/cd/hw_xxy_configs.xml
PRODUCT: xxy
reads: '/ab/cd/hw_xxy_configs.xml'
It pulls out some data from that file and pastes it into a .c file which presumably goes into the build configuration.
So, you're looking for an XML file containing your product-name.
The second file calls the first repeatedly to generate a set of .c files. Now - this second script takes an XML file as an argument, but I'm afraid I can't tell what it might be called. The file looks like it should contain product names and board-ids if that is any help.

mk:1: *** missing separator. android NDK

I am trying to compile some source code but when i run the command
make -f android-9-armv7.mk
I get the following error
android-9-armv7.mk:1: * missing separator. Stop.
This is the contents of the file above:
And I have set the IMAGINE_PATH variable as well, cant seem to figure it out.
link ../imagine/make/shortcut/common-builds/android-9-armv7.mk
Compiling instructions
http://code.google.com/p/emu-ex-plus-alpha/wiki/Compiling
Imagine is locaed at C:/Imagine
I don't know where you've taken the sources, but all the android-9-armv7.mk files from different projects on that git has following content:
../imagine/make/shortcut/common-builds/android-9-armv7.mk
...there is no link keyword, which probably is why you get this error.
Also, please be informed that you're building this on Windows machine while documentation clearly states that it's supported only on Linux and Mac OS X.

Categories

Resources