Компиляция Эльфпака : Эльфостроение : Форум |
Страница 1 из 25: [1] 2 3 4 5 ... 25 » |
awg: |
10.07.08, 13:23 |
Итак. Т.к. исходники открыто лежат на svn://svn.boba.su/SE (используйте guest/guest для авторизации) или на зеркале http://perk11.info/svn/SE/, то решил написать небольшой фак по компиляции эльфпака с этих ресурсов. Для начала заходим на один из этих сайтов и скачиваем содержимое папок ElfPack (со всеми вложенными папками), include, C++ с сохранением расположений и названий папок. Т.е. у вас должно получится следущее, в одном месте должно находится: -папка C++ и все ее содержимое -папка ElfPack и все ее содержимое -папка include и все ее содержимое Все файлы, что нужны для компиляции, мы скачали. Теперь нужно скачать чем компилировать. Это берем отсюда:Урезанная IAR Распаковываем содержимое куда-нибудь (мой путь выглядит так: c:\Program Files\Embedded Workbench 4.0 Evaluation). Теперь находим файл ElfPack.eww в папке ElfPack и ассоциациируем его для простоты дальнейших действий с IAR, т.е. правой кнопкой на ElfPack.eww -> свойства -> приложения кнопка "Изменить" -> кнопка "Обзор" -> ищем файл в дериктории (в моем случае) c:\Program Files\Embedded Workbench 4.0 Evaluation\common\bin\IarIdePM.exe -> кнопка "открыть" -> кнопка "ОК" -> кнопка "Применить" -> кнопка "ОК" Далее при двойном клике на ElfPack.eww должно открыться окно программы. Переходим в меню Project, выбираем пункт Edit Configurations и в диалоговом окне выбираем ту модель телефона с той прошивкой, которую вам нужно, жмем "ОК". Далее заходим все в то же меню Project и выбираем пункт Rebuild All. Если все хорошо, то внизу в окне с логом будет примерно следующее: Total number of errors: 0 Total number of warnings: 7 Теперь у вас в папке ElfPack появились еще папки: Debug, settings, W610_R6BC002 (у вас свое), и файл ElfPack.dep. Заходим в: W610_R6BC002\Exe\ и видим там файл ElfPack.elf Теперь нам нужно перевести файл ElfPack.elf в формат *.vkp. Переходим в ElfPack\_Utils. Кидаем в нее файл *.raw от нужной вам прошивки, в моем случае w610_R6BC002.raw, и скомпилированный IAR'ом ElfPack.elf из папки W610_R6BC002\Exe\ (см. выше). Теперь редактируем блокнотом файл make.bat (в моем случае так): elf2vkp ElfPack.elf xxx.vkp "C:\Comp\ElfPack\_Utils\w610_R6BC002.raw" 0x44140000 cnv 0x44140000 xxx.vkp out.vkp Сохраняем его (обращаем внимание на выделенный текст, где 0x44140000 начальный адрес вашей прошивки. Его можно узнать с помощью этой софтины). Все, теперь если все правильно сделали, остается только двойным кликом щелкнуть по make.bat, и у вас в появится два файла: out.vkp xxx.vkp out.vkp - это и есть эльфпак для вашего тела. После всего проделанного папки Debug, settings, W610_R6BC002 (у вас свое), и файл ElfPack.dep можно удалить. Теперь относительно расположения папок ZBin, Deamons, Config, Ini. Для определенных телефонов это расположение может отличаться друг от друга. Но начиная с папки other расположение одинаковое. Заходим в ElfPack\Target\ и ищем файл с названием вашего телефона и вашей прошивки, в моем случае W610_R6BC002.h. Открываем его блокнотом и видим примерно следущее (показываю только то, что имеет смысл по данному примечанию): Код: .... #define PATH_ELF_ROOT_INT (L"/usb/other") #define PATH_ELF_ROOT_EXT (L"/card/other") #define PATH_ELF_INT (L"/usb/other/ZBin") #define PATH_ELF_EXT (L"/card/other/ZBin") #define PATH_ELF_DAEMONS_INT (L"/usb/other/ZBin/Daemons") #define PATH_ELF_DAEMONS_EXT (L"/card/other/ZBin/Daemons") #define PATH_ELF_CONFIG_INT (L"/usb/other/ZBin/Config") #define PATH_ELF_CONFIG_EXT (L"/card/other/ZBin/Config") #define PATH_INI (L"/usb/other/ini") #define PATH_DEFAULT (L"/usb/other") .... Это и будет правильное расположение ваших папок. Готовые эльфпаки, которые автоматом генерируются при любом изменении содержимого на svn://svn.boba.su/SE, можно найти здесь http://justdanpo.cheb.ru/elfpack Также, для телефонов на платформе DB2010 надо брать *.raw с замейном, иначе при перегонке ElfPack.elf в *.vkp вылетит ошибка. Замейн в прошивку можно добавить с помощью программы Recovery BIN Lite, инструкция и сама прога находятся здесь. Потом полученный файл уже перегнать в *.raw. Для телефонов на платформе A2 (только на тех, на которых ElfPack устанавливается сразу в 2 файла: phone_app.cxc и phone_emp_app.cxc) надо брать *.raw или *.cxc (не знаю имеет ли значение формат файла) в котором будут совмещены должным образом 2 файла (что значит должным образом? Обратите внимания на адреса с которых начинаются и которыми заканчиваются эти файлы ), phone_app.cxc и phone_emp_app.cxc, а также в конце этого файла должны присутствовать зануленная область, достаточная для того, чтоб до нее дотянулись адреса и разместился сам патч ElfPack'а, иначе при перегонке ElfPack.elf в *.vkp возможно вылетит ошибка и патч скомпилируется не полностью. Получить файл *.raw нужной вам прошивки для телефонов на платформах DB20xx можно с помощью этой софтины. Достаточно перетащить файл вашей прошивки (либо файл полученный с помощью Recovery BIN Lite) на babe2raw.exe, и на выходе рядом со значком программы появится файл *.raw Также перегнать файл Elfpack.elf в формат *.vkp можно несколько проще, за что говорим спасибо INFerno--. INFerno-- Для компиляторщиков, сделал elf2vkp специально для SE, не каких махинаций с замейном на DB2010 делать не надо, автоматически добавляется модель телефона и версия прошивки в выходной файл, так же можно добавлять комментрарии из файла, прошивка используется BABE, а не RAW, базы тоже вводить не надо. Usage: elf2vkp.exe elfname.elf main.mbn [comment.txt] elfname.elf - Собственно сам эльф main.mbn - Файл прошивки (BABE) comment.txt - Файл с комментариями (можно не указывать) elf2vkp.zip и ещё одна версия конвертора - elf2vkpex (краткое описание) Вроде все! И как обычно: Все вышеизложенное вы проделываете на свой страх и риск! Автор: © awg |
rdn: |
20.07.08, 14:41 |
У меня почему то в IAR выскакивают вот эти ошибки. Компилю для w200 014. Что я не так делаю? Код: Warning[Pe231]: declaration is not visible outside of function D:\порт\компиляция эльфпака\elfpack\include\png.h 1551 Warning[Pe301]: typedef name has already been declared (with same type) D:\порт\компиляция эльфпака\elfpack\include\Lib_Clara.h 41 Warning[Pe231]: declaration is not visible outside of function D:\порт\компиляция эльфпака\elfpack\include\png.h 1551 Warning[Pe301]: typedef name has already been declared (with same type) D:\порт\компиляция эльфпака\elfpack\include\Lib_Clara.h 41 Warning[Pe231]: declaration is not visible outside of function D:\порт\компиляция эльфпака\elfpack\include\png.h 1551 Warning[Pe301]: typedef name has already been declared (with same type) D:\порт\компиляция эльфпака\elfpack\include\Lib_Clara.h 41 Warning[Pe001]: last line of file ends without a newline D:\порт\компиляция эльфпака\elfpack\include\k750.h 303 Error[Pe037]: the #endif for this directive is missing D:\порт\компиляция эльфпака\elfpack\include\k750.h 72 Error[Pa002]: the type attribute "__thumb" is not allowed on this declaration D:\порт\компиляция эльфпака\elfpack\include\k750.h 303 Error[Pe065]: expected a ";" D:\порт\компиляция эльфпака\elfpack\ElfPack\vars.h 24 Warning[Pe012]: parsing restarts here after previous syntax error D:\порт\компиляция эльфпака\elfpack\ElfPack\vars.h 29 Warning[Pe223]: function "ListElement_Prt2NumElement" declared implicitly D:\порт\компиляция эльфпака\elfpack\ElfPack\InternalFunc.c 205 Warning[Pe223]: function "AllocDirHandle" declared implicitly D:\порт\компиляция эльфпака\elfpack\ElfPack\InternalFunc.c 484 Error[Pe144]: a value of type "int" cannot be used to initialize an entity of type "int *" D:\порт\компиляция эльфпака\elfpack\ElfPack\InternalFunc.c 484 Warning[Pe223]: function "GetFname" declared implicitly D:\порт\компиляция эльфпака\elfpack\ElfPack\InternalFunc.c 518 Error[Pe513]: a value of type "int" cannot be assigned to an entity of type D:\порт\компиляция эльфпака\elfpack\ElfPack\InternalFunc.c 518 Warning[Pe223]: function "DestroyDirHandle" declared implicitly D:\порт\компиляция эльфпака\elfpack\ElfPack\InternalFunc.c 539 |
INFerno--: |
21.07.08, 10:00 |
Для компиляторщиков, сделал elf2vkp специально для SE, не каких махинаций с замейном на DB2010 делать не надо, автоматически добавляется модель телефона и версия прошивки в выходной файл, так же можно добавлять комментрарии из файла, прошивка используется BABE, а не RAW, базы тоже вводить не надо. Usage: elf2vkp.exe elfname.elf main.mbn [comment.txt] elfname.elf - Собственно сам эльф main.mbn - Файл прошивки (BABE) comment.txt - Файл с комментариями (можно не указывать) |
awg: |
24.07.08, 10:13 |
rdn У меня почему то в IAR выскакивают вот эти ошибки. Компилю для w200 014. Что я не так делаю? Обьясняю один раз. На свн'е не дураки файлы выкладывают, и если получаются какие либо ошибки, то здесь: -либо виновата кривоватость рук, что ведет к все таки либо неправильному расположению файлов и папок, либо недокачки каких нить файлов, либо криво скаченых (и еще хуже самостоятельно случайно или нарошно правленных) файлов; -либо к глюки системы (в чем я лично не разбираюсь, что в принципе не дает мне право так говорить); -либо сам IAR глючный (в чем я лично не разбираюсь, что в принципе не дает мне право так говорить). Проверяйте все еще раз. И настоятельно рекомендую скачивать все содержимое папок, т.к. я сам проверял, и при отсутствии одного или нескольких файлов выдаются ошибки и нужный файл на выходе не появляется. |
Joker XT: |
24.07.08, 14:07 |
sam22 Ошибка связана с тем, что КРИВО ПОРТАНУТА DATA_N из xcl Я выкладывал нормальные xcl в моде элбфпака вместе с мод2 |
Khort: |
24.07.08, 15:13 |
Joker XT У меня такая же ошибка, как у sam22, появлялась при попытке скомпилировать мод 4 бета.. А те, что на свн лежат компилятся без ошибок. |
Joker XT: |
24.07.08, 16:30 |
Khort Неможет такого быть, в моём DATA_N=4C02C7C4-4C02C7CB Какраз 8 байт... На свн больше, поэтому может быть ребуть в дальнешем ;) |
Toreton: |
31.08.08, 21:14 |
блин.. ну неполучаеться скомпилить 5 мод ЭП! в чем проблема??? Код: Building configuration: ElfPack - W200_R4HA014 Updating build tree... 5 file(s) deleted. Updating build tree... InternalFunc.c K600_R2BB001.asm K750_R1CA021.asm K770_R8BA024.asm K790_R8BF003.asm K800_R8BF003.asm K810_R8BA024.asm W200_R4HA014.asm W300_R4EA031.asm W550_R4CB020.asm W580_R8BA024.asm W580_R8BE001.asm W600_R7CA017.asm W610_R6BC002.asm W610_R8BA024.asm W660_R6AD001.asm W660_R8BB001.asm W700_R1CA021.asm W710_R1JC002.asm W800_R1BC002.asm W800_R1BD001.asm W810_R4DB005.asm W810_R4EA031.asm W850_R1KG001.asm W880_R8BA024.asm Z530_R6DA001.asm Z550_R6CA009.asm Z550_R6GA004.asm Z610_R6DA001.asm calls.asm elfloader.cpp Warning[Pe231]: declaration is not visible outside of function C:\SE\include\png.h 1551 helper.c Warning[Pe231]: declaration is not visible outside of function C:\SE\include\png.h 1551 regfile.c Warning[Pe231]: declaration is not visible outside of function C:\SE\include\png.h 1551 Error[Pe020]: identifier "DATA" is undefined C:\SE\ElfPack\regfile.c 113 Error[Pe020]: identifier "data" is undefined C:\SE\ElfPack\regfile.c 113 Error[Pe029]: expected an expression C:\SE\ElfPack\regfile.c 113 Error[Pe020]: identifier "FILETYPE" is undefined C:\SE\ElfPack\regfile.c 114 Error[Pe020]: identifier "ft" is undefined C:\SE\ElfPack\regfile.c 114 Error[Pe020]: identifier "DATA" is undefined C:\SE\ElfPack\regfile.c 156 Error[Pe029]: expected an expression C:\SE\ElfPack\regfile.c 156 swi.asm Total number of errors: 7 Total number of warnings: 3 |
arban: |
31.08.08, 22:19 |
Toreton инклуды заново с свн скачай |
Noodle: |
21.11.08, 15:45 |
Последний мод от Tartes для k810 R8BA024 не компилится Код: Building configuration: ElfPack - K810_R8BA024 Updating build tree... 49 file(s) deleted. Updating build tree... dbext.c kbdhook.c utils.c intfunc.asm init.c library.c swi.asm func.asm helper.c udata.c uihook.c elficons.c regfile.c elfloader.cpp intfunc_impl.c source.asm mem.c Linking Error[e46]: Undefined external "ImageID_GetIndirect" referred in elficons ( D:\IAR\elfloader\ K810_R8BA024\Obj\elficons.r79 ) Error[e46]: Undefined external "w_fstat" referred in init ( D:\IAR\elfloader\K810_R8BA024\Obj\ init.r79 ) Total number of errors: 2 Total number of warnings: 0 В чем может быть проблема? Для остальных моделей все проходит нормально. |
Страница 1 из 25: [1] 2 3 4 5 ... 25 » |
URL этой темы: https://mobilefree.justdanpo.ru/newbb_plus/viewtopic.php?topic_id=3183 © 2005-2018 supertrubka.org |