Totally new to ROM building! Trying to build slim for the LG K20 Plus TP260 (MSM8917)
I've downloaded LG's source and have tried to assimilate it into Slim's source (basically merging everything but the frameworks folder) and am now trying to build.
But this is the Ninja error I get:
ninja: Entering directory `.'
ninja: error: '/home/android/Desktop/cheap_android_love/out/target/product/generic_arm64/obj/KERNEL_OBJ/usr', needed by '/home/android/Desktop/cheap_android_love/out/target/product/generic_arm64/obj/SHARED_LIBRARIES/libtinyalsa_intermediates/mixer.o', missing and no known rule to make it
build/core/ninja.mk:151: recipe for target 'ninja_wrapper' failed
make: *** [ninja_wrapper] Error 1
I've checked the directory, and the "obj" folder doesn't even exist, so this error seems impossible to me... What files do I need to look at?
After changes to BoardConfig.mk and Kernel.mk makefiles regarding target kernel config and target source, everything goes together fine!
Related
I'm trying to build AOSP for a supported device (sony Xperia z5) (aosp_mips64-eng)
I follow the instruction here: https://forum.xda-developers.com/t/guide-how-to-build-aosp-pie-custom-rom-for-xperia-devices.3921641/
After download the source, Initializing device type for ROM building. I Encounter an error while trying to build the custom ROM:
I there anything i could do? Have I done something wrong? I'm pretty sure i did the previous steps correctly.
============================================
ninja: no work to do.
ninja: no work to do.
No need to regenerate ninja file
No need to regenerate ninja file
ninja: error: 'device/generic/common/nfc/libnfc-nci.conf', needed by 'out/target/product/generic/system/etc/libnfc-nci.conf', missing and no known rule to make it
10:29:40 ninja failed with: exit status 1
build/make/core/main.mk:21: recipe for target 'run_soong_ui' failed
make: *** [run_soong_ui] Error 1
i keep getting this error when it builds the kernel module. i tried to go to the directory to fix it. (built-in.o) it didnt work and caused more problems with the build/kernel directory folder.
LD drivers/input/touchscreen/built-in.o
arm-eabi-ld: cannot find /home/taco/android/system/kernel/lge/msm8909/drivers/input/touchscreen/ft_gesture_lib.a: No such file or directory
/home/taco/android/system/kernel/lge/msm8909/scripts/Makefile.build:387: recipe for target 'drivers/input/touchscreen/built-in.o' failed
make[5]: *** [drivers/input/touchscreen/built-in.o] Error 1
/home/taco/android/system/kernel/lge/msm8909/scripts/Makefile.build:455: recipe for target 'drivers/input/touchscreen' failed
make[4]: *** [drivers/input/touchscreen] Error 2
/home/taco/android/system/kernel/lge/msm8909/scripts/Makefile.build:455: recipe for target 'drivers/input' failed
make[3]: *** [drivers/input] Error 2
/home/taco/android/system/kernel/lge/msm8909/Makefile:815: recipe for target 'drivers' failed
make[2]: *** [drivers] Error 2
Makefile:130: recipe for target 'sub-make' failed
make[1]: *** [sub-make] Error 2
make[1]: Leaving directory '/home/taco/android/system/kernel/lge/msm8909'
build/core/tasks/kernel.mk:286: recipe for target 'TARGET_KERNEL_BINARIES' failed
make: *** [TARGET_KERNEL_BINARIES] Error 2
make: Leaving directory '/home/taco/android/system'
#### make failed to build some targets (11:59 (mm:ss)) ####
taco#taco-VirtualBox:~/android/system$
Usually it happens when repo manifest uses projects of incompatible version, say if you take CM13 manifest and add msm8909 drivers which were built against some older kernel version than that used in CM13 manifest.
Are you building an existing official or unofficial CM port for your device, or do you assemble a new port? In any case you should provide more info about your repo manifest and CM port if you use any.
If the issue is that I described, it is usually hard to fix, as it means porting driver code to a newer kernel version. This work is usually made by people maintaining driver's code, it needs proper experience. Of course there's a chance that it may need just cosmetic changes, but it's a rare case.
In your repo manifest check what git repository is used for the driver, then check for what kernel version that code was used (it's usually can be seen in git tags/branches). There's a chance that the repo has an updated branch for kernel version you need, but your repo manifest takes an old version.
Im trying to build AOSP 5.1.51, I machine meets requirements
Following the instructions but the make -j4 never build succesfully.
Recently trying to lunch aosp_mips-eng terminates with
target C++: v8_tools_gyp_v8_base_gyp <= external/chromium_org/v8/src/mips/lithium-mips.cc
In file included from external/chromium_org/v8/src/mips/lithium-codegen-mips.h:11:0, from external/chromium_org/v8/src/mips/lithium-codegen-mips.cc:36:
external/chromium_org/v8/src/mips/lithium-mips.h: In member function 'bool v8::internal::LCodeGen::GeneratePrologue()':
external/chromium_org/v8/src/mips/lithium-mips.h:2718:7: internal compiler error: Segmentation fault
class LChunkBuilder FINAL : public LChunkBuilderBase {
^
Please submit a full bug report, with preprocessed source if appropriate.
See <http://source.android.com/source/report-bugs.html> for instructions.
make: *** [/home/userAndroid/Builds/AOSP/target/product/generic_mips/obj/STATIC_LIBRARIES/v8_tools_gyp_v8_base_gyp_intermediates/v8/src/mips/lithium-codegen-mips.o] Error 1
make: *** Waiting for unfinished jobs....
#### make failed to build some targets (21:29 (mm:ss)) ####
And it ends there :(
After so many tries, I ended up removing the entire source repo, fetch everything and build. Now everything works way better than before. I have not read everything to see if its the introduction of jackor things are better with the latest branch of android source.
If you are struggling with your build, this could be the way to go.
I am looking at the example application for the Qt Sensors that comes with qt and I've complied it on windows with no errors, but as soon as I try to put it onto my android I get this compile error.
10:41:51: Running steps for project qmlqtsensors...
10:41:51: Configuration unchanged, skipping qmake step.
10:41:51: Starting: "C:\Qt\Qt5.2.1\Tools\mingw48_32\bin\mingw32-make.exe"
mingw32-make: Nothing to be done for 'first'.
10:41:52: The process "C:\Qt\Qt5.2.1\Tools\mingw48_32\bin\mingw32-make.exe" exited normally.
10:41:52: Removing directory C:\Qt\Qt5.2.1\5.2.1\android_x86\examples\sensors\build-qmlqtsensors-Android_for_armeabi_v7a_GCC_4_8_Qt_5_2_1-Release\android-build
10:41:52: Starting: "C:\Qt\Qt5.2.1\Tools\mingw48_32\bin\mingw32-make.exe" INSTALL_ROOT="C:\Qt\Qt5.2.1\5.2.1\android_x86\examples\sensors\build-qmlqtsensors-Android_for_armeabi_v7a_GCC_4_8_Qt_5_2_1-Release\android-build" install
copy /y "libqmlqtsensors.so" "C:\Qt\Qt5.2.1\5.2.1\android_x86\examples\sensors\build-qmlqtsensors-Android_for_armeabi_v7a_GCC_4_8_Qt_5_2_1-Release\android-build\libs\armeabi-v7a\libqmlqtsensors.so"
1 file(s) copied.
The full path of C:C:\Qt\Qt5.2.1\5.2.1\android_x86\examples\sensors\build-qmlqtsensors-Android_for_armeabi_v7a_GCC_4_8_Qt_5_2_1-Release\android-build\Qt\Qt5.2.1\5.2.1\android_armv7\examples\qtsensors\qmlqtsensors is too long.
makefile:873: recipe for target 'install_app' failed
mingw32-make: *** [install_app] Error 1
10:41:53: The process "C:\Qt\Qt5.2.1\Tools\mingw48_32\bin\mingw32-make.exe" exited with code 2.
Error while building/deploying project qmlqtsensors (kit: Android for armeabi-v7a (GCC 4.8, Qt 5.2.1))
When executing step 'Copy application data'
10:41:53: Elapsed time: 00:02.
I've looked on google with no avail. Can anyone help me with this problem please?
It seems the error or at least one of them is because the path to your file qmlqtsensors is too long.
The full path of C:C:\Qt\Qt5.2.1\5.2.1\android_x86\examples\sensors\build-qmlqtsensors-Android_for_armeabi_v7a_GCC_4_8_Qt_5_2_1-Release\android-build\Qt\Qt5.2.1\5.2.1\android_armv7\examples\qtsensors\qmlqtsensors is too long.
Try to compile and run your project at a different location with a shorter path.
I get the error on this example (and had the same on previous examples some while ago).
My problem turned out to be that when the Makefile is generated, it generates 'wrong' code. It generates stuff like:
mkdir C:$(INSTALL_ROOT)/........
which is fine if $(INSTALL_ROOT) evaluates to a relative path but in fact it resolved to an absolute path, that is:
mkdir C:C:/Qt/.......
So simply edited the Makefile replacing all occurrences of 'C:$(INSTALL_ROOT)' with '$(INSTALL_ROOT)'. It worked for me and hopefully you too.
I've been trying to build Android WebKit from source (from here https://github.com/android/platform_external_webkit), but haven't had any success so far. I've run make and ndk-build from the root directory of my repo copy and from from the Source directory inside it, with the following results:
make from the root directory (makes sense, because there is no Makefile),
make: *** No targets specified and no makefile found. Stop.
make from the /Source directory:
make[1]: Entering directory `/webkit/Source/JavaScriptGlue'
../Makefile.shared:2: ../../Makefile.shared: No such file or directory
make[1]: *** No rule to make target `../../Makefile.shared'. Stop.
make[1]: Leaving directory `/webkit/Source/JavaScriptGlue'
make: *** [all] Error 2
ndk-build from root and ./Source:
Android NDK: Could not find application project directory !
Android NDK: Please define the NDK_PROJECT_PATH variable to point to it.
<NDK>/build/core/build-local.mk:130: *** Android NDK: Aborting . Stop.
Can anyone advise as to what I'm doing wrong? I've read mention of Android needing to be compiled as a whole, but since this is 'external', I thought it would compile standalone. Am I wrong about that? Or is there some configuration step I've missed? Or anything else?
Thanks for the help.
This doesn't allow you to get a build fully working, I suspect you did the same as me and cloned to a folder called webkit.
If you rename that to jni and then run ndk-build from the folder containing jni, it does at least get past the problem you mention. I now get the error:
jni/Android.mk:314: external/stlport/libstlport.mk: No such file or directory
Android NDK: Trying to define local module 'webcore' in jni/Source/WebKit/Android.mk.
Android NDK: But this module was already defined by jni/Source/WebKit/Android.mk.
/cygdrive/e/android-ndk-r7/build/core/build-module.mk:34: *** Android NDK: Aborting. . Stop.
I'm still trying to figure out how to solve this new error.