2012-06-27 2 views
1

Я следовал за эти шаги во время работы в направлении создания Android:Android Источник Ошибка компиляции

  1. http://source.android.com/source/initializing.html
  2. http://source.android.com/source/downloading.html
  3. http://source.android.com/source/building.html

Примечание: Я бегу Linux Mint 13 64-битный. (и я в значительной степени новичок в Linux).

Я столкнулся с множеством проблем до сих пор, которые я разрешил с помощью googling, и вполне возможно, что я испортил что-то, чего я не должен был иметь. Проблема, что я в настоящее время сталкивается, и что я не могу обойти/решить следующий:

На этапе три (здания), при выдаче команды сделать -j4 я получаю следующий результат:

============================================ 
PLATFORM_VERSION_CODENAME=AOSP 
PLATFORM_VERSION=4.0.4.0.4.0.4 
TARGET_PRODUCT=full 
TARGET_BUILD_VARIANT=eng 
TARGET_BUILD_TYPE=release 
TARGET_BUILD_APPS= 
TARGET_ARCH=arm 
TARGET_ARCH_VARIANT=armv7-a 
HOST_ARCH=x86 
HOST_OS=linux 
HOST_OS_EXTRA=Linux-3.2.0-23-generic-x86_64-with-LinuxMint-13-maya 
HOST_BUILD_TYPE=release 
BUILD_ID=OPENMASTER 
OUT_DIR=out 
============================================ 
host Executable: acp (out/host/linux-x86/obj/EXECUTABLES/acp_intermediates/acp) 
host Executable: aapt (out/host/linux-x86/obj/EXECUTABLES/aapt_intermediates/aapt) 
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/4.6/libstdc++.so when searching for -lstdc++ 
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/4.6/libstdc++.a when searching for -lstdc++ 
/usr/bin/ld: cannot find -lstdc++ 
collect2: ld returned 1 exit status 
make: *** [out/host/linux-x86/obj/EXECUTABLES/acp_intermediates/acp] Error 1 
make: *** Waiting for unfinished jobs.... 
host Executable: aidl (out/host/linux-x86/obj/EXECUTABLES/aidl_intermediates/aidl) 
logtags: out/target/common/obj/JAVA_LIBRARIES/framework_intermediates/src/telephony/java/com/android/internal/telephony/EventLogTags.java <= frameworks/base/telephony/java/com/android/internal/telephony/EventLogTags.logtags 
/usr/bin/ld: cannot find -lz 
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/4.6/libstdc++.so when searching for -lstdc++ 
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/4.6/libstdc++.a when searching for -lstdc++ 
/usr/bin/ld: cannot find -lstdc++ 
collect2: ld returned 1 exit status 
make: *** [out/host/linux-x86/obj/EXECUTABLES/aapt_intermediates/aapt] Error 1 
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/4.6/libstdc++.so when searching for -lstdc++ 
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/4.6/libstdc++.a when searching for -lstdc++ 
/usr/bin/ld: cannot find -lstdc++ 
collect2: ld returned 1 exit status 
make: *** [out/host/linux-x86/obj/EXECUTABLES/aidl_intermediates/aidl] Error 1 

ps: не стесняйтесь спрашивать у меня больше подробностей относительно моей среды, и я предоставлю его, просто я не уверен, что еще включить, и я не хочу, чтобы это сообщение было плотным для чтения.

Спасибо за любую помощь.

@homer_simpson Я думаю, что я решил недостающее libz пакет Dev с» "Sudo APT-получить установку zlib1g-DEV"

, но когда я пытаюсь "Sudo APT-получить установку libstdC++", я получаю следующий вывод :

