ایجاد یک محیط ساخت

این بخش نحوه تنظیم محیط کار محلی شما برای ساخت فایل های منبع Android را توضیح می دهد. شما باید از لینوکس استفاده کنید. ساختمان در MacOS یا Windows پشتیبانی نمی شود. به خاطر داشته باشید تغییر مهم به /usr/bin/python باینری و همچنین.

برای یک مرور کلی از کل کد بررسی و کد به روز رسانی روند، و زندگی یک پچ .

انتخاب شعبه

برخی از الزامات برای محیط ساخت با نسخه کد منبع که قصد تدوین آن را دارید تعیین می شود. برای یک لیست کامل از شاخه های در دسترس، و شماره ساخت . شما همچنین می توانید انتخاب کنید برای دانلود و ساخت شدن کد منبع (به نام master )، که در این صورت شما به سادگی حذف مشخصات شعبه زمانی که شما مقداردهی اولیه مخزن.

پس از انتخاب شعبه ، دستورالعمل های مناسب زیر را دنبال کنید تا محیط ساخت خود را تنظیم کنید.

راه اندازی محیط ساخت لینوکس

این دستورالعمل را به تمام شاخه، از جمله اعمال master .

نسخه اندروید به طور معمول در خانه در اوبونتو LTS (14.04) و تست دبیان آزمایش می شود. اکثر توزیع های دیگر باید ابزارهای ساخت مورد نیاز را در اختیار داشته باشند.

برای شیرینی زنجفیلی (2.3.X) و نسخه های بالاتر، از جمله master شاخه، یک محیط 64 بیتی مورد نیاز است. نسخه های قدیمی تر را می توان در سیستم های 32 بیتی کامپایل کرد.

نصب بسته های مورد نیاز (اوبونتو 18.04)

شما به نسخه 64 بیتی اوبونتو نیاز دارید.

sudo apt-get install git-core gnupg flex bison build-essential zip curl zlib1g-dev gcc-multilib g++-multilib libc6-dev-i386 libncurses5 lib32ncurses5-dev x11proto-core-dev libx11-dev lib32z1-dev libgl1-mesa-dev libxml2-utils xsltproc unzip fontconfig

نصب بسته های مورد نیاز (اوبونتو 14.04)

شما به نسخه 64 بیتی اوبونتو نیاز دارید (14.04 توصیه می شود).

sudo apt-get install git-core gnupg flex bison gperf build-essential zip curl zlib1g-dev gcc-multilib g++-multilib libc6-dev-i386 libncurses5 lib32ncurses5-dev x11proto-core-dev libx11-dev lib32z-dev libgl1-mesa-dev libxml2-utils xsltproc unzip

نصب بسته های مورد نیاز (اوبونتو 12.04)

ممکن است از Ubuntu 12.04 برای ساخت نسخه های قدیمی تر Android استفاده کنید. نسخه 12.04 است پشتیبانی نمی master و یا نسخه های اخیر.

sudo apt-get install git gnupg flex bison gperf build-essential zip curl libc6-dev libncurses5-dev:i386 x11proto-core-dev libx11-dev:i386 libreadline6-dev:i386 libgl1-mesa-glx:i386 libgl1-mesa-dev g++-multilib mingw32 tofrodos python-markdown libxml2-utils xsltproc zlib1g-dev:i386
sudo ln -s /usr/lib/i386-linux-gnu/mesa/libGL.so.1 /usr/lib/i386-linux-gnu/libGL.so

نصب بسته های مورد نیاز (اوبونتو 10.04-11.10)

ساخت Ubuntu 10.04-11.10 دیگر پشتیبانی نمی شود ، اما ممکن است برای ایجاد نسخه های قدیمی AOSP مفید باشد.

sudo apt-get install git gnupg flex bison gperf build-essential zip curl zlib1g-dev libc6-dev lib32ncurses5-dev ia32-libs x11proto-core-dev libx11-dev lib32readline5-dev lib32z-dev libgl1-mesa-dev g++-multilib mingw32 tofrodos python-markdown libxml2-utils xsltproc

در اوبونتو 10.10:

sudo ln -s /usr/lib32/mesa/libGL.so.1 /usr/lib32/mesa/libGL.so

در اوبونتو 11.10:

sudo apt-get install libx11-dev:i386

پیکربندی دسترسی USB

نصب مجموعه ای به طور پیش فرض، جامعه حفظ از udev قوانین برای تمام دستگاه های آندروید با پیروی از دستورالعمل ها را به راه اندازی یک دستگاه برای توسعه .

با استفاده از یک دایرکتوری خروجی جداگانه

به طور پیش فرض، خروجی از هر ساخت در های ذخیره شده out/ زیر شاخه از درخت منبع منطبق.

در برخی از ماشینهای دارای چندین دستگاه ذخیره سازی ، هنگام ذخیره فایلهای منبع و خروجی در حجمهای جداگانه ، سرعت ساخت سریعتر است. برای عملکرد بیشتر ، خروجی را می توان در یک سیستم فایل بهینه سازی شده برای سرعت و به جای استحکام خرابی ذخیره کرد ، زیرا در صورت خراب شدن سیستم فایل ، همه پرونده ها را می توان بازسازی کرد.

برای تنظیم این تا، صادرات OUT_DIR_COMMON_BASE متغیر به نقطه به مکانی که دایرکتوری خروجی خود را ذخیره خواهد شد.

export OUT_DIR_COMMON_BASE=<path-to-your-out-directory>

فهرست خروجی برای هر درخت منبع جداگانه به نام دایرکتوری که درخت منبع را نگه داشته است نامگذاری شده است. به عنوان مثال، اگر شما درختان منبع /source/master1 و /source/master2 و اگر OUT_DIR_COMMON_BASE تنظیم شده است /output ، دایرکتوری خروجی /output/master1 و /output/master2 .

از ذخیره چندین درخت منبع در دایرکتوری هایی که نام آنها یکسان است خودداری کنید ، زیرا درختان منبع در نهایت یک دایرکتوری خروجی را به اشتراک می گذارند ، با نتایج غیرقابل پیش بینی. این فقط در ژله باقلا سبز (4.1) پشتیبانی و بالاتر، از جمله master شعبه است.

بعدی: منبع را بارگیری کنید

محیط ساخت شما خوب است! اقدام به دانلود منبع .