2016-10-10 2 views
0

Я установил Ubuntu 16.04 бродягой. Однако, когда я запускаю приложение Android 7.0, происходит следующая ошибка.Android 7.0 Ошибка сборки

Есть ли какие-либо предложения или рекомендации для меня?

ninja: Entering directory `.' 
[ 0% 39/34804] host Java: ahat (out/ho...A_LIBRARIES/ahat_intermediates/classes 
Note: Some input files use unchecked or unsafe operations. 
Note: Recompile with -Xlint:unchecked for details. 
[ 0% 53/34804] Generating TOC: out/tar.../core-all_intermediates/classes.jar.to 
FAILED: /bin/bash -c "(out/host/linux-x86/bin/ijar out/target/common/obj/JAVA_LIBRARIES/core-all_intermediates/classes.jar out/target/common/obj/JAVA_LIBRARIES/core-all_intermediates/classes.jar.toc.tmp) && (if cmp -s out/target/common/obj/JAVA_LIBRARIES/core-all_intermediates/classes.jar.toc.tmp out/target/common/obj/JAVA_LIBRARIES/core-all_intermediates/classes.jar.toc ; then rm out/target/common/obj/JAVA_LIBRARIES/core-all_intermediates/classes.jar.toc.tmp ; else mv out/target/common/obj/JAVA_LIBRARIES/core-all_intermediates/classes.jar.toc.tmp out/target/common/obj/JAVA_LIBRARIES/core-all_intermediates/classes.jar.toc ; fi)" 
output_length=16459012 
Unable to open output file out/target/common/obj/JAVA_LIBRARIES/core-all_intermediates/classes.jar.toc.tmp: Invalid argument 
/bin/bash: line 1: 13460 Aborted     (core dumped) (out/host/linux-x86/bin/ijar out/target/common/obj/JAVA_LIBRARIES/core-all_intermediates/classes.jar out/target/common/obj/JAVA_LIBRARIES/core-all_intermediates/classes.jar.toc.tmp) 
ninja: build stopped: subcommand failed. 
build/core/ninja.mk:148: recipe for target 'ninja_wrapper' failed 
make: *** [ninja_wrapper] Error 1 

ответ

1

Я думаю, что это так же, как и Invalid argument for read-write mmap?

Если вы должны быть папка общего использования, пожалуйста, изменить сборки/инструменты/ijar/zip.cc

@@ -994,7 +994,7 @@ ZipBuilder* ZipBuilder::Create(const char* zip_file, u8 estimated_size) { 
    (u8) std::numeric_limits<size_t>::max()) 
    void *zipdata_out = mmap(NULL, mmap_length, PROT_WRITE, 
-       MAP_SHARED, fd_out, 0); 
+       MAP_SHARED | MAP_ANONYMOUS, fd_out, 0); 
    if (zipdata_out == MAP_FAILED) { 
     fprintf(stderr, "output_length=%llu\n", estimated_size); 
     return NULL; 

https://groups.google.com/forum/#!topic/android-building/qXsk-YpMdYo может быть, так же как и ты.

Надеюсь, это полезно.

+0

формат err.please изменить код в ZipBuilder :: Create() метод: MAP_SHARED -> MAP_SHARED | MAP_ANONYMOUS – user7063108

+0

Хотя эта ссылка может ответить на вопрос, лучше включить здесь основные части ответа и предоставить ссылку для справки. Ответные ссылки могут стать недействительными, если связанная страница изменится. - [Из обзора] (/ review/low-quality-posts/14077868) –

+0

Спасибо Jignesh Ansodariya. Существенной частью является использование ijar exe mmap в build/tools/ijar/zip.cc.Когда вы создаете AndroidN на VM, если папка находится в папке общего доступа, будет ошибка в mmap.You можете исправить код: mmap (xxx, xxx, MAP_SHARED, xxx) в mmap (xxx, xxx, MAP_SHARED | MAP_ANONYMOUS, xxx) в ZipBuilder :: Create() метод , Я думаю, что все будет в порядке, иначе вам нужно переместить код в папку без доступа. Простите, мой английский плохой. – user7063108

Смежные вопросы