Reading package lists... Done 
Building dependency tree  
Reading state information... Done 
Note, selecting 'libstdc++-dev-armel-cross' for regex 'libstdc+' 
Note, selecting 'libstdc++6-4.4-doc' for regex 'libstdc+' 
Note, selecting 'libstdc++6-4.2-dbg-armel-cross' for regex 'libstdc+' 
Note, selecting 'libstdc++5' for regex 'libstdc+' 
Note, selecting 'libstdc++6' for regex 'libstdc+' 
Note, selecting 'libstdc++6-armel-cross-armhf' for regex 'libstdc+' 
Note, selecting 'libstdc++6-4.1-dbg' for regex 'libstdc+' 
Note, selecting 'libstdc++-dev-armhf-cross' for regex 'libstdc+' 
Note, selecting 'libstdc++6-4.1-doc' for regex 'libstdc+' 
Note, selecting 'libstdc++6-4.2-dbg-armhf-cross' for regex 'libstdc+' 
Note, selecting 'libstdc++2.9-dev' for regex 'libstdc+' 
Note, selecting 'libstdc++6-4.4-pic' for regex 'libstdc+' 
Note, selecting 'libstdc++6-4.6-armhf-cross-dbg-armel' for regex 'libstdc+' 
Note, selecting 'libstdc++6-4.3-dbg-armel-cross' for regex 'libstdc+' 
Note, selecting 'libstdc++6-dev-armel-dcv1' for regex 'libstdc+' 
Note, selecting 'libstdc++6-4.3-dbg-armhf-cross' for regex 'libstdc+' 
Note, selecting 'libstdc++-dev-armhf-dcv1' for regex 'libstdc+' 
Note, selecting 'libstdc++6-4.5-dbg' for regex 'libstdc+' 
Note, selecting 'libstdc++6-4.5-dev' for regex 'libstdc+' 
Note, selecting 'libstdc++6-4.4-dbg-armel-cross' for regex 'libstdc+' 
Note, selecting 'libstdc++6-4.5-doc' for regex 'libstdc+' 
Note, selecting 'libstdc++-dev' for regex 'libstdc+' 
Note, selecting 'libstdc++2.10-dev' for regex 'libstdc+' 
Note, selecting 'libstdc++2.9-glibc2.1-dev' for regex 'libstdc+' 
Note, selecting 'libstdc++6-dbg-armel-dcv1' for regex 'libstdc+' 
Note, selecting 'libstdc++6-4.2-dbg' for regex 'libstdc+' 
Note, selecting 'libstdc++6-4.4-dbg-armhf-cross' for regex 'libstdc+' 
Note, selecting 'libstdc++6-4.2-doc' for regex 'libstdc+' 
Note, selecting 'libstdc++6-armhf-dcv1' for regex 'libstdc+' 
Note, selecting 'libstdc++6-pic-armel-dcv1' for regex 'libstdc+' 
Note, selecting 'libstdc++6-4.5-pic' for regex 'libstdc+' 
Note, selecting 'libstdc++6-4.5-dbg-armel-cross' for regex 'libstdc+' 
Note, selecting 'libstdc++6-4.4-dev-armel-cross' for regex 'libstdc+' 
Note, selecting 'libstdc++6-4.4-pic-armel-cross' for regex 'libstdc+' 
Note, selecting 'libstdc++6-4.5-dbg-armhf-cross' for regex 'libstdc+' 
Note, selecting 'libstdc++5-3.3-dbg-armel-cross' for regex 'libstdc+' 
Note, selecting 'libstdc++6-4.4-dev-armhf-cross' for regex 'libstdc+' 
Note, selecting 'libstdc++6-4.6-dbg-armel-cross' for regex 'libstdc+' 
Note, selecting 'libstdc++6-4.6-dbg' for regex 'libstdc+' 
Note, selecting 'libstdc++6-4.6-dev' for regex 'libstdc+' 
Note, selecting 'libstdc++6-4.6-doc' for regex 'libstdc+' 
Note, selecting 'libstdc++6-4.5-dev-armel-cross' for regex 'libstdc+' 
Note, selecting 'libstdc++6-4.4-pic-armhf-cross' for regex 'libstdc+' 
Note, selecting 'libstdc++6-dev-armhf-dcv1' for regex 'libstdc+' 
Note, selecting 'libstdc++5-3.3-dbg-armhf-cross' for regex 'libstdc+' 
Note, selecting 'libstdc++5-dbg' for regex 'libstdc+' 
Note, selecting 'libstdc++5-doc' for regex 'libstdc+' 
Note, selecting 'libstdc++6-4.5-pic-armel-cross' for regex 'libstdc+' 
Note, selecting 'libstdc++6-4.6-dbg-armhf-cross' for regex 'libstdc+' 
Note, selecting 'libstdc++6-4.3-dbg' for regex 'libstdc+' 
Note, selecting 'libstdc++6-armel-cross' for regex 'libstdc+' 
Note, selecting 'libstdc++6-4.3-dev' for regex 'libstdc+' 
Note, selecting 'libstdc++6-4.5-dev-armhf-cross' for regex 'libstdc+' 
Note, selecting 'libstdc++6-4.3-doc' for regex 'libstdc+' 
Note, selecting 'libstdc++6-4.6-pic' for regex 'libstdc+' 
Note, selecting 'libstdc++5-dbg-armel-cross' for regex 'libstdc+' 
Note, selecting 'libstdc++6-4.0-dbg-armel-cross' for regex 'libstdc+' 
Note, selecting 'libstdc++6-4.6-dev-armel-cross' for regex 'libstdc+' 
Note, selecting 'libstdc++6-4.5-pic-armhf-cross' for regex 'libstdc+' 
Note, selecting 'libstdc++6-armhf-cross' for regex 'libstdc+' 
Note, selecting 'libstdc++6-4.0-dbg' for regex 'libstdc+' 
Note, selecting 'libstdc++6-dbg-armhf-dcv1' for regex 'libstdc+' 
Note, selecting 'libstdc++6-armhf-cross-armel' for regex 'libstdc+' 
Note, selecting 'libstdc++6-4.6-pic-armel-cross' for regex 'libstdc+' 
Note, selecting 'libstdc++6-4.0-doc' for regex 'libstdc+' 
Note, selecting 'libstdc++2.8-dev' for regex 'libstdc+' 
Note, selecting 'libstdc++6-pic-armhf-dcv1' for regex 'libstdc+' 
Note, selecting 'libstdc++5-dbg-armhf-cross' for regex 'libstdc+' 
Note, selecting 'libstdc++6-4.0-dbg-armhf-cross' for regex 'libstdc+' 
Note, selecting 'libstdc++6-4.6-dev-armhf-cross' for regex 'libstdc+' 
Note, selecting 'libstdc++-dev-armel-dcv1' for regex 'libstdc+' 
Note, selecting 'libstdc++5-3.3-dbg' for regex 'libstdc+' 
Note, selecting 'libstdc++6-dbg-armel-cross' for regex 'libstdc+' 
Note, selecting 'libstdc++6-4.1-dbg-armel-cross' for regex 'libstdc+' 
Note, selecting 'libstdc++5-3.3-doc' for regex 'libstdc+' 
Note, selecting 'libstdc++6-4.6-pic-armhf-cross' for regex 'libstdc+' 
Note, selecting 'libstdc++3.0-dev' for regex 'libstdc+' 
Note, selecting 'libstdc++6-4.6-armel-cross-dbg-armhf' for regex 'libstdc+' 
Note, selecting 'libstdc++6-dbg' for regex 'libstdc+' 
Note, selecting 'libstdc++6-doc' for regex 'libstdc+' 
Note, selecting 'libstdc++6-dbg-armhf-cross' for regex 'libstdc+' 
Note, selecting 'libstdc++6-4.1-dbg-armhf-cross' for regex 'libstdc+' 
Note, selecting 'libstdc++6-4.4-dbg' for regex 'libstdc+' 
Note, selecting 'libstdc++6-4.4-dev' for regex 'libstdc+' 
Note, selecting 'libstdc++6-armel-dcv1' for regex 'libstdc+' 
Note, selecting 'libstdc++6-armel-cross' instead of 'libstdc++6-armel-dcv1' 
Note, selecting 'libstdc++6-armhf-cross' instead of 'libstdc++6-armhf-dcv1' 
libstdc++6 is already the newest version. 
libstdc++6-4.6-dev is already the newest version. 
libstdc++6-4.6-dev set to manually installed. 
Some packages could not be installed. This may mean that you have 
requested an impossible situation or if you are using the unstable 
distribution that some required packages have not yet been created 
or been moved out of Incoming. 
The following information may help to resolve the situation: 

The following packages have unmet dependencies: 
libstdc++6-4.5-dbg : Conflicts: libstdc++6-4.4-dbg but 4.4.7-1ubuntu2 is to be installed 
libstdc++6-4.5-dbg-armel-cross : Conflicts: libstdc++6-4.4-dbg-armel-cross but 4.4.7-1ubuntu2cross1.52 is to be installed 
libstdc++6-4.5-dbg-armhf-cross : Conflicts: libstdc++6-4.4-dbg-armhf-cross but 4.4.7-1ubuntu2cross1.52 is to be installed 
libstdc++6-4.5-doc : Conflicts: libstdc++6-4.4-doc but 4.4.7-1ubuntu2 is to be installed 
libstdc++6-4.6-dbg : Conflicts: libstdc++6-4.4-dbg but 4.4.7-1ubuntu2 is to be installed 
         Conflicts: libstdc++6-4.5-dbg but 4.5.3-12ubuntu2 is to be installed 
libstdc++6-4.6-dbg-armel-cross : Conflicts: libstdc++6-4.4-dbg-armel-cross but 4.4.7-1ubuntu2cross1.52 is to be installed 
            Conflicts: libstdc++6-4.5-dbg-armel-cross but 4.5.3-12ubuntu2cross1.61 is to be installed 
libstdc++6-4.6-dbg-armhf-cross : Conflicts: libstdc++6-4.4-dbg-armhf-cross but 4.4.7-1ubuntu2cross1.52 is to be installed 
            Conflicts: libstdc++6-4.5-dbg-armhf-cross but 4.5.3-12ubuntu2cross1.61 is to be installed 
libstdc++6-4.6-doc : Conflicts: libstdc++6-4.4-doc but 4.4.7-1ubuntu2 is to be installed 
         Conflicts: libstdc++6-4.5-doc but 4.5.3-12ubuntu2 is to be installed 
E: Unable to correct problems, you have held broken packages. 
+0

Google телеконференция для Здание Android будет более подходящим местом для этого, здесь, https://groups.google.com/forum/?fromgroups#!forum/android-building, вы, скорее всего, получите лучший ответ, чем здесь :) Следовательно, это не вопрос программирования и не вписывается в StackOverflow. См. FAQ (http://stackoverflow.com/faq), следовательно, голосование, чтобы закрыть это. – t0mm13b

ответ

1

Я никогда не строить Android на моем собственном Но, похоже, вам не хватает Дев пакеты для libz и libstdC++ на вашем дистрибутиве Linux

+0

добавил некоторые детали в исходное сообщение, спасибо за вашу помощь. –

+0

Я думаю, вам нужен один из libstdC++ ???? - dev-arm пакетов, для кросс-компиляции Android. Но я никогда этого не делал. –

0

скорее всего вы пропустили $ source build/envsetup.sh шаг, который.. должно быть p errected каждый раз, когда вы выходите из системы/входите в терминал. Этот шаг устанавливает правильные пути к библиотекам и исполняемым файлам, и ваша сборка определенно не может найти некоторые из них.

Если все остальное терпит неудачу, я бы рекомендовал использовать Ubuntu 10.10 для построения Android, так как это версия Linux, фактически используемого Google, и должна работать безупречно (это делает для меня =)

+0

Я не пропустил. build/envsetup.sh –

+0

Тогда я бы порекомендовал Ubuntu 10.4-10.10, он действительно работает, я пробовал. На самом деле я начал с разных дистрибутивов/версий, но после получения некоторых смешных ошибок я понятия не имел, как исправить, я потратил 30 минут на установку Ubuntu 10.10 и с тех пор не было никаких проблем. – lenik

+0

Я потратил много времени на создание среды, и я довольно сдержанно начинаю :(Спасибо за совет. –