我正在编译Android模拟器的Linux源代码。当我执行make命令(用于构建和交叉编译linux源代码)时,出现以下错误“pmem.c”文件。错误与“pmem.c”编译Android的源代码为Android
[email protected]:~/common# make
CHK include/linux/version.h
CHK include/linux/utsrelease.h
SYMLINK include/asm -> include/asm-x86
CALL scripts/checksyscalls.sh
CHK include/linux/compile.h
CC drivers/misc/pmem.o
drivers/misc/pmem.c:441: error: conflicting types for ‘phys_mem_access_prot’
/home/preetam/common/arch/x86/include/asm/pgtable.h:383: note: previous declaration of ‘phys_mem_access_prot’ was here
drivers/misc/pmem.c: In function ‘flush_pmem_file’:
drivers/misc/pmem.c:805: error: implicit declaration of function ‘dmac_flush_range’
drivers/misc/pmem.c: In function ‘pmem_setup’:
drivers/misc/pmem.c:1265: error: implicit declaration of function ‘ioremap_cached’
drivers/misc/pmem.c:1266: warning: assignment makes pointer from integer without a cast
make[2]: *** [drivers/misc/pmem.o] Error 1
make[1]: *** [drivers/misc] Error 2
make: *** [drivers] Error 2
[email protected]:~/common#
如何解决此错误。似乎在“pmem.c”文件中可能存在一些问题,我将不得不选择不同的git存储库。但那将是一件非常复杂的事情,因为现在我已经完成了大部分事情直到这里。我可能不得不看这个文件的正确版本。请有人告诉我该怎么办?
如何解决这个错误。
请帮助..thankyou!
你从哪里得到了android内核源代码e代码? – KBoek 2011-03-19 08:03:53
您的ARCH设置不再支持。 CROSS_COMPILE也从命令行中消失。在这种情况下,你的构建会失败,因为你已经开始用ARCH = arm构建你的内核了! 无论如何,你的帖子并没有真正能够按照教程,并在每一个失败的步骤发布一个新的问题,而没有试图自己去想你做错了什么。但更糟糕的是,你甚至没有投票或承认帮助你的人。 – Longfield 2011-03-19 08:39:39
我很抱歉,但为了“投票”,我应该有15个声望点。 – Preetam 2011-03-19 09:34:25