Перейти к содержанию
    

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

Ну или, если говорить только про себя, то лично я пока сижу под ХР 32-бит:)

 

ай жесть какаято..

ставлю самодельные дрова к соим устройствам под семерку - даже не жужжит! кажется билли своей дланью до моих дровишек не дотягивалсо с намеренем аффтограф поставить. и вообще ее(винду) никто не спрашивает хотит она или нет, кто в доме папа? они даже аутентификацию пользоватедя до сихпор сделать несумели как нада, а вы 'драйверы не подписаны". ну даладно... нехочу про винду - мерзкая она и работает мерзко и код под нее я из подпалки пишу, потомучто написать не мерзкий код под мерзкую ос невозможно - кривизна пластинок должна сответствовать кривизне патифона - иначе заклинит.

 

вот 32 битная сборка:

 

http://electronix.ru/redirect.php?http://k..._32_20101022.7z

я ее 3минуты назад собрал и не тестил - собираю и работю под убунтой, чтоб проверить нада перегружатся. если че докину если че забыл положить. вроде все как обычно.

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

вот 32 битная сборка:

 

Спасибо:)

В принципе работает, в смысле - запускается. Но на сборке моего тестового (рабочего) проекта (C++) выдало странную ошибку:

"invalid argument to gimple call".

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Спасибо:)

В принципе работает, в смысле - запускается. Но на сборке моего тестового (рабочего) проекта (C++) выдало странную ошибку:

"invalid argument to gimple call".

GIMPLE - это форма представления дерева программы которую юзает gcc, наверно налетели на какойто редкий косяг. нитересно. а предыдущая сборкак как? переваривает исходник?

оно еще строку кода и имя исходника написать - есть такое?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

GIMPLE - это форма представления дерева программы которую юзает gcc, наверно налетели на какойто редкий косяг.

Понятно. Странно, что внутренняя ошибка GCC обрабатывается как ошибка в компилируемой программе.

а предыдущая сборкак как? переваривает исходник?

Я несколько предыдущих сборок пропустил, каюсь, не было времени совсем. Но та пред-пред-пред-предыдущая, которой я сейчас пользуюсь, - не выдаёт такой ошибки. Дату сборки посмотрю позже, если надо.

оно еще строку кода и имя исходника написать - есть такое?

Да, заругалось на конкретную переменную в конкретной строке. Типа, на ch в строке

TxChannel.Push(ch);

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

ставлю самодельные дрова к соим устройствам под семерку - даже не жужжит!
Ну а вот есть inpout-что-то там, под XP/64 без проблем работает, под W7/64 не хочет, ругается на неподписанный драйвер. Что ей сделать?

Где-от натыкался на рекомендации как что и куда, но они требуют каждый раз при загрузке F8 тыкать и особым образом загружаться. Как-то грустно.

Собственно, мне как бы и всё равно, сам под убунтой и с FT2232 сижу, но «народ интересуется».

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

празничный билд!

свежак для армов, HALLOWEEN_EDITIION. жеско отимизирует выходной код при компиляции тыкв с фанриками!

 

Win32:

klen.org/Files/DevTools/kgp-arm-eabi_x86_32_HALLOWEEN_EDITIION.7z

 

Win64

klen.org/Files/DevTools/kgp-arm-eabi_x86_64_HALLOWEEN_EDITIION.7z

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

я вижу ситуацию равнобедренно. нефиг тому что не относится к компиллеру там делать.

но с другой стороны - вместе с этим наборчиком получается минимальный полный набор джентельмена.

поэтому я думаю что make,rm, sh будут в отдельном архивчике с постоянным URL и будет все задокументировано в readme к KGP.

 

Здравствуйте уважаемы Klen!

Прежде всего спасибо за Вашу работу...

 

У меня возникла проблема с поиском make,rm, sh

Где можно найти этот "отдельный архивчик"?

В KGP искомого readme и URL-ов я не нашел

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

У меня возникла проблема с поиском make,rm, sh

Где можно найти этот "отдельный архивчик"?

Вам нужен MSYS

http://www.mingw.org/wiki/MSYS

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

ставить весь MSYS нет необходимости, вы его всеравно не будете использовать при работе. изза 4 файлов ставить сотню другую, незачем

http://klen.org/Files/DevTools/make_sh_rm_touch.7z

только тех утилит что мспользуются при сборке проектов с помощью make

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

make all

..compiling main.c

'c:\gcc\kgp_arm_eabi\bin'\arm-kgp-eabi-gcc -std=c99 -fpack-struct -mcpu=cortex-m3 -mthumb -O0 -c main.c -o main.o

...linking

'c:\gcc\kgp_arm_eabi\bin'\arm-kgp-eabi-ld -Map main.map -T linker.ld main.o -o sops_kg.out

main.o: In function `kg_add_kv':

main.c:(.text+0x7748): undefined reference to `memcpy'

main.o: In function `event_add':

main.c:(.text+0x8f78): undefined reference to `__disable_irq'

main.c:(.text+0x8fa4): undefined reference to `memcpy'

main.c:(.text+0x8fd8): undefined reference to `__enable_irq'

main.c:(.text+0x8fee): undefined reference to `__enable_irq'

main.o: In function `event_free':

main.c:(.text+0x9008): undefined reference to `__disable_irq'

main.c:(.text+0x9024): undefined reference to `__enable_irq'

main.c:(.text+0x9056): undefined reference to `memcpy'

main.c:(.text+0x9086): undefined reference to `__enable_irq'

make: *** [sops_kg.out] Error 1

 

Что он от меня просит?

memcpy я нигде не использую, компилятор вставляет ее сам (например, при присваивании структур). Линкер не может найти.

 

Второй вопрос? а где взять __disable_irq и т.п.?

 

PS. Ухожу от Keil`a

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Ухожу от Keil`a

И это правильно:)

Что касаемо вопроса - используйте в качестве линкера не ld, а gcc - он в курсе стандартных библиотек, и сам подключит нужные.

Ну или указываете все либы явно (-lgcc, -lc и т. д.)

Ну а __disable_irq - в CMSIS, в файле "core_cm3.h".

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Не помогает(

 

...linking

'c:\gcc\kgp_arm_eabi\bin'\arm-kgp-eabi-ld -Map main.map -T linker.ld libc.a libgcc.a main.o -o sops_kg.out

main.o: In function `kg_add_kv':

main.c:(.text+0x7748): undefined reference to `memcpy'

 

Файлы приписал явно, поместил в директорию проекта, т.е. линкер их находит

 

Причем nm -r libc.a

 

lib_a-memcpy.o:

00000000 T memcpy

 

а nm -r main.o

 

000013e8 R menu

U memcpy

0000db84 T main

00000004 C lost

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Не помогает(

А первый вариант? С gcc?

 

'c:\gcc\kgp_arm_eabi\bin'\arm-kgp-eabi-ld -Map main.map -T linker.ld libc.a libgcc.a main.o -o sops_kg.out

Не так. Я же написал в скобочках: "-lgcc, -lc"

То есть, от имени библиотеки отнимаете префикс lib, вместо него ключик -l. Например, для libgcc.a надо написать -lgcc.

Но всё же пользуйте gcc, это рекомендованный способ. Он ко всему прочему выбирает библиотеки из правильного варианта согласно архитектуре и прочим делам.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Не помогает(
"Если ничего не помогает - прочтите, наконец, инструкцию!"

-lc.a -lgcc.a

 

А чем вас так пугает вызов gcc вместо ld?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

про ключик -l мне известно, и, если я не путаю, то -l{name} === lib{name}.a.

 

тестовый пример (с использованием статической библиотеки) с gcc заработал, боевой попробую завтра.

 

использую ld, т.к. есть makefile, его использующий.

 

меня пугает не вызов той или иной программы, а непонимание процесса.

правильно я думаю, что принеобходимости gcc сам вызовет ld (например, для выполнения скрипта линкера)?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
К сожалению, ваш контент содержит запрещённые слова. Пожалуйста, отредактируйте контент, чтобы удалить выделенные ниже слова.
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...