реклама на сайте
подробности

 
 
> gcc: свежак для выни, gcc4.3.0-20071102_bu-cvs20071104 newlib-cvs20071106_gdb-cvs20071105.7z
klen
сообщение Nov 5 2007, 19:36
Сообщение #1


бессмертным стать можно тремя способами
*****

Группа: Свой
Сообщений: 1 405
Регистрация: 9-05-06
Из: Москва
Пользователь №: 16 912



свежая сборка:
binutils 20071104
gcc4.3.0 20071102
newlib
gdb 20071105

размер ~14,3мб
архив формате 7z
оноже самораспакающееся
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Leen
сообщение Nov 10 2007, 02:13
Сообщение #2


Частый гость
**

Группа: Свой
Сообщений: 172
Регистрация: 5-08-06
Из: Владивосток
Пользователь №: 19 343



Развернул архив klena в c:\, получил папку c:\test_arm со всем причетающимся. Внес в системный путь папку c:\test_arm\bin. Добавлял в конец!
Проверяю:
сделал файлик main.c (такой же, как и у Abo);
запустил filemon, с фильтром *gcc*
main.c лежит в D:\temp, там же открыта консоль.
вызываю нечистую силу:
Код
D:\TEMP>arm-elf-gcc main.c
D:\TEMP>

смотрю: появился a.out. Круто...
Смотрю лог:
Код
11:44:36    arm-elf-gcc.exe:2384    DIRECTORY    C:\test_arm\libexec\gcc\arm-elf\4.3.0\    SUCCESS    FileBothDirectoryInformation: cc1.exe    
11:44:36    arm-elf-gcc.exe:2384    DIRECTORY    C:\test_arm\arm-elf\bin\    SUCCESS    FileBothDirectoryInformation: as.exe    
11:44:36    arm-elf-gcc.exe:2384    QUERY INFORMATION    C:\test_arm\libexec\gcc\arm-elf\4.3.0\collect2.exe    SUCCESS    Attributes: A

Далее collect2, роясь у себя в локальной папке (C:\test_arm\libexec\gcc\arm-elf\4.3.0\), безуспешно пытается найти линкер, но я че-то не заметил, когда они нашли друг друга... Потом линкер прилинковывает к временному объектнику разные либы и радостно выкладывает мне a.out. Все...
Притом, повторю, добавлена в путь была только одна директория...
2klen: а зачем в test_arm\arm-elf\bin лежит весь набор гцц для арм-эльф без префиксов? Я посмотрел - они ведь для армов? Это не мусор?
Go to the top of the page
 
+Quote Post
klen
сообщение Nov 10 2007, 09:15
Сообщение #3


бессмертным стать можно тремя способами
*****

Группа: Свой
Сообщений: 1 405
Регистрация: 9-05-06
Из: Москва
Пользователь №: 16 912



Цитата(Leen @ Nov 10 2007, 05:13) *
а зачем в test_arm\arm-elf\bin лежит весь набор гцц для арм-эльф без префиксов? Я посмотрел - они ведь для армов? Это не мусор?

Не это не мусор. front-end (arm-elf-gcc.exe) для сборки образа использует только тулсами лежащими в /arm-elf/bin библами /arm-elf/lib и хидерами /arm-elf/include. то что лежит в arm-elf/bin есть абсалютно теже файлы чсто в /bin c приефиксом arm-elf-*.exe. Их наличие позволяет их использовать внешним программам(например IDE) не вызывая front-end, для специфических действий.

Структура папок, расположение файлов и путевой механизм в GCC выбраны из сдедющих соображений:
1. Возможность наличия в одной корневой папке ХОТЬ МУЛЬОН!!! компиллеров для разных таргетов, разных версий для одного таргета (в нашем случае ето arm-elf). Ключивое слово - НИКТО НИКОМУ НЕ МЕШАЕТ.
2. При наличии вышеописанной ситуации обеспечена при вызывах соответствующего frontend АВТОМАТИЧЕСКОГО подставления НУЖНЫХ путей библиотек, нужных хидеров и ресурсных файлов. Ключевая фраза - FRONTEND - АВТОМАТИЧЕСКИ за Вас обеспечивает сборку тоько с файлами ресурсов и либами для ВАШЕГО!! таргета.
3. Если вы не хотите по какимто причинам использовать frontend (его по дукоментации часто называют еще и драйвером таргета, потому что он рулит сборкой соответствующими таргету cc1,cc1plus,as,coolect2,ld) Вы можете воспользоватся непосредственно утилитами, НО ТАК КАК ПРИНЯТО УКАЗЫВАТЬ ПУТЬ ТОЛЬКО В /BIN то вам необходимо будет использовать копии файлов размешенных в /bin в которых добавлин в имени префикс, уникальный для каждого таргета. Ключивое сфраза - ВЫ САМИ РЕШАЕТЕ ЧТО ЗА БИБЛЫ И ЛИБЫ И ТД соответствует сборке под Ваш таргет. будьте уверены, Вас попросят указать все пути которые только можно.

Пример, у меня в d:/KGP/ расположено все борохло - тоесть минимально-полные тулчейны (binutils+gcc+libc+gdb) для таргетов avr, arm-elf, arm-elf-cirrus, i686-pc-mingw32,i686-pc-linux с соответствующими наборами либов и хидеров.

Теаперь представте - я еду хрен знает куда(командировка) и там нада подправить ошибки и пререпрошить устройство. Что я делаю - я кладу ВЕСЬ d:/KGP на флешь, прописываю путь к PATH_IN_FLASH/KGP/bin и усиленно РАБОТАЮ А НЕ ТРАХАЮСЬ С ИНСТАЛЯЦИЯМИ В СЛИТЯ ala mastdia win32 !!! ЕСЛИ ТАМ МЕНЯ ПОПРОСЯТ СДЕЛАТЬ РАБОЧЕЕ МЕСТО я кидаю PATH_IN_FLASH/KGP/ с флеша в ЛЮБОЕ место на докальной машине!!! опятьже прописываю путь к bin и все работает. НИКАКОГО ЗАСИРАНИЯ РЕЕСТРА И ТП.

Теперь попробуйте поставить и ЗАСТАВИТ РАБОТАТЬ!!! сразу несколько версий C++Builder, VStudio c разными версиями DDK,DXSDK тд, и для полной картины еще ихже вариации для разработки софта для UMPC. ЖОПА будет всекосмической, это я вам как тот у кого это стоит на ноуте говорю.

вывод: на все вопросы которые былы заданы "A почему так gcc работает а не иначе..." ответ единый - не почему ( ессесено и натурально потому что он так написан) а зачем! затем чтоб был процесс разработки целевого кода а не процесс траха с тем что этот код должно генерить.

Все что знал сказал. как на духу, ниче не утаил.
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- klen   gcc: свежак для выни   Nov 5 2007, 19:36
- - zltigo   Когда-то у нас c тобой был разговор о toolchain по...   Nov 5 2007, 20:32
|- - klen   Цитата(zltigo @ Nov 5 2007, 23:32) Когда-...   Nov 5 2007, 20:51
|- - zltigo   Цитата(klen @ Nov 5 2007, 23:51) "пр...   Nov 5 2007, 21:57
- - sensor_ua   2 zltigo А может, всё-таки машину реальную или вир...   Nov 5 2007, 22:49
|- - zltigo   Цитата(sensor_ua @ Nov 6 2007, 00:49) А м...   Nov 5 2007, 23:59
|- - klen   2_злтига бинутилс собрался, гсс не собрался - нуж...   Nov 6 2007, 08:26
|- - zltigo   Цитата(klen @ Nov 6 2007, 10:26) НО!...   Nov 6 2007, 08:29
|- - klen   Цитата(zltigo @ Nov 6 2007, 11:29) А зака...   Nov 6 2007, 08:53
- - Abo   2 klen: Здравствуйте, прошу помощи, ибо сломал сег...   Nov 8 2007, 14:19
|- - klen   Цитата(Abo @ Nov 8 2007, 17:19) 2 klen: i...   Nov 9 2007, 04:32
|- - Abo   Цитата(klen @ Nov 9 2007, 07:32) Косяк.. ...   Nov 9 2007, 08:45
|- - klen   Цитата(Abo @ Nov 9 2007, 11:45) я так дум...   Nov 9 2007, 14:16
|- - Abo   Цитата(klen @ Nov 9 2007, 17:16) я что? п...   Nov 9 2007, 17:03
|- - klen   Цитата(Abo @ Nov 9 2007, 20:03) ну файл g...   Nov 9 2007, 20:09
|- - Abo   Цитата(klen @ Nov 9 2007, 23:09) да ни кт...   Nov 9 2007, 21:20
|- - klen   Цитата(Abo @ Nov 10 2007, 00:20) Прошу об...   Nov 9 2007, 22:03
|- - Artemii Panasuk   Цитата(klen @ Nov 10 2007, 01:03) Это чет...   Nov 13 2007, 15:07
|- - klen   Цитата(Artemii Panasuk @ Nov 13 2007, 18...   Nov 13 2007, 15:29
|- - Artemii Panasuk   Цитата(klen @ Nov 13 2007, 18:29) Я скоро...   Nov 13 2007, 15:37
|- - Abo   Цитата(klen @ Nov 13 2007, 18:29) Я скоро...   Nov 15 2007, 08:26
- - amw   Вообще-то правильно работать ВСЕГДА через arm-elf-...   Nov 9 2007, 11:32
- - Rst7   Цитата(klen @ Nov 5 2007, 21:36) свежая с...   Nov 9 2007, 14:24
- - Leen   Цитата(klen @ Nov 10 2007, 19:15) Все что...   Nov 10 2007, 09:37
|- - klen   Цитата(Leen @ Nov 10 2007, 12:37) судя по...   Nov 10 2007, 10:10
|- - Abo   2 klen Продолжаем разговор. Провел с утра такой э...   Nov 12 2007, 08:05
|- - klen   >>Резюме - "что то не так в консерватор...   Nov 12 2007, 19:44
- - Abo   Оказывается с подобным поведением GCC под вистой д...   Nov 16 2007, 13:31


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 29th June 2025 - 23:44
Рейтинг@Mail.ru


Страница сгенерированна за 0.01422 секунд с 7
ELECTRONIX ©2004-2016