انجمنهای فارسی اوبونتو
جامعه کاربران => پروژهها => نویسنده: amin021023 در 01 شهریور 1391، 10:15 بظ
-
سلام و عشق
من اومدم کرنل برای گوشیم کامپایل کنم با هنگام کامپایل با این ارور ها مواجه شدم:
[left]I got this error:
Code:
amin@Amin-Aspire:~/android/kernel/kernel$ make -j2
scripts/kconfig/conf -s arch/arm/Kconfig
CHK include/linux/version.h
SYMLINK include/asm -> include/asm-arm
make[1]: `include/asm-arm/mach-types.h' is up to date.
CHK include/linux/utsrelease.h
UPD include/linux/utsrelease.h
CC scripts/mod/empty.o
MKELF scripts/mod/elfconfig.h
HOSTCC scripts/mod/file2alias.o
HOSTCC scripts/mod/modpost.o
scripts/mod/modpost.c: In function ‘get_markers’:
scripts/mod/modpost.c:1542:12: warning: ignoring return value of ‘asprintf’, declared with attribute warn_unused_result [-Wunused-result]
scripts/mod/modpost.c: In function ‘add_marker’:
scripts/mod/modpost.c:1962:10: warning: ignoring return value of ‘asprintf’, declared with attribute warn_unused_result [-Wunused-result]
HOSTCC scripts/mod/sumversion.o
HOSTLD scripts/mod/modpost
CC kernel/bounds.s
GEN include/linux/bounds.h
CC arch/arm/kernel/asm-offsets.s
GEN include/asm/asm-offsets.h
CALL scripts/checksyscalls.sh
CC init/main.o
HOSTCC usr/gen_init_cpio
GEN usr/initramfs_data.cpio.gz
In file included from include/linux/mempolicy.h:62:0,
from init/main.c:51:
include/linux/pagemap.h: In function 'fault_in_pages_readable':
include/linux/pagemap.h:416:16: error: variable 'c' set but not used [-Werror=unused-but-set-variable]
AS usr/initramfs_data.o
LD usr/built-in.o
cc1: all warnings being treated as errors
make[1]: *** [init/main.o] Error 1
make: *** [init] Error 2
make: *** Waiting for unfinished jobs....[/left]
راستش یه دولوپری بهم گفت برو تو فایل makefile و werror line رو hash کن ولی من نفهمیدم و خجالت کشیدم ازش بپرسم اینی که میگی یعنی چی:دی
لطفا من رو راهنمایی کنید مرسی
-
نمی دونم چرا این option مسخره تو makefile kernel تون تنظیم شده که اگه یک متغیر تعریف شده بود ولی استفاده نشده بود خطا بده و خارج شو.باید از تو تنظیمات کامپایل تون option های -Werror که باعث این عمل میشن رو حذف کنید.طریقه دقیق ترشو نمی تونم بگم چون خودم چند بار این کارو تو چند برنامه مختلف انجام دادم روش دقیقشون فرق داشته.
-
میشه لینک زیر رو که لینک toolcain ای که استفاده میکنم هست رو نگاا کنید و بگید چه جوری werror option رو پاک کنم؟
https://github.com/DooMLoRD/android_prebuilt_toolchains
-
آقا این سورس کرنلی که میخوام کامپایل کنم و اینم ارور لظفا بگید چی کار کنم یکی گفت برواین خط:unused-but-set-variable رو توی makefile مخلوط کن...چه جوری اینکارو بکنم؟و یا دوست بالا گفتن werror option رو حذف کنم...اینو چه جوری؟
این سورس کرنل:https://github.com/freexperia/semc-kernel-qsd8k-ics
اینم toolchain:https://github.com/DooMLoRD/android_prebuilt_toolchains
-
toolchain رو که نفهمیدم چیه. از تو فایل MakeFile کرنل این دو خط رو بردارید:
-Werror \
-Werror-implicit-function-declaration
ببینید درست میشه یا نه.
-
بله اون مشکل حل شد مرسی.
ولی یه ارور دیگه میده:
CC scripts/mod/empty.o
arm-eabi-gcc: error: KBUILD_AFLAGS: No such file or directory
arm-eabi-gcc: error: :=: No such file or directory
make[2]: *** [scripts/mod/empty.o] Error 1
make[1]: *** [scripts/mod] Error 2
make: *** [scripts] Error 2
make: INTERNAL: Exiting with 3 jobserver tokens available; should be 2!
-
اون مشکل برطرف شد حالا موقع کامپایل این ارور رو میده:
In file included from arch/arm/mach-msm/board-es209ra.c:108:0:
include/linux/usb/android.h:47:8: error: redefinition of 'struct usb_composition'
arch/arm/mach-msm/include/mach/msm_hsusb.h:54:8: note: originally defined here
make[1]: *** [arch/arm/mach-msm/board-es209ra.o] Error 1
make: *** [arch/arm/mach-msm] Error 2
این سورسم:https://github.com/freexperia/semc-kernel-qsd8k-ics
کسی میتونه کمک کنه؟
-
اون ارور رو هم برظرف کردم یه ارور دیگه پیدا شد...چرا من همش ارور میگیرم!!!!
-
مشکل از کرنلی که کامپایل می کنید هست.نمیشه کرنل رسمی (kernel.org) رو کامپایل کنید؟
-
بلاخره کرنل خودم رو دادم بیرون!!!!
http://forum.xda-developers.com/showthread.php?t=1867817