2016-11-05 14 views
0

나는 사이 애 노젠 모드 (13) 내가 점점 오전 오류C/C++ Cyanogenmod 다른 툴체인 버전을 사용하여 커널을 컴파일하는 방법은 무엇입니까?

ERROR: modpost: Found 2 section mismatch(es). 
To see full details build your kernel with: 
'make CONFIG_DEBUG_SECTION_MISMATCH=y' 
To build the kernel despite the mismatches, build with: 
'make CONFIG_NO_ERROR_ON_MISMATCH=y' 
(NOTE: This is not recommended) 

내가 here 읽기에 대한 커널을 컴파일하려합니다. 4.7을 사용하여 커널을 컴파일해야합니다. cyanogenmod 빌드 중 toolchain 버전을 어떻게 선택할 수 있습니까 ??

답변

0

@nopasara와 그의 귀중한 의견 덕분입니다.

그래서 나는 더 이상 연구를하지 않았고 커널이 arm-eabi tool chain이 아니라 arm-linux-androideabi toolchain과 호환된다는 것을 발견했습니다. 그래서 여기 내가

TARGET_KERNEL_CROSS_COMPILE_PREFIX := arm-eabi- 

및 하나를 사용하여 BoardConfig.mk에 행 다음에 추가이 사이 애 노젠 모드와는

export PATH=$PATH:~/android/system/prebuilts/gcc/linux-x86/arm/arm-linux-eabi-4.7/bin/ && export ARCH=arm && export SUBARCH=arm && export CROSS_COMPILE=arm-linux-eabi- && make msm8226_defconfig O=~/android/system/out/target/product/E6790/obj/KERNEL_OBJ 

make O=~/android/system/out/target/product/E6790/obj/KERNEL_OBJ zImage -j4 

을 사용하는 명령은

export TARGET_LEGACY_GCC_VERSION=4.7 

또는 ~ ~ android/syste 수정 m/빌드/코어/콤보/TARGET_linux-arm.mk이 포스트에서

$(combo_2nd_arch_prefix)TARGET_LEGACY_GCC_VERSION := 4.7 
1

gcc 버전 4.7을 설치하고 CC 변수를 사용하여 컴파일러로 설정해야한다고 생각합니다. 예 : make target CC=/bin/gcc4.7

자세한 정보는 herehere입니다.

+0

메신저 시도하는 방법의 설정 버전, UR 답장을 보내 주셔서 감사합니다. 나는 urs도 시도 할 것이다. http://forum.xda-developers.com/chef-central/android/guide-switching-to-custom-toolchain-t2927662 – DeepSidhu1313

+1

방금 ​​여러분의 게시물에 toolchain 셋업을 설명하는 링크가 있다는 것을 알게되었습니다 :'export PATH = $ PATH : /toolchains/arm-linux-androideabi-4.7/prebuilt/linux-x86_64/bin/ 수출 ARCH = 팔 수출 아마도 해당 아키텍처 나 서브 아키텍처 = 팔 수출 CROSS_COMPILE = 팔 리눅스 androideabi- 메이크업 hammerhead_defconfig 메이크업의 -j2 'PATH 환경 변수는 툴체인 경로에 의해 추가됩니다. 필요한 toolchain 디렉토리가 PATH 디렉토리 목록의 첫 번째 디렉토리인지 확인하십시오. – nopasara