Assistant
REPLY |
Building TWRP recovery from source |
Message#1 17.01.15, 23:38 | |
Starting a new life. [offline] Topics Curator Group: Curators Messages 2549 Check in: 03.04.12 Xiaomi Redmi Note 4X Snapdragon 3/32 Reputation: 697 | ������ TWRP recovery �� ���������� downloadOrder table recovery | How to build cwm � | CWM Recovery Compilation � | Creating recovery for MTK �
What do we need: AIDA64 and DiskInfo on smartphone Ubuntu 12.04 x64 Unlimited Internet, as it will be downloaded about 12 gig source. 38.5 GB of free space, this is only on the source code and on the assembly + 10 gigs on the system itself. I got to Ubuntu 16.04.2 x64 and Android 6.0. The sources Omni 6.0.1 I weigh 75 gigs + will be unpacked and for a total of about 200 gigs to build. Build on Ubuntu 17.10 If you do not have your own sources, then look for the config (device) of a similar device on the same processor onGithub. Here to you for example my configTWRP_D10A_HighScreen And so let's get started Under the utility spoiler there is a video instruction for assembling TWRP Install Ubuntu 12.04 x64 or 16.04.2 x64 (as you are looking for yourself, I will not paint) For Ubuntu 12.04 x64 and Android 4.4.4 Install the necessary packages sudo apt-get install bison build-essential curl flex g ++ - multilib gcc-multilib git-core gnupg gperf lib32ncurses5-dev libxml2-utils lzop pngcrush schedtool squashfs-tools xsltproc zip zlib1g-dev Next, we put Java Oracle 6 sudo add-apt-repository ppa: webupd8team / java sudo apt-get update sudo apt-get install oracle-java6-installer Login on github (quotes are not needed) git config --global user.name "your nickname" git config --global user.email "your mail" Next, create folders mkdir ~ / bin mkdir ~ / omni Install repo curl http://commondatastorage.googleapis.com/git-repo-downloads/repo>~ / bin / repo chmod a + x ~ / bin / repo Add a variable echo "export PATH = ~ / bin: $ PATH">>~ / .bashrc And download the source, android omni 4.4.4. cd ~ / omni repo init -u https://github.com/omnirom/android.git -b android-4.4 repo sync Now we wait while about 12 gig sources are downloaded. For Ubuntu 16.04.2 x64 and Android 6.0 Install the necessary packages sudo apt-get install git-core gnupg flex bison gperf build-essential zip curl zlib1g-dev gcc-multilib g ++ liblii-dev-i386 libc6-dev-i386 dev libxml2-utils xsltproc unzip maven schedtool For Android 5.0 - 6.0 you need openjdk 7 sudo add-apt-repository ppa: openjdk-r / ppa sudo apt-get update sudo apt-get install openjdk-7-jdk Login on github'e git config --global user.name "your nickname" git config --global user.email "your mail" Further, according to the familiar scheme mkdir ~ / bin PATH = ~ / bin: $ PATH echo 'PATH = ~ / bin: $ PATH'>>~ / .bashrc echo 'export USE_CCACHE = 1'>>~ / .bashrc curl https://storage.googleapis.com/git-repo-downloads/repo>~ / bin / repo chmod a + x ~ / bin / repo Create a folder for omnirom sources and enter it. mkdir omni cd omni Downloading source repo init -u https://github.com/omnirom/android.git -b android-6.0 repo sync Well, let's start writing a config for our device Finalization spoiler And now the fun begins First, create the device folder for your device. cd ~ / omni / device mkdir -p vendor_name / device_name mkdir -p HighScreen / D10A_HighScreen Create an Android.mk file with the contents: LOCAL_PATH: = $ (call my-dir) ifeq ($ (TARGET_DEVICE), device_name) include $ (call all-makefiles-under, $ (LOCAL_PATH)) endif LOCAL_PATH: = $ (call my-dir) ifeq ($ (TARGET_DEVICE), D10A_HighScreen) include $ (call all-makefiles-under, $ (LOCAL_PATH)) endif PRODUCT_MAKEFILES: = \ $ (LOCAL_DIR) /device_name.mk \ $ (LOCAL_DIR) /omni_device_name.mk I look like PRODUCT_MAKEFILES: = \ $ (LOCAL_DIR) /D10A_HighScreen.mk \ $ (LOCAL_DIR) /omni_D10A_HighScreen.mk The contents of the device_name.mk file should look like this: LOCAL_PATH: = device / vendor_name / device_name $ (shell mkdir -p $ (OUT) / obj / KERNEL_OBJ / usr) ifeq ($ (TARGET_PREBUILT_KERNEL),) LOCAL_KERNEL: = $ (LOCAL_PATH) / kernel else LOCAL_KERNEL: = $ (TARGET_PREBUILT_KERNEL) endif PRODUCT_COPY_FILES + = \ $ (LOCAL_PATH) / kernel: kernel \ $ (LOCAL_PATH) /dt.img:dt.img \ $ (LOCAL_PATH) /recovery.fstab:root/recovery.fstab $ (call inherit-product, build / target / product / full.mk) PRODUCT_NAME: = device_name Attention if in your kernel and recovery there is no dt.img file, then you should not have a line: $ (LOCAL_PATH) /dt.img:dt.img \ It looks like this to me: LOCAL_PATH: = device / HighScreen / D10A_HighScreen $ (shell mkdir -p $ (OUT) / obj / KERNEL_OBJ / usr) ifeq ($ (TARGET_PREBUILT_KERNEL),) LOCAL_KERNEL: = $ (LOCAL_PATH) / kernel else LOCAL_KERNEL: = $ (TARGET_PREBUILT_KERNEL) endif PRODUCT_COPY_FILES + = \ $ (LOCAL_PATH) / kernel: kernel \ $ (LOCAL_PATH) /dt.img:dt.img \ $ (LOCAL_PATH) /recovery.fstab:root/recovery.fstab $ (call inherit-product, build / target / product / full.mk) PRODUCT_NAME: = D10A_HighScreen # Inherit device configuration $ (call inherit-product, device / vendor_name / device_name / device_name.mk) # Device identifier. This must come after all inclusions PRODUCT_DEVICE: = device_name PRODUCT_NAME: = omni_device_name PRODUCT_BRAND: = vendor_name PRODUCT_MODEL: = # device model PRODUCT_MANUFACTURER: = vendor_name All these values ​​are in your system / build.prop stock firmware, rely primarily on them. I have so # Inherit device configuration $ (call inherit-product, device / HighScreen / D10A_HighScreen / D10A_HighScreen.mk) # Device identifier. This must come after all inclusions PRODUCT_DEVICE: = D10A_HighScreen PRODUCT_NAME: = omni_D10A_HighScreen PRODUCT_BRAND: = HighScreen PRODUCT_MODEL: = Boost 2se PRODUCT_MANUFACTURER: = HighScreen In the split_img folder, take the file recovery.img-zImage, rename it to kernel. In the same folder, take the file recovery.img-dtb and rename it to dt.img, if this file is not there, we disassemble the kernel and look for there only the name will be boot.img-dtb, if there is not, then it is not needed. Both files (or one) are left in the device / vendor_name / device_name path Next, go to the ramdisk / etc folder, take the file recovery.fstab, put it there as the previous 2 files and edit it to make it look like this, but the paths should be yours! / system ext4 /dev/block/platform/msm_sdcc.1/by-name/system / data ext4 /dev/block/platform/msm_sdcc.1/by-name/userdata / cache ext4 /dev/block/platform/msm_sdcc.1/by-name/cache / boot emmc /dev/block/platform/msm_sdcc.1/by-name/boot / recovery emmc /dev/block/platform/msm_sdcc.1/by-name/recovery / external_sd vfat / dev / block / mmcblk1p1 flags = display = "External_sd"; storage; wipeingui; removable / internal_sd vfat /dev/block/platform/msm_sdcc.1/by-name/usbmsc flags = display = "Internal_sd"; storage; wipeingui; removable / usb-otg vfat / dev / block / sda1 / dev / block / sda flags = display = "USB OTG"; storage; wipeingui; removable We create the BoardConfig.mk file here the most difficult and some values ​​will have to be pulled from the device on the same process. Well, let's go, we write there: # Platform TARGET_BOARD_PLATFORM: = Open AIDA64, point CPU, first line. I have so # Platform TARGET_BOARD_PLATFORM: = msm8226 Further # Architecture TARGET_ARCH: = # AIDA64 second line, TARGET_ARCH_VARIANT: = TARGET_CPU_ABI: = TARGET_CPU_ABI2: = TARGET_CPU_SMP: = TARGET_CPU_VARIANT: = These values ​​also write off, I have it so # Architecture TARGET_ARCH: = arm TARGET_ARCH_VARIANT: = armv7-a-neon TARGET_CPU_ABI: = armeabi-v7a TARGET_CPU_ABI2: = armeabi TARGET_CPU_SMP: = true TARGET_CPU_VARIANT: = krait Further # Bootloader TARGET_NO_BOOTLOADER: = true TARGET_BOOTLOADER_BOARD_NAME: = The first line does not change, and in the second the name of the chip is mine # Bootloader TARGET_NO_BOOTLOADER: = true TARGET_BOOTLOADER_BOARD_NAME: = MSM8226 Here we will stop on more in detail: # Kernel TARGET_PREBUILT_KERNEL: = # here we specify the path to the device / vendor_name / device_name / kernel kernel BOARD_KERNEL_CMDLINE: = BOARD_KERNEL_BASE: = BOARD_KERNEL_PAGESIZE: = BOARD_KERNEL_SEPARATED_DT: = true BOARD_MKBOOTIMG_ARGS: = With the first line, the line BOARD_KERNEL_CMDLINE, go to the folder of the parsed recovery and look for the file recovery.img-cmdline and enter its contents in this line. The string BOARD_KERNEL_BASE in the same folder as the recovery.img-base file, its contents is entered in this string. Line BOARD_KERNEL_PAGESIZE in the same file recovery.img-pagesize its contents we enter in this line. This BOARD_KERNEL_SEPARATED_DT: = true line does not change. Here BOARD_MKBOOTIMG_ARGS first specify the path to dt.img - dt device / vendor_name / device_name / dt.img Next - kernel_offset write the contents of the file recovery.img-kerneloff Attention if in your kernel and recovery there is no dt.img file, then you should not have a line: BOARD_KERNEL_SEPARATED_DT: = true And in the line: BOARD_MKBOOTIMG_ARGS: = --dt device / vendorname / devicename / dt.img --kernel_offset 0x ******** --ramdisk_offset 0x ******** - tags_offset 0x ******* * There should be no path to this file.--dt device / vendorname / devicename / dt.img, just write like this: BOARD_MKBOOTIMG_ARGS: = --kernel_offset 0x ******** --ramdisk_offset 0x ******** --tags_offset 0x ******** Next --ramdisk_offset here is the contents of the file recovery.img-ramdiskoff And finally - tags_offset is the contents of the file recovery.img-tagsoff, you also need to add before each value 0x (your characters) for clarity, see below. It looks like this to me # Kernel TARGET_PREBUILT_KERNEL: = device / HighScreen / D10A_HighScreen / kernel BOARD_KERNEL_CMDLINE: = console = null androidboot.hardware = qcom user_debug = 31 msm_rtb.filter = 0x37 lpj = 192000 BOARD_KERNEL_BASE: = 0x00000000 BOARD_KERNEL_PAGESIZE: = 2048 BOARD_KERNEL_SEPARATED_DT: = true BOARD_MKBOOTIMG_ARGS: = --dt device / HighScreen / D10A_HighScreen / dt.img --kernel_offset 0x00008000 --ramdisk_offset 0x02000000 - tags_offset 0x01e00000 The next thing we need is the size of the partitions in bytes. Download from Google Play "terminal emulator" and write cat / proc / partitions Open DiskInfo, 3 points, settings, set daws Partition name, Expert mode and Unmounted partitions. We look for the necessary section, we take number from the terminal and we multiply by 1024, we fill # Partitions BOARD_BOOTIMAGE_PARTITION_SIZE: = BOARD_RECOVERYIMAGE_PARTITION_SIZE: = BOARD_SYSTEMIMAGE_PARTITION_SIZE: = BOARD_CACHEIMAGE_PARTITION_SIZE: = BOARD_USERDATAIMAGE_PARTITION_SIZE: = BOARD_FLASH_BLOCK_SIZE: = 131072 The string BOARD_FLASH_BLOCK_SIZE is pulled from a similar device, but I have not seen another value for now. # Recovery TARGET_RECOVERY_PIXEL_FORMAT: = "RGBX_8888" # Open AIDA64, Display and at the bottom of the line GL_EXT_texture_format TARGET_USERIMAGES_USE_EXT4: = true BOARD_HAS_LARGE_FILESYSTEM: = true BOARD_USE_CUSTOM_RECOVERY_FONT: = \ "roboto_15x24.h \" BOARD_SUPPRESS_EMMC_WIPE: = true And last # TWRP HAVE_SELINUX: = true DEVICE_RESOLUTION: = # here we write the screen resolution TW_IGNORE_MAJOR_AXIS_0: = # we look at it like a similar device RECOVERY_GRAPHICS_USE_LINELENGTH: = # we are looking like a similar device BOARD_HAS_NO_REAL_SDCARD: = # # this is if you have a separate partition for internal memory, and not in the / data section (/ data / media) TW_DEFAULT_EXTERNAL_STORAGE: = # we are looking like a similar device TW_INTERNAL_STORAGE_PATH: = # here we write for example "/ internal_sd" - you have these values ​​in recovery.fstab TW_INTERNAL_STORAGE_MOUNT_POINT: = # then "internal_sd" TW_EXTERNAL_STORAGE_PATH: = # here we write "/ external_sd" TW_EXTERNAL_STORAGE_MOUNT_POINT: = # then "external_sd" # USB Mounting TARGET_USE_CUSTOM_LUN_FILE_PATH: = / sys / devices / platform / msm_hsusb / gadget / lun% d / file # This is the line you are looking for yourself using the root explorer to go through this path, you may have another. And create the last vendorsetup.sh file with the contents add_lunch_combo omni_device_name-userdebug I have it so add_lunch_combo omni_D10A_HighScreen-userdebug Everything, now we will start assembly We collect I want to draw your attention, collect recovery on the commands below, if you collect with the command mka or some other, then look for answers in another topic, you can not write here. [/ B] It's pretty simple cd ~ / omni . build / envsetup.sh lunch omni_device_name-userdebug make -j5 recoveryimage # here we write the number of cores of your CPU +1 Well, now we wait, in the omni / out / folder I don’t remember the exact path, then I’ll write, and you’ll find it, there will be a freshly baked recovery.img. Examples Utility We unlock the lock on MTK processors. Solving the TWRP 3.2.3 build problem on Omni 7.1 source Another version of the TWRP assembly TWRP assembly instruction video Flags for BoardConfig.mk More flags for BoardConfig.mk Build TWRP on Lineage OS 14.1 Solving the problem of time synchronization Solving the problem of landscape / portrait orientation on the tablet Addition to the main instruction, assembly TWRP 3.0. * From wladimir_tm Build TWRP with a minimum set of sources Tips to reduce the size of the recovery from wladimir_tm Installing openjdk7 on Ubuntu 17.04 Russian translation TWRP 2.8.7.0 Useful post for phones with intel processes Solution for system / sepolicy / domain.te error: 446: ERROR 'unknown type camera' at token Sources In qms with requests to help me, do not write, I gave you all the necessary information. Only editable suggestions are accepted. Good luck in the assembly of the recovery. Post has been editedbaddhet - 18.03.19, 09:57 Reason for editing: Solving time synchronization problem. |
Message#2 18.01.15, 17:10 | |
Starting a new life. [offline] Topics Curator Group: Curators Messages 2549 Check in: 03.04.12 Xiaomi Redmi Note 4X Snapdragon 3/32 Reputation: 697 | Building TWRP recovery from source[/ b] [/ size] Order table recovery | How to build cwm � | CWM Recovery Compilation � | Creating recovery for MTK �
What do we need: Ubuntu 12.04 x64 Unlimited Internet, as it will be downloaded about 12 gig source. 38.5 GB of free space, this is only on the source code and on the assembly + 10 gigs on the system itself. I got to Ubuntu 16.04.2 x64 and android 6.0. The sources Omni 6.0.1 I weigh 75 gigs + will be unpacked and for a total of about 200 gigs to build. Build on Ubuntu 17.10 If you do not have your own sources, then look for the config (device) of a similar device on the same processor onGithub. Here to you for example my configTWRP_D10A_HighScreen And so let's get started Under the utility spoiler there is a video instruction for assembling TWRP Install Ubuntu 12.04 x64 or 16.04.2 x64 (as you are looking for yourself, I will not paint) For Ubuntu 12.04 x64 and Android 4.4.4 Install the necessary packages sudo apt-get install bison build-essential curl flex g ++ - multilib gcc-multilib git-core gnupg gperf lib32ncurses5-dev libxml2-utils lzop pngcrush schedtool squashfs-tools xsltproc zip zlib1g-dev Next, we put Java Oracle 6 sudo add-apt-repository ppa: webupd8team / java sudo apt-get update sudo apt-get install oracle-java6-installer Login on github (quotes are not needed) git config --global user.name "your nickname" git config --global user.email "your mail" Next, create folders mkdir ~ / bin mkdir ~ / omni Install repo curl http://commondatastorage.googleapis.com/git-repo-downloads/repo>~ / bin / repo chmod a + x ~ / bin / repo Add a variable echo "export PATH = ~ / bin: $ PATH">>~ / .bashrc And download the source, android omni 4.4.4. cd ~ / omni repo init -u https://github.com/omnirom/android.git -b android-4.4 repo sync Now we wait while about 12 gig sources are downloaded. For ubuntu 16.04.2 x64 and Android 6.0 Install the necessary packages sudo apt-get install git-core gnupg flex bison gperf build-essential zip curl zlib1g-dev gcc-multilib g ++ liblii-dev-i386 libc6-dev-i386 dev libxml2-utils xsltproc unzip maven schedtool For Android 5.0 - 6.0 you need openjdk 7 sudo add-apt-repository ppa: openjdk-r / ppa sudo apt-get update sudo apt-get install openjdk-7-jdk Next, write (Adds export USE_CCACHE = 1 'to the .bashrc file) echo 'export USE_CCACHE = 1'>>~ / .bashrc Login on github'e git config --global user.name "your nickname" git config --global user.email "your mail" Further, according to the familiar scheme mkdir ~ / bin PATH = ~ / bin: $ PATH echo 'PATH = ~ / bin: $ PATH'>>~ / .bashrc curl https://storage.googleapis.com/git-repo-downloads/repo>~ / bin / repo chmod a + x ~ / bin / repo Create a folder for omnirom sources and enter it. mkdir omni cd omni Downloading source repo init -u https://github.com/omnirom/android.git -b android-6.0 repo sync Well, let's start writing a config for our device And now the fun begins First, create the device folder for your device. cd ~ / omni / device mkdir vendor_name / device_name I have it so mkdir HighScreen / D10A_HighScreen Next, create * .mk files in the final directory, go through the newly created path in the "explorer" and create the Android.mk file with the contents LOCAL_PATH: = $ (call my-dir) ifeq ($ (TARGET_DEVICE), device_name) include $ (call all-makefiles-under, $ (LOCAL_PATH)) endif I look like this LOCAL_PATH: = $ (call my-dir) ifeq ($ (TARGET_DEVICE), D10A_HighScreen) include $ (call all-makefiles-under, $ (LOCAL_PATH)) endif Next, create the file AndroidProducts.mk with the contents PRODUCT_MAKEFILES: = \ $ (LOCAL_DIR) /device_name.mk \ $ (LOCAL_DIR) /omni_device_name.mk I look like PRODUCT_MAKEFILES: = \ $ (LOCAL_DIR) /D10A_HighScreen.mk \ $ (LOCAL_DIR) /omni_D10A_HighScreen.mk Next, create 2 files that we specified in the AndroidProducts.mk file: device_name.mk and omni_device_name.mk. I have it as it is not difficult to guess D10A_HighScreen.mk and omni_D10A_HighScreen.mk The contents of the device_name.mk file should look like this: LOCAL_PATH: = device / vendor_name / device_name $ (shell mkdir -p $ (OUT) / obj / KERNEL_OBJ / usr) ifeq ($ (TARGET_PREBUILT_KERNEL),) LOCAL_KERNEL: = $ (LOCAL_PATH) / kernel else LOCAL_KERNEL: = $ (TARGET_PREBUILT_KERNEL) endif PRODUCT_COPY_FILES + = \ $ (LOCAL_PATH) / kernel: kernel \ $ (LOCAL_PATH) /dt.img:dt.img \ $ (LOCAL_PATH) /recovery.fstab:root/recovery.fstab $ (call inherit-product, build / target / product / full.mk) PRODUCT_NAME: = device_name It looks like this to me: LOCAL_PATH: = device / HighScreen / D10A_HighScreen $ (shell mkdir -p $ (OUT) / obj / KERNEL_OBJ / usr) # on omni 6.0.1, this line is no longer needed and only errors are generated from it, I did not intend to write to 4.4.4. ifeq ($ (TARGET_PREBUILT_KERNEL),) LOCAL_KERNEL: = $ (LOCAL_PATH) / kernel else LOCAL_KERNEL: = $ (TARGET_PREBUILT_KERNEL) endif PRODUCT_COPY_FILES + = \ $ (LOCAL_PATH) / kernel: kernel \ $ (LOCAL_PATH) /dt.img:dt.img \ $ (LOCAL_PATH) /recovery.fstab:root/recovery.fstab $ (call inherit-product, build / target / product / full.mk) PRODUCT_NAME: = D10A_HighScreen Attention if there is no dt.img file in your kernel and recovery? then you should not have the line: $ (LOCAL_PATH) /dt.img:dt.img \ The contents of the omni_device_name.mk file should look like this: # Inherit device configuration $ (call inherit-product, device / vendor_name / device_name / device_name.mk) # Device identifier. This must come after all inclusions PRODUCT_DEVICE: = device_name PRODUCT_NAME: = omni_device_name PRODUCT_BRAND: = vendor_name PRODUCT_MODEL: = # device model PRODUCT_MANUFACTURER: = vendor_name All these values ​​are in your system / build.prop stock firmware, rely primarily on them. I have so # Inherit device configuration $ (call inherit-product, device / HighScreen / D10A_HighScreen / D10A_HighScreen.mk) # Device identifier. This must come after all inclusions PRODUCT_DEVICE: = D10A_HighScreen PRODUCT_NAME: = omni_D10A_HighScreen PRODUCT_BRAND: = HighScreen PRODUCT_MODEL: = Boost 2se PRODUCT_MANUFACTURER: = HighScreen Further, from where to get 3 files that we specified in device_name.mk? It's simple, take the programAndroid Image Kitchenand unpack the stock recovery. There will be 2 ramdisk and split_img folders. In the split_img folder, take the file recovery.img-zImage, rename it to kernel. In the same folder, take the file recovery.img-dtb and rename it to dt.img, if this file does not exist, we parse the kernel and look for there only the name will be boot.img-dtb. We put both files in the path device / vendor_name / device_name Next, go to the ramdisk / etc folder, take the file recovery.fstab, put it there as the previous 2 files and edit it to make it look like this, but the paths should be yours! / system ext4 /dev/block/platform/msm_sdcc.1/by-name/system / data ext4 /dev/block/platform/msm_sdcc.1/by-name/userdata / cache ext4 /dev/block/platform/msm_sdcc.1/by-name/cache / boot emmc /dev/block/platform/msm_sdcc.1/by-name/boot / recovery emmc /dev/block/platform/msm_sdcc.1/by-name/recovery / external_sd vfat / dev / block / mmcblk1p1 flags = display = "External_sd"; storage; wipeingui; removable / internal_sd vfat /dev/block/platform/msm_sdcc.1/by-name/usbmsc flags = display = "Internal_sd"; storage; wipeingui; removable / usb-otg vfat / dev / block / sda1 / dev / block / sda flags = display = "USB OTG"; storage; wipeingui; removable We create the BoardConfig.mk file here the most difficult and some values ​​will have to be pulled from the device on the same process. Well, let's go, we write there: # Platform TARGET_BOARD_PLATFORM: = Here we indicate our chip, be sure to see how this line is spelled by a similar device on a git hub. I have so # Platform TARGET_BOARD_PLATFORM: = msm8226 Further # Architecture TARGET_ARCH: = TARGET_ARCH_VARIANT: = TARGET_CPU_ABI: = TARGET_CPU_ABI2: = TARGET_CPU_SMP: = TARGET_CPU_VARIANT: = These values ​​also write off, I have it so # Architecture TARGET_ARCH: = arm TARGET_ARCH_VARIANT: = armv7-a-neon TARGET_CPU_ABI: = armeabi-v7a TARGET_CPU_ABI2: = armeabi TARGET_CPU_SMP: = true TARGET_CPU_VARIANT: = krait Further # Bootloader TARGET_NO_BOOTLOADER: = true TARGET_BOOTLOADER_BOARD_NAME: = The first line does not change, and in the second the name of the chip is mine # Bootloader TARGET_NO_BOOTLOADER: = true TARGET_BOOTLOADER_BOARD_NAME: = MSM8226 Here we will stop on more in detail: # Kernel TARGET_PREBUILT_KERNEL: = # here we specify the path to the device / vendor_name / device_name / kernel kernel BOARD_KERNEL_CMDLINE: = BOARD_KERNEL_BASE: = BOARD_KERNEL_PAGESIZE: = BOARD_KERNEL_SEPARATED_DT: = true BOARD_MKBOOTIMG_ARGS: = With the first line, the line BOARD_KERNEL_CMDLINE, go to the folder of the parsed recovery and look for the file recovery.img-cmdline and enter its contents in this line. The string BOARD_KERNEL_BASE in the same folder as the recovery.img-base file, its contents is entered in this string. Line BOARD_KERNEL_PAGESIZE in the same file recovery.img-pagesize its contents we enter in this line. This BOARD_KERNEL_SEPARATED_DT: = true line does not change. Here BOARD_MKBOOTIMG_ARGS first specify the path to dt.img - dt device / vendor_name / device_name / dt.img Next - kernel_offset write the contents of the file recovery.img-kerneloff Attention if there is no dt.img file in your kernel and recovery? then you should not have the line: BOARD_KERNEL_SEPARATED_DT: = true And in the line: BOARD_MKBOOTIMG_ARGS: = --dt device / vendorname / devicename / dt.img --kernel_offset 0x ******** --ramdisk_offset 0x ******** - tags_offset 0x ******* * There should be no path to this file.--dt device / vendorname / devicename / dt.img, just write like this: BOARD_MKBOOTIMG_ARGS: = --kernel_offset 0x ******** --ramdisk_offset 0x ******** --tags_offset 0x ******** Next --ramdisk_offset here is the contents of the file recovery.img-ramdiskoff And finally - tags_offset is the contents of the file recovery.img-tagsoff, you also need to add before each value 0x (your characters) for clarity, see below. It looks like this to me # Kernel TARGET_PREBUILT_KERNEL: = device / HighScreen / D10A_HighScreen / kernel BOARD_KERNEL_CMDLINE: = console = null androidboot.hardware = qcom user_debug = 31 msm_rtb.filter = 0x37 lpj = 192000 BOARD_KERNEL_BASE: = 0x00000000 BOARD_KERNEL_PAGESIZE: = 2048 BOARD_KERNEL_SEPARATED_DT: = true BOARD_MKBOOTIMG_ARGS: = --dt device / HighScreen / D10A_HighScreen / dt.img --kernel_offset 0x00008000 --ramdisk_offset 0x02000000 - tags_offset 0x01e00000 The next thing we need is the size of the sections in! bytes!, I learned this way, I took recovery.fstab and for example we take the / system partition. Download from Google Play "terminal emulator" (Root is needed) and write su dd if = / dev / block / platform / msm_sdcc.1 / by-name / system of = / sdcard / system.img # Partitions BOARD_BOOTIMAGE_PARTITION_SIZE: = BOARD_RECOVERYIMAGE_PARTITION_SIZE: = BOARD_SYSTEMIMAGE_PARTITION_SIZE: = BOARD_CACHEIMAGE_PARTITION_SIZE: = BOARD_USERDATAIMAGE_PARTITION_SIZE: = The string BOARD_FLASH_BLOCK_SIZE is pulled from a similar device. BOARD_FLASH_BLOCK_SIZE: = There is probably no need to change anything, but just in case, look like a similar spelling # Recovery TARGET_RECOVERY_PIXEL_FORMAT: = "RGBX_8888" TARGET_USERIMAGES_USE_EXT4: = true BOARD_HAS_LARGE_FILESYSTEM: = true BOARD_USE_CUSTOM_RECOVERY_FONT: = \ "roboto_15x24.h \" BOARD_SUPPRESS_EMMC_WIPE: = true And last # TWRP HAVE_SELINUX: = true DEVICE_RESOLUTION: = # here we write the screen resolution TW_IGNORE_MAJOR_AXIS_0: = # we look at it like a similar device RECOVERY_GRAPHICS_USE_LINELENGTH: = # we are looking like a similar device BOARD_HAS_NO_REAL_SDCARD: = # # this is if you have a separate partition for internal memory, and not in the / data section (/ data / media) TW_DEFAULT_EXTERNAL_STORAGE: = # we are looking like a similar device TW_INTERNAL_STORAGE_PATH: = # here we write for example "/ internal_sd" - you have these values ​​in recovery.fstab TW_INTERNAL_STORAGE_MOUNT_POINT: = # then "internal_sd" TW_EXTERNAL_STORAGE_PATH: = # here we write "/ external_sd" TW_EXTERNAL_STORAGE_MOUNT_POINT: = # then "external_sd" # USB Mounting TARGET_USE_CUSTOM_LUN_FILE_PATH: = / sys / devices / platform / msm_hsusb / gadget / lun% d / file # This is the line you are looking for yourself using the root explorer to go through this path, you may have another. And create the last vendorsetup.sh file with the contents add_lunch_combo omni_device_name-userdebug I have it so add_lunch_combo omni_D10A_HighScreen-userdebug Everything, now we will start assembly We collect I want to draw your attention, collect recovery on the commands below, if you collect with the command mka or some other, then look for answers in another topic, you can not write here. [/ B] It's pretty simple cd ~ / omni . build / envsetup.sh lunch omni_device_name-userdebug make -j5 recoveryimage # here we write the number of cores of your CPU +1 Well, now we wait, in the omni / out / folder I don’t remember the exact path, then I’ll write, and you’ll find it, there will be a freshly baked recovery.img. In qms with requests to help me, do not write, I gave you all the necessary information. Only editable suggestions are accepted. Good luck in the assembly of the recovery. Examples MTK 6737fromwalkman8196 Mediatek mt6735mfrom dearhyperion70 Snapdragon S4Thank you sayweritos Snapdragon 410Thank you saydeadlink Mediatek mt6753 Utility We unlock the lock on MTK processors. Another version of the TWRP assembly TWRP assembly instruction video Flags for BoardConfig.mk Build TWRP on Lineage OS 14.1 Solving the problem of landscape / portrait orientation on the tablet Addition to the main instruction, assembly TWRP 3.0. * From wladimir_tm Build TWRP with a minimum set of sources Tips to reduce the size of the recovery from wladimir_tm Installing openjdk7 on Ubuntu 17.04 Russian translation TWRP 2.8.7.0 Useful post for phones with intel processes Solution for system / sepolicy / domain.te error: 446: ERROR 'unknown type camera' at token Sources Order table recovery | How to build cwm � | CWM Recovery Compilation � | Creating recovery for MTK �
What do we need: Ubuntu 12.04 x64 Unlimited Internet, as it will be downloaded about 12 gig source. 38.5 GB of free space, this is only on the source code and on the assembly + 10 gigs on the system itself. I got to Ubuntu 16.04.2 x64 and android 6.0. The sources Omni 6.0.1 I weigh 75 gigs + will be unpacked and for a total of about 200 gigs to build. Build on Ubuntu 17.10 If you do not have your own sources, then look for the config (device) of a similar device on the same processor onGithub. Here to you for example my configTWRP_D10A_HighScreen And so let's get started Under the utility spoiler there is a video instruction for assembling TWRP Install Ubuntu 12.04 x64 or 16.04.2 x64 (as you are looking for yourself, I will not paint) For Ubuntu 12.04 x64 and Android 4.4.4 Install the necessary packages sudo apt-get install bison build-essential curl flex g ++ - multilib gcc-multilib git-core gnupg gperf lib32ncurses5-dev libxml2-utils lzop pngcrush schedtool squashfs-tools xsltproc zip zlib1g-dev Next, we put Java Oracle 6 sudo add-apt-repository ppa: webupd8team / java sudo apt-get update sudo apt-get install oracle-java6-installer Login on github (quotes are not needed) git config --global user.name "your nickname" git config --global user.email "your mail" Next, create folders mkdir ~ / bin mkdir ~ / omni Install repo curl http://commondatastorage.googleapis.com/git-repo-downloads/repo>~ / bin / repo chmod a + x ~ / bin / repo Add a variable echo "export PATH = ~ / bin: $ PATH">>~ / .bashrc And download the source, android omni 4.4.4. cd ~ / omni repo init -u https://github.com/omnirom/android.git -b android-4.4 repo sync Now we wait while about 12 gig sources are downloaded. For ubuntu 16.04.2 x64 and Android 6.0 Install the necessary packages sudo apt-get install git-core gnupg flex bison gperf build-essential zip curl zlib1g-dev gcc-multilib g ++ liblii-dev-i386 libc6-dev-i386 dev libxml2-utils xsltproc unzip maven schedtool For Android 5.0 - 6.0 you need openjdk 7 sudo add-apt-repository ppa: openjdk-r / ppa sudo apt-get update sudo apt-get install openjdk-7-jdk Next, write (Adds export USE_CCACHE = 1 'to the .bashrc file) echo 'export USE_CCACHE = 1'>>~ / .bashrc Login on github'e git config --global user.name "your nickname" git config --global user.email "your mail" Further, according to the familiar scheme mkdir ~ / bin PATH = ~ / bin: $ PATH echo 'PATH = ~ / bin: $ PATH'>>~ / .bashrc curl https://storage.googleapis.com/git-repo-downloads/repo>~ / bin / repo chmod a + x ~ / bin / repo Create a folder for omnirom sources and enter it. mkdir omni cd omni Downloading source repo init -u https://github.com/omnirom/android.git -b android-6.0 repo sync Well, let's start writing a config for our device And now the fun begins First, create the device folder for your device. cd ~ / omni / device mkdir vendor_name / device_name I have it so mkdir HighScreen / D10A_HighScreen Next, create * .mk files in the final directory, go through the newly created path in the "explorer" and create the Android.mk file with the contents LOCAL_PATH: = $ (call my-dir) ifeq ($ (TARGET_DEVICE), device_name) include $ (call all-makefiles-under, $ (LOCAL_PATH)) endif I look like this LOCAL_PATH: = $ (call my-dir) ifeq ($ (TARGET_DEVICE), D10A_HighScreen) include $ (call all-makefiles-under, $ (LOCAL_PATH)) endif Next, create the file AndroidProducts.mk with the contents PRODUCT_MAKEFILES: = \ $ (LOCAL_DIR) /device_name.mk \ $ (LOCAL_DIR) /omni_device_name.mk I look like PRODUCT_MAKEFILES: = \ $ (LOCAL_DIR) /D10A_HighScreen.mk \ $ (LOCAL_DIR) /omni_D10A_HighScreen.mk Next, create 2 files that we specified in the AndroidProducts.mk file: device_name.mk and omni_device_name.mk. I have it as it is not difficult to guess D10A_HighScreen.mk and omni_D10A_HighScreen.mk The contents of the device_name.mk file should look like this: LOCAL_PATH: = device / vendor_name / device_name $ (shell mkdir -p $ (OUT) / obj / KERNEL_OBJ / usr) ifeq ($ (TARGET_PREBUILT_KERNEL),) LOCAL_KERNEL: = $ (LOCAL_PATH) / kernel else LOCAL_KERNEL: = $ (TARGET_PREBUILT_KERNEL) endif PRODUCT_COPY_FILES + = \ $ (LOCAL_PATH) / kernel: kernel \ $ (LOCAL_PATH) /dt.img:dt.img \ $ (LOCAL_PATH) /recovery.fstab:root/recovery.fstab $ (call inherit-product, build / target / product / full.mk) PRODUCT_NAME: = device_name It looks like this to me: LOCAL_PATH: = device / HighScreen / D10A_HighScreen $ (shell mkdir -p $ (OUT) / obj / KERNEL_OBJ / usr) # on omni 6.0.1, this line is no longer needed and only errors are generated from it, I did not intend to write to 4.4.4. ifeq ($ (TARGET_PREBUILT_KERNEL),) LOCAL_KERNEL: = $ (LOCAL_PATH) / kernel else LOCAL_KERNEL: = $ (TARGET_PREBUILT_KERNEL) endif PRODUCT_COPY_FILES + = \ $ (LOCAL_PATH) / kernel: kernel \ $ (LOCAL_PATH) /dt.img:dt.img \ $ (LOCAL_PATH) /recovery.fstab:root/recovery.fstab $ (call inherit-product, build / target / product / full.mk) PRODUCT_NAME: = D10A_HighScreen Attention if there is no dt.img file in your kernel and recovery? then you should not have the line: $ (LOCAL_PATH) /dt.img:dt.img \ The contents of the omni_device_name.mk file should look like this: # Inherit device configuration $ (call inherit-product, device / vendor_name / device_name / device_name.mk) # Device identifier. This must come after all inclusions PRODUCT_DEVICE: = device_name PRODUCT_NAME: = omni_device_name PRODUCT_BRAND: = vendor_name PRODUCT_MODEL: = # device model PRODUCT_MANUFACTURER: = vendor_name All these values ​​are in your system / build.prop stock firmware, rely primarily on them. I have so # Inherit device configuration $ (call inherit-product, device / HighScreen / D10A_HighScreen / D10A_HighScreen.mk) # Device identifier. This must come after all inclusions PRODUCT_DEVICE: = D10A_HighScreen PRODUCT_NAME: = omni_D10A_HighScreen PRODUCT_BRAND: = HighScreen PRODUCT_MODEL: = Boost 2se PRODUCT_MANUFACTURER: = HighScreen Further, from where to get 3 files that we specified in device_name.mk? It's simple, take the programAndroid Image Kitchenand unpack the stock recovery. There will be 2 ramdisk and split_img folders. In the split_img folder, take the file recovery.img-zImage, rename it to kernel. In the same folder, take the file recovery.img-dtb and rename it to dt.img, if this file does not exist, we parse the kernel and look for there only the name will be boot.img-dtb. We put both files in the path device / vendor_name / device_name Next, go to the ramdisk / etc folder, take the file recovery.fstab, put it there as the previous 2 files and edit it to make it look like this, but the paths should be yours! / system ext4 /dev/block/platform/msm_sdcc.1/by-name/system / data ext4 /dev/block/platform/msm_sdcc.1/by-name/userdata / cache ext4 /dev/block/platform/msm_sdcc.1/by-name/cache / boot emmc /dev/block/platform/msm_sdcc.1/by-name/boot / recovery emmc /dev/block/platform/msm_sdcc.1/by-name/recovery / external_sd vfat / dev / block / mmcblk1p1 flags = display = "External_sd"; storage; wipeingui; removable / internal_sd vfat /dev/block/platform/msm_sdcc.1/by-name/usbmsc flags = display = "Internal_sd"; storage; wipeingui; removable / usb-otg vfat / dev / block / sda1 / dev / block / sda flags = display = "USB OTG"; storage; wipeingui; removable We create the BoardConfig.mk file here the most difficult and some values ​​will have to be pulled from the device on the same process. Well, let's go, we write there: # Platform TARGET_BOARD_PLATFORM: = Here we indicate our chip, be sure to see how this line is spelled by a similar device on a git hub. I have so # Platform TARGET_BOARD_PLATFORM: = msm8226 Further # Architecture TARGET_ARCH: = TARGET_ARCH_VARIANT: = TARGET_CPU_ABI: = TARGET_CPU_ABI2: = TARGET_CPU_SMP: = TARGET_CPU_VARIANT: = These values ​​also write off, I have it so # Architecture TARGET_ARCH: = arm TARGET_ARCH_VARIANT: = armv7-a-neon TARGET_CPU_ABI: = armeabi-v7a TARGET_CPU_ABI2: = armeabi TARGET_CPU_SMP: = true TARGET_CPU_VARIANT: = krait Further # Bootloader TARGET_NO_BOOTLOADER: = true TARGET_BOOTLOADER_BOARD_NAME: = The first line does not change, and in the second the name of the chip is mine # Bootloader TARGET_NO_BOOTLOADER: = true TARGET_BOOTLOADER_BOARD_NAME: = MSM8226 Here we will stop on more in detail: # Kernel TARGET_PREBUILT_KERNEL: = # here we specify the path to the device / vendor_name / device_name / kernel kernel BOARD_KERNEL_CMDLINE: = BOARD_KERNEL_BASE: = BOARD_KERNEL_PAGESIZE: = BOARD_KERNEL_SEPARATED_DT: = true BOARD_MKBOOTIMG_ARGS: = With the first line, the line BOARD_KERNEL_CMDLINE, go to the folder of the parsed recovery and look for the file recovery.img-cmdline and enter its contents in this line. The string BOARD_KERNEL_BASE in the same folder as the recovery.img-base file, its contents is entered in this string. Line BOARD_KERNEL_PAGESIZE in the same file recovery.img-pagesize its contents we enter in this line. This BOARD_KERNEL_SEPARATED_DT: = true line does not change. Here BOARD_MKBOOTIMG_ARGS first specify the path to dt.img - dt device / vendor_name / device_name / dt.img Next - kernel_offset write the contents of the file recovery.img-kerneloff Attention if there is no dt.img file in your kernel and recovery? then you should not have the line: BOARD_KERNEL_SEPARATED_DT: = true And in the line: BOARD_MKBOOTIMG_ARGS: = --dt device / vendorname / devicename / dt.img --kernel_offset 0x ******** --ramdisk_offset 0x ******** - tags_offset 0x ******* * There should be no path to this file.--dt device / vendorname / devicename / dt.img, just write like this: BOARD_MKBOOTIMG_ARGS: = --kernel_offset 0x ******** --ramdisk_offset 0x ******** --tags_offset 0x ******** Next --ramdisk_offset here is the contents of the file recovery.img-ramdiskoff And finally - tags_offset is the contents of the file recovery.img-tagsoff, you also need to add before each value 0x (your characters) for clarity, see below. It looks like this to me # Kernel TARGET_PREBUILT_KERNEL: = device / HighScreen / D10A_HighScreen / kernel BOARD_KERNEL_CMDLINE: = console = null androidboot.hardware = qcom user_debug = 31 msm_rtb.filter = 0x37 lpj = 192000 BOARD_KERNEL_BASE: = 0x00000000 BOARD_KERNEL_PAGESIZE: = 2048 BOARD_KERNEL_SEPARATED_DT: = true BOARD_MKBOOTIMG_ARGS: = --dt device / HighScreen / D10A_HighScreen / dt.img --kernel_offset 0x00008000 --ramdisk_offset 0x02000000 - tags_offset 0x01e00000 The next thing we need is the size of the sections in! bytes!, I learned this way, I took recovery.fstab and for example we take the / system partition. Download from Google Play "terminal emulator" (Root is needed) and write su dd if = / dev / block / platform / msm_sdcc.1 / by-name / system of = / sdcard / system.img # Partitions BOARD_BOOTIMAGE_PARTITION_SIZE: = BOARD_RECOVERYIMAGE_PARTITION_SIZE: = BOARD_SYSTEMIMAGE_PARTITION_SIZE: = BOARD_CACHEIMAGE_PARTITION_SIZE: = BOARD_USERDATAIMAGE_PARTITION_SIZE: = The string BOARD_FLASH_BLOCK_SIZE is pulled from a similar device. BOARD_FLASH_BLOCK_SIZE: = There is probably no need to change anything, but just in case, look like a similar spelling # Recovery TARGET_RECOVERY_PIXEL_FORMAT: = "RGBX_8888" TARGET_USERIMAGES_USE_EXT4: = true BOARD_HAS_LARGE_FILESYSTEM: = true BOARD_USE_CUSTOM_RECOVERY_FONT: = \ "roboto_15x24.h \" BOARD_SUPPRESS_EMMC_WIPE: = true And last # TWRP HAVE_SELINUX: = true DEVICE_RESOLUTION: = # here we write the screen resolution TW_IGNORE_MAJOR_AXIS_0: = # we look at it like a similar device RECOVERY_GRAPHICS_USE_LINELENGTH: = # we are looking like a similar device BOARD_HAS_NO_REAL_SDCARD: = # # this is if you have a separate partition for internal memory, and not in the / data section (/ data / media) TW_DEFAULT_EXTERNAL_STORAGE: = # we are looking like a similar device TW_INTERNAL_STORAGE_PATH: = # here we write for example "/ internal_sd" - you have these values ​​in recovery.fstab TW_INTERNAL_STORAGE_MOUNT_POINT: = # then "internal_sd" TW_EXTERNAL_STORAGE_PATH: = # here we write "/ external_sd" TW_EXTERNAL_STORAGE_MOUNT_POINT: = # then "external_sd" # USB Mounting TARGET_USE_CUSTOM_LUN_FILE_PATH: = / sys / devices / platform / msm_hsusb / gadget / lun% d / file # This is the line you are looking for yourself using the root explorer to go through this path, you may have another. And create the last vendorsetup.sh file with the contents add_lunch_combo omni_device_name-userdebug I have it so add_lunch_combo omni_D10A_HighScreen-userdebug Everything, now we will start assembly We collect I want to draw your attention, collect recovery on the commands below, if you collect with the command mka or some other, then look for answers in another topic, you can not write here. [/ B] It's pretty simple cd ~ / omni . build / envsetup.sh lunch omni_device_name-userdebug make -j5 recoveryimage # here we write the number of cores of your CPU +1 Well, now we wait, in the omni / out / folder I don’t remember the exact path, then I’ll write, and you’ll find it, there will be a freshly baked recovery.img. In qms with requests to help me, do not write, I gave you all the necessary information. Only editable suggestions are accepted. Good luck in the assembly of the recovery. Examples MTK 6737fromwalkman8196 Mediatek mt6735mfrom dearhyperion70 Snapdragon S4Thank you sayweritos Snapdragon 410Thank you saydeadlink Mediatek mt6753 Utility We unlock the lock on MTK processors. Another version of the TWRP assembly TWRP assembly instruction video Flags for BoardConfig.mk Build TWRP on Lineage OS 14.1 Solving the problem of landscape / portrait orientation on the tablet Addition to the main instruction, assembly TWRP 3.0. * From wladimir_tm Build TWRP with a minimum set of sources Tips to reduce the size of the recovery from wladimir_tm Installing openjdk7 on Ubuntu 17.04 Russian translation TWRP 2.8.7.0 Useful post for phones with intel processes Solution for system / sepolicy / domain.te error: 446: ERROR 'unknown type camera' at token Sources Post has been editedbaddhet - 11.12.18, 20:12 -------------------- Xiaomi Redmi Note 4X If there are people who learn German and live in St. Petersburg, write in a personal, we will communicate in German. |
Message#3 18.01.15, 22:07 | |
We grow old) [offline] Group: Friendssavagemessiahzine.com Messages 1266 Check in: 30.07.14 Oneplus 5 8/128 Reputation: 105 | [email protected], 17:10 In fact, you need a config for a similar device. Search for a git hub of course. https://github.com/omn...ble_recovery/issues/18 Post has been editedcoqs - 18.01.15, 22:12 -------------------- Qui quaerit reperit |
Message#4 18.01.15, 22:13 | |
Starting a new life. [offline] Topics Curator Group: Curators Messages 2549 Check in: 03.04.12 Xiaomi Redmi Note 4X Snapdragon 3/32 Reputation: 697 | coqs, On a git hub look something like this -https://github.com/AOKP/device_lge_mako?files=1it's on nexus 4. Find about the same. Posted on 01/18/2015 22:13: Then lay out my example. In a couple of days. -------------------- Xiaomi Redmi Note 4X If there are people who learn German and live in St. Petersburg, write in a personal, we will communicate in German. |
Message#5 18.01.15, 22:15 | |
We grow old) [offline] Group: Friendssavagemessiahzine.com Messages 1266 Check in: 30.07.14 Oneplus 5 8/128 Reputation: 105 | [email protected], 22:12 Find about the same. Post has been editedcoqs - 18.01.15, 22:37 -------------------- Qui quaerit reperit |
Message#6 19.01.15, 18:35 | |
We grow old) [offline] Group: Friendssavagemessiahzine.com Messages 1266 Check in: 30.07.14 Oneplus 5 8/128 Reputation: 105 | I would be grateful if you tell me how best to create recovery.fstab recovery.fstab # device mount point fstype mount_flags fs_mgr_flags / dev / block / bootdevice / by-name / system / system ext4 ro, barrier = 1 wait / dev / block / bootdevice / by-name / custpack / custpack ext4 ro, barrier = 1 wait / dev / block / bootdevice / by-name / persist / persist ext4 ro, barrier = 1 wait / dev / block / bootdevice / by-name / cache / cache ext4 noatime, nosuid, nodev, barrier = 1, data = wait, check # PR-551802, add flag 'length' / dev / block / bootdevice / by-name / userdata / data ext4 noatime, nosuid, nodev, barrier = 1 data = ordered / dev / block / mmcblk1p1 / storage / sdcard1 vfat nosuid, nodev, barrier = 1, data = ordered, nodelalloc wait / dev / block / bootdevice / by-name / boot / boot emmc defaults defaults / dev / block / bootdevice / by-name / recovery / recovery emmc defaults defaults / dev / block / bootdevice / by-name / misc / misc emmc defaults defaults / dev / block / bootdevice / by-name / modem / firmware vfat defaults defaults / dev / block / bootdevice / by-name / sbl1 / sbl1 emmc defaults defaults / dev / block / bootdevice / by-name / aboot / aboot emmc defaults defaults / dev / block / bootdevice / by-name / rpm / rpm emmc defaults defaults / dev / block / bootdevice / by-name / tz / tz emmc defaults defaults / dev / block / bootdevice / by-name / hyp / hyp emmc defaults defaults / dev / block / bootdevice / by-name / sec / sec emmc defaults defaults / dev / block / bootdevice / by-name / splash / splash emmc defaults defaults / dev / block / bootdevice / by-name / abootbak / abootbak emmc defaults defaults / dev / block / bootdevice / by-name / rpmbak / rpmbak emmc defaults defaults / dev / block / bootdevice / by-name / tzbak / tzbak emmc defaults defaults / dev / block / bootdevice / by-name / sbl1bak / sbl1bak emmc defaults defaults / dev / block / bootdevice / by-name / hypbak / hypbak emmc defaults defaults In particular, these lines code / external_sd vfat / dev / block / mmcblk1p1 flags = display = "External_sd"; storage; wipeingui; removable / internal_sd vfat /dev/block/platform/msm_sdcc.1/by-name/usbmsc flags = display = "Internal_sd"; storage; wipeingui; removable / usb-otg vfat / dev / block / sda1 / dev / block / sda flags = display = "USB OTG"; storage; wipeingui; removable Post has been editedcoqs - 19.01.15, 18:39 -------------------- Qui quaerit reperit |
Message#7 19.01.15, 19:07 | |
Starting a new life. [offline] Topics Curator Group: Curators Messages 2549 Check in: 03.04.12 Xiaomi Redmi Note 4X Snapdragon 3/32 Reputation: 697 | / external_sd vfat / dev / block / mmcblk1p1 flags = display = "External_sd"; storage; wipeingui; removable You just have it. External no memory card? -------------------- Xiaomi Redmi Note 4X If there are people who learn German and live in St. Petersburg, write in a personal, we will communicate in German. |
Message#8 19.01.15, 19:15 | |
We grow old) [offline] Group: Friendssavagemessiahzine.com Messages 1266 Check in: 30.07.14 Oneplus 5 8/128 Reputation: 105 | The card is the only one in the system that is somehow wonderfully mounted via / dev / fuse (through this fuse, usb-otg, sdcard0, and something else is mounted) this file mounts everything somehowinit.environ.rc.txt(1.32 KB) those. sdcard0 it is somewhere in / data ext4 / dev / block / bootdevice / by-name / userdata or rather the path / data / media / 0 And how, it is interesting, how to mount it? =) Usb-otg fuck with him, he is not needed in recovery. Post has been editedcoqs - 19.01.15, 20:20 -------------------- Qui quaerit reperit |
Message#9 19.01.15, 20:24 | |
Starting a new life. [offline] Topics Curator Group: Curators Messages 2549 Check in: 03.04.12 Xiaomi Redmi Note 4X Snapdragon 3/32 Reputation: 697 | |
Message#10 19.01.15, 20:41 | |
We grow old) [offline] Group: Friendssavagemessiahzine.com Messages 1266 Check in: 30.07.14 Oneplus 5 8/128 Reputation: 105 | In principle, it is possible to assemble without an internal memory card and without usb-otg or is it necessary? And this program in simple mode shows only data and system well, and if you connect the card, then another sdcard1, sdcard0 is located directly in the dada ..... media .... 0 .... Post has been editedcoqs - 19.01.15, 20:51 -------------------- Qui quaerit reperit |
Message#11 19.01.15, 20:55 | |
We grow old) [offline] Group: Friendssavagemessiahzine.com Messages 1266 Check in: 30.07.14 Oneplus 5 8/128 Reputation: 105 | In the end, so I leave / system ext4 / dev / block / bootdevice / by-name / system # / custpack ext4 / dev / block / bootdevice / by-name / custpack / cache ext4 / dev / block / bootdevice / by-name / cache / data ext4 / dev / block / bootdevice / by-name / userdata / external_sd vfat / dev / block / mmcblk1p1 flags = display = "External_sd"; storage; wipeingui; $ / boot emmc / dev / block / bootdevice / by-name / boot / recovery emmc / dev / block / bootdevice / by-name / recovery # / internal_sd vfat /dev/block/platform/msm_sdcc.1/by-name/usbmsc flags = display = "Internal_sd"; storage; wipeingui $ # / usb-otg vfat / dev / block / sda1 / dev / block / sda flags = display = "USB OTG"; storage; wipeingui; rem $ Post has been editedcoqs - 19.01.15, 23:12 -------------------- Qui quaerit reperit |
Message#12 19.01.15, 23:14 | |
Starting a new life. [offline] Topics Curator Group: Curators Messages 2549 Check in: 03.04.12 Xiaomi Redmi Note 4X Snapdragon 3/32 Reputation: 697 | |
Message#13 19.01.15, 23:27 | |
Starting a new life. [offline] Topics Curator Group: Curators Messages 2549 Check in: 03.04.12 Xiaomi Redmi Note 4X Snapdragon 3/32 Reputation: 697 | then lunch and get here -------------------- Xiaomi Redmi Note 4X If there are people who learn German and live in St. Petersburg, write in a personal, we will communicate in German. |
Message#14 19.01.15, 23:39 | |
We grow old) [offline] Group: Friendssavagemessiahzine.com Messages 1266 Check in: 30.07.14 Oneplus 5 8/128 Reputation: 105 | It was necessary to add lunch omni _ * - userdebug WARNING: device / TCL / Alto45 / omni.dependencies file not found Is it critical? what does he want? BATTLE Oh, went from here added file cortex-a53.mkhttps://github.com/Opt...rtex-a53/cortex-a53.mk Mistake bionic / libc / include / string.h: 144: error: undefined reference to 'memset' bionic / libc / include / ln -sf / sbin / unpigz / home / user / omni / out / target / product / Alto45 / recovery / root / sbin / gunzip string.h: 108: error: undefined reference to 'memcpy' bionic / libc / bionic / malloc_debug_common.cpp: 364: error: undefined reference to 'strcmp' bionic / libc / bionic / malloc_debug_common.cpp: 364: error: undefined reference to 'strcmp' bionic / libc / include / string.h: 144: error: undefined reference to 'memset' bionic / libc / include / string.h: 144: error: undefined reference to 'memset' bionic / libc / include / string.h: 144: error: undefined reference to 'memset' bionic / libc / include / string.h: 108: error: undefined reference to 'memcpy' bionic / libc / include / string.h: 108: error: undefined reference to 'memcpy' bionic / libc / include / string.h: 217: error: undefined reference to 'strlen' bionic / libc / include / string.h: 217: error: undefined reference to 'strlen' bionic / libc / include / string.h: 217: error: undefined reference to 'strlen' bionic / libc / include / string.h: 108: error: undefined reference to 'memcpy' bionic / libc / include / string.h: 217: error: undefined reference to 'strlen' bionic / libc / include / string.h: 118: error: reference: strcpy bionic / libc / include / stdio.h: 479: error: undefined reference to 'strcpy' bionic / libc / include / stdio.h: 479: error: undefined reference to 'strcpy' bionic / libc / include / stdio.h: 479: error: undefined reference to 'strcpy' bionic / libc / bionic / stubs.cpp: 235: error: undefined reference to 'strcmp' bionic / libc / bionic / stubs.cpp: 183: error: undefined reference to 'strcmp' bionic / libc / include / string.h: 108: error: reference: reference to '__memcpy_chk' bionic / libc / include / string.h: 108: error: reference: reference to '__memcpy_chk' bionic / libc / include / string.h: 113: error: undefined reference to 'memmove' bionic / libc / include / string.h: 113: error: undefined reference to 'memmove' bionic / libc / include / string.h: 118: error: reference: reference to '__strcpy_chk' bionic / libc / include / string.h: 113: error: undefined reference to 'memmove' bionic / libc / include / string.h: 108: error: reference: reference to '__memcpy_chk' bionic / libc / include / string.h: 113: error: undefined reference to 'memmove' bionic / libc / include / string.h: 118: error: reference: reference to '__strcpy_chk' bionic / libc / include / string.h: 118: error: reference: reference to '__strcpy_chk' collect2: error: ld returned 1 exit status make: *** [/home/user/omni/out/target/product/Alto45/obj/SHARED_LIBRARIES/libc_intermediates/LINKED/libc.so] Error 1 make: *** Waiting for task completion ... Symlink: / home / user / omni / out / target / product / Alto45 / recovery / root / sbin / bbconfig ->busybox user @ user-vm: ~ / omni $ Post has been editedcoqs - 21.01.15, 09:28 -------------------- Qui quaerit reperit |
Message#15 21.01.15, 08:10 | |
Starting a new life. [offline] Topics Curator Group: Curators Messages 2549 Check in: 03.04.12 Xiaomi Redmi Note 4X Snapdragon 3/32 Reputation: 697 | You had a mistake bionic / libc / arch-arm / arm.mk: 41: *** "TARGET_CPU_VARIANT Look at her. It is registered in boardconfig.mk -------------------- Xiaomi Redmi Note 4X If there are people who learn German and live in St. Petersburg, write in a personal, we will communicate in German. |
Message#16 21.01.15, 09:24 | |
We grow old) [offline] Group: Friendssavagemessiahzine.com Messages 1266 Check in: 30.07.14 Oneplus 5 8/128 Reputation: 105 | [email protected], 08:10 bionic / libc / arch-arm / arm.mk: 41: *** "TARGET_CPU_VARIANT Look at her. It is registered in boardconfig.mk -------------------- Qui quaerit reperit |
Message#17 21.01.15, 09:46 | |
Old resident [offline] Group: Friendssavagemessiahzine.com Messages 1167 Check in: 28.11.11 ZUK Z2 Reputation: 204 | |
Message#18 21.01.15, 10:22 | |
Starting a new life. [offline] Topics Curator Group: Curators Messages 2549 Check in: 03.04.12 Xiaomi Redmi Note 4X Snapdragon 3/32 Reputation: 697 | |
Message#19 21.01.15, 10:30 | |
Old resident [offline] Group: Friendssavagemessiahzine.com Messages 1167 Check in: 28.11.11 ZUK Z2 Reputation: 204 | baddhet Damn installed java 6 when checking the version gave an error: they say need 7 ... I understand correctly that it depends on the version of linux? I have ubuntu 14.10 Concerning the last point: j16 means that the operation will be performed in 4 threads for each core. If you have a small-core computer, add 1 to your number of cores and write the result. Regarding the choice of repository: if you choose omni 5.0, then the kernel should be from version 5 android? Or you can use the kernel from 4.4.2 .. Post has been editedIvvaNGrigO - 21.01.15, 11:12 |
Message#20 21.01.15, 10:52 | |
We grow old) [offline] Group: Friendssavagemessiahzine.com Messages 1266 Check in: 30.07.14 Oneplus 5 8/128 Reputation: 105 | [email protected], 09:24 Oh, went from here added file cortex-a53.mkhttps://github.com/Opt...rtex-a53/cortex-a53.mk Created a file bionic / libc / arc-arm / cortex-a53 / cortex-a53.mk, with such content. libc_bionic_src_files_arm + = \ arch-arm / cortex-a15 / bionic / memchr.S \ arch-arm / cortex-a15 / bionic / memcpy.S \ arch-arm / cortex-a15 / bionic / memset.S \ arch-arm / cortex-a15 / bionic / strcat.S \ arch-arm / cortex-a15 / bionic / strcmp.S \ arch-arm / cortex-a15 / bionic / strcpy.S \ arch-arm / cortex-a15 / bionic / strlen.S \ arch-arm / cortex-a15 / bionic / __ strcat_chk.S \ arch-arm / cortex-a15 / bionic / __ strcpy_chk.S \ arch-arm / krait / bionic / memmove.S Post has been editedcoqs - 21.01.15, 11:00 -------------------- Qui quaerit reperit |
Message#21 21.01.15, 11:14 | |
Starting a new life. [offline] Topics Curator Group: Curators Messages 2549 Check in: 03.04.12 Xiaomi Redmi Note 4X Snapdragon 3/32 Reputation: 697 | No, it does not depend on the version; you can do this: sudo update-alternatives --config javac sudo update-alternatives --config java sudo update-alternatives --config javaws sudo update-alternatives --config javadoc sudo update-alternatives --config javah sudo update-alternatives --config javap sudo update-alternatives --config jar Each drain must be entered separately. There will be a choice of which version to use, choose 6 or it will show 1.6.45. I do not remember. Posted 01/21/2015 11:14: And here are your mistakes bionic / libc / include / string.h: 113: error: undefined reference to 'memmove' bionic / libc / include / string.h: 118: error: reference: reference to '__strcpy_chk' Posted 01/21/2015 11:14: Just what you did. Show BoardConfig.mk -------------------- Xiaomi Redmi Note 4X If there are people who learn German and live in St. Petersburg, write in a personal, we will communicate in German. |
mobile version | Now: 05/01/19 13:39 |