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

 
 
85 страниц V  « < 29 30 31 32 33 > »   
Reply to this topicStart new topic
> свежак KGP win32/arm/avr/mips/m68k, GNU tools chain
AHTOXA
сообщение Oct 13 2010, 05:50
Сообщение #451


фанат дивана
******

Группа: Свой
Сообщений: 3 387
Регистрация: 9-08-07
Из: Уфа
Пользователь №: 29 684



Цитата(ReAl @ Oct 13 2010, 02:15) *
на pure virtual функции, ставятся заглушки, которые могут потянуть за собой какой-то код exeptions, который за собой найдёт что потянуть.


Именно так. Я уже как-то писал про это.


--------------------
Если бы я знал, что такое электричество...
Go to the top of the page
 
+Quote Post
AlexeyVoroshen
сообщение Oct 15 2010, 08:39
Сообщение #452





Группа: Участник
Сообщений: 12
Регистрация: 19-08-10
Пользователь №: 59 015



Цитата(dimay192 @ Oct 12 2010, 14:23) *
Значит такс:
1.проект на С++
В общем, структура кода приблизительно такова:
Главная ф-ция:
[code]ResourceManager RM;

[ кусь... ]


Здравствуйте.
Хочу поделиться/посоветовать. Пишу на С++.
У меня вроде с разрастанием кода все неплохо стало smile.gif
Даже с virtual, pure virtual и т.д.
Терпимо - <1,5K всяких либ прилинковывается, самое ненужное - libunwind на 432 байта.

Что сделал:
1. syscalls_r1.c - обязательно всякие sbrk и др.
2. new_delete_fOS_r1.cpp - new и delete переделал под FreeRTOS, но главное вызываются malloc и free
3. ещё добавил:

// При вызове линкера через $(CPP) всё проходит, но из библиотеки libgcc++ в bss помещается много фигни
// (её можно отрубить, включив отбор неиспользуемых функций, но это не всегда надо),
// поэтому определим вызов функции и всё работает при линковке из $(CC)
// call to a pure virtual function happened ... wow, should never happen ... stop
void __cxa_pure_virtual(void) { while(1); }

Может и вам поможет smile.gif
Успехов.
Go to the top of the page
 
+Quote Post
dimay192
сообщение Oct 20 2010, 07:17
Сообщение #453


Участник
*

Группа: Участник
Сообщений: 28
Регистрация: 20-08-08
Пользователь №: 39 711



Ок... Общее направление действий понял...
Пока решил не заморачиваться за С++ (к сожалению мало времени, чтобы ковырять библы). Перевел тот же проект на С и все встало на места - лишнего не тащит, размер кода пришел в норму...
А разобраться надо будет обязательно! Но пока и так сойдет!

/********************************************************
************ Всем спасибо за внимание и участие! ************
********************************************************/
Go to the top of the page
 
+Quote Post
Trizna
сообщение Oct 22 2010, 09:34
Сообщение #454


Участник
*

Группа: Участник
Сообщений: 28
Регистрация: 10-01-07
Пользователь №: 24 278



Можно ли в этой сборке заставить gcc генерировать объектники в COFF формате?
По ключикам пробежался, вроде ни чего похожего нет sad.gif
Надо прилинковать ассемблерную функцию скомпилированную gcc к проекту в VS.
Go to the top of the page
 
+Quote Post
demiurg_spb
сообщение Oct 22 2010, 10:22
Сообщение #455


неотягощённый злом
******

Группа: Свой
Сообщений: 2 746
Регистрация: 31-01-08
Из: Санкт-Петербург
Пользователь №: 34 643



почитайте про ELF->COFF converter

ИМХО objcopy Вам поможет (доки на binutils почитайте)


--------------------
“Будьте внимательны к своим мыслям - они начало поступков” (Лао-Цзы)
Go to the top of the page
 
+Quote Post
klen
сообщение Oct 22 2010, 10:45
Сообщение #456


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

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



Цитата(Trizna @ Oct 22 2010, 13:34) *
Можно ли в этой сборке заставить gcc генерировать объектники в COFF формате?
По ключикам пробежался, вроде ни чего похожего нет sad.gif
Надо прилинковать ассемблерную функцию скомпилированную gcc к проекту в VS.


gcc для x86 выдает объектники и исполняймые в формате PE.
откуда такие сложности? VS таки ассемблер разучился компилять? Вы навно чтото для winCE ваяите?
Go to the top of the page
 
+Quote Post
Trizna
сообщение Oct 22 2010, 10:47
Сообщение #457


Участник
*

Группа: Участник
Сообщений: 28
Регистрация: 10-01-07
Пользователь №: 24 278



Цитата(demiurg_spb @ Oct 22 2010, 13:22) *
почитайте про ELF->COFF converter

ИМХО objcopy Вам поможет (доки на binutils почитайте)


Похоже имеющийся objcopy только под elf заточен sad.gif
d:\TVV\My Dropbox\Temp\cortex>arm-kgp-eabi-objcopy --info




CODE
BFD header file version (Klen's GCC package (KGP) for ARM/elf platform) 2.20.51.20101005
elf32-littlearm
(header little endian, data little endian)
arm
elf32-bigarm
(header big endian, data big endian)
arm
elf32-little
(header little endian, data little endian)
arm
elf32-big
(header big endian, data big endian)
arm
srec
(header endianness unknown, data endianness unknown)
arm
symbolsrec
(header endianness unknown, data endianness unknown)
arm
verilog
(header endianness unknown, data endianness unknown)
arm
tekhex
(header endianness unknown, data endianness unknown)
arm
binary
(header endianness unknown, data endianness unknown)
arm
ihex
(header endianness unknown, data endianness unknown)
arm

elf32-littlearm elf32-bigarm elf32-little elf32-big srec
arm elf32-littlearm elf32-bigarm elf32-little elf32-big srec

symbolsrec verilog tekhex binary ihex
arm symbolsrec verilog tekhex binary ihex



Сообщение отредактировал Trizna - Oct 22 2010, 10:52
Go to the top of the page
 
+Quote Post
klen
сообщение Oct 22 2010, 10:54
Сообщение #458


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

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



для армов только elf, в соff нет нужды, все средсва работают с elf. ELF - промышленный стандарт а coff это поделка микромягких. также как OpenGL и DirectX

у вас один выход - коветнуть.
Go to the top of the page
 
+Quote Post
Trizna
сообщение Oct 22 2010, 10:58
Сообщение #459


Участник
*

Группа: Участник
Сообщений: 28
Регистрация: 10-01-07
Пользователь №: 24 278



Цитата(klen @ Oct 22 2010, 13:45) *
gcc для x86 выдает объектники и исполняймые в формате PE.
откуда такие сложности? VS таки ассемблер разучился компилять? Вы навно чтото для winCE ваяите?

Я ваяю под windows mobile. Армовский ассемблер от микрософта, которым я раньше пользовался не поддерживает Cortex, пришлось использовать gcc? вот мучаюсь пока...

Цитата(klen @ Oct 22 2010, 13:54) *
у вас один выход - коветнуть.


Не подскажете чем?
Go to the top of the page
 
+Quote Post
klen
сообщение Oct 22 2010, 11:51
Сообщение #460


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

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



Цитата(Trizna @ Oct 22 2010, 14:58) *
Не подскажете чем?


ну нада поискать в инете, я не искал. если нет то сами напишите и дайте людям. с форатом ELF нет проблем - есть офицальные доки + бинутилс это сборник примеров как его парсить и модифицировать, вопрос по COFF, говнокодовцы из редмонта дают на него доки?

свежак

mingw64:
http://klen.org/Files/DevTools/x86_64_kgp_...w32_20101022.7z

arm-eabi под x86_64:
http://klen.org/Files/DevTools/kgp_arm_eab..._64_20101022.7z
Go to the top of the page
 
+Quote Post
injen-d
сообщение Oct 22 2010, 15:47
Сообщение #461


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

Группа: Свой
Сообщений: 91
Регистрация: 10-10-07
Из: Воронежа
Пользователь №: 31 250



Цитата(klen @ Oct 22 2010, 15:51) *

Распаковал kgp_arm_eabi_x86_64_20101022.7z при попытке запуска пишет, что arm-kgp-eabi-gcc.exe не является приложением Win32


--------------------
- Бендер, ты же робот, зачем тебе пить пиво?
- Незачем! Я могу бросить в любой момент!
Go to the top of the page
 
+Quote Post
klen
сообщение Oct 22 2010, 16:26
Сообщение #462


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

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



Цитата(injen-d @ Oct 22 2010, 19:47) *
Распаковал kgp_arm_eabi_x86_64_20101022.7z при попытке запуска пишет, что arm-kgp-eabi-gcc.exe не является приложением Win32

правильно пишет. написано же ''arm-eabi под x86_64" x86_64 это 64 битные винды. для 32битных масдаев я не собрал - давайте медленно но верно относить старье на помойку истории. мож у нас тут комунизм окончательно победил но чтото я сомневаюсь что Вы написали верхний пост с машины у которой 32юитный проц, они ж ужо вроде и не продаются. если сильно нада то соберу 32битную сборку - но хотелосьбы в перспективе от этого отказатся.
Go to the top of the page
 
+Quote Post
injen-d
сообщение Oct 22 2010, 16:40
Сообщение #463


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

Группа: Свой
Сообщений: 91
Регистрация: 10-10-07
Из: Воронежа
Пользователь №: 31 250



Понятно. Смутила надпись x86_64, обычно пишут либо х86, либо х64 (насчет корректности записи х64 не знаю, но пишут так почти везде), подумал, что там две версии, а потом не обратил внимания, что в архиве только одна.
ИМХО, не стоит отказываться от х86, ибо всё еще бывают проблемы с дровами для специфических девайсов и с некоторым ПО.


--------------------
- Бендер, ты же робот, зачем тебе пить пиво?
- Незачем! Я могу бросить в любой момент!
Go to the top of the page
 
+Quote Post
klen
сообщение Oct 22 2010, 16:53
Сообщение #464


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

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



Цитата(injen-d @ Oct 22 2010, 20:40) *
Понятно. Смутила надпись x86_64, обычно пишут либо х86, либо х64 (насчет корректности записи х64 не знаю, но пишут так почти везде), подумал, что там две версии, а потом не обратил внимания, что в архиве только одна.
ИМХО, не стоит отказываться от х86, ибо всё еще бывают проблемы с дровами для специфических девайсов и с некоторым ПО.

я считаю так - первая хрень это архитектура(читай набор инструкций) вторая это разрадность. поэтому указываю и то и другое.

отказыватся НАДА, только не всегда это возможно. нада старатся. на линуксе это произошло вместе с процессорами.
я щас соберу и выложу. хотя нехотелось wink.gif
Go to the top of the page
 
+Quote Post
AHTOXA
сообщение Oct 22 2010, 17:01
Сообщение #465


фанат дивана
******

Группа: Свой
Сообщений: 3 387
Регистрация: 9-08-07
Из: Уфа
Пользователь №: 29 684



Цитата(klen @ Oct 22 2010, 22:26) *
для 32битных масдаев я не собрал - давайте медленно но верно относить старье на помойку истории.


Ну это вы напрасноsmile.gif Думаю, что значительно более половины тутошних виндузятников сидит под ХР 32-бит, и ещё какое-то время никуда не двинутся. Особенно в свете того, что, как я читал, 7-я винда не даёт ставить неподписанные дрова (прощайте LPT-шные программаторы с giveio, прощай olimex MSP430-JTAG-TINY, и ещё куча интересных железок.)
Ну или, если говорить только про себя, то лично я пока сижу под ХР 32-битsmile.gif


--------------------
Если бы я знал, что такое электричество...
Go to the top of the page
 
+Quote Post

85 страниц V  « < 29 30 31 32 33 > » 
Reply to this topicStart new topic
13 чел. читают эту тему (гостей: 13, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 26th July 2025 - 07:12
Рейтинг@Mail.ru


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