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

 
 
85 страниц V  « < 76 77 78 79 80 > »   
Reply to this topicStart new topic
> свежак KGP win32/arm/avr/mips/m68k, GNU tools chain
Шаманъ
сообщение Jun 10 2016, 20:24
Сообщение #1156


Знающий
****

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



Цитата(klen @ Jun 9 2016, 23:15) *
я бы всетки попробывал -Оs, иногда выдает такоьй же по скорости код.

Вот и по моим наблюдениям -Os не особо проигрывает другим вариантам.

По сборкам я регулярно использую для ARM Cortex-M0/M3/M4F под win64. Проблемы были, но их устранили (ну за исключением мелочей, одну я обошел переписав скрипт компоновщика, вторая не доставляет неудобств т.к. к генерации кода не относится).

Сообщение отредактировал Шаманъ - Jun 10 2016, 20:24
Go to the top of the page
 
+Quote Post
klen
сообщение Jul 25 2016, 17:42
Сообщение #1157


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

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



свежак arm
хост x86_64-linux-gnu
http://klen.org//Files/DevTools/x86_64-kgp...0723_COMARUM.7z
Go to the top of the page
 
+Quote Post
klen
сообщение Aug 7 2016, 16:52
Сообщение #1158


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

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



свежак для arm
теперь пакет содержит фортран, мне понадобился для кода который я пишу для stm32, может еще кому понадобится.

www.klen.org/Files/DevTools/x86_64-kgp-linux-gnu/arm-kgp-eabi_@_x86_64-kgp-linux-gnu_20160807_OXYCOCCUS.7z
Go to the top of the page
 
+Quote Post
Terminator
сообщение Sep 1 2016, 12:30
Сообщение #1159


Местный
***

Группа: Участник
Сообщений: 209
Регистрация: 7-12-04
Из: Томск
Пользователь №: 1 382



Внезапно захотелось использовать больше возможностей предоставляемых C++. Выкинул из проекта старые затычки типа переопределения new delete и т.п.. Качнул последний свежак.
Не собирается sad.gif
Вывод линкера
Код
../../../../../../src/gcc/libgcc/unwind-arm-common.inc:50:28: warning: type of '__cxa_begin_cleanup' does not match original declaration [-Wlto-type-mismatch]
../../../../../../../src/gcc/libstdc++-v3/libsupc++/eh_arm.cc:97:1: note: return value type mismatch
../../../../../../../src/gcc/libstdc++-v3/libsupc++/eh_arm.cc:97:1: note: type 'bool' should match type 'bool'
../../../../../../src/gcc/libgcc/unwind-arm-common.inc:39:23: note: the incompatible type is defined here
../../../../../../../src/gcc/libstdc++-v3/libsupc++/eh_arm.cc:97:1: note: '__cxa_begin_cleanup' was previously declared here
../../../../../../../src/gcc/libstdc++-v3/libsupc++/eh_arm.cc:97:1: note: code may be misoptimized unless -fno-strict-aliasing is used
../../../../../../src/gcc/libgcc/unwind-arm-common.inc:51:52: warning: type of '__cxa_type_match' does not match original declaration [-Wlto-type-mismatch]
../../../../../../../src/gcc/libstdc++-v3/libsupc++/eh_arm.cc:40:1: note: type mismatch in parameter 3
../../../../../../../src/gcc/libstdc++-v3/libsupc++/eh_arm.cc:40:1: note: type 'bool' should match type 'bool'
../../../../../../src/gcc/libgcc/unwind-arm-common.inc:39:23: note: the incompatible type is defined here
../../../../../../../src/gcc/libstdc++-v3/libsupc++/eh_arm.cc:40:1: note: '__cxa_type_match' was previously declared here
../../../../../../../src/gcc/libstdc++-v3/libsupc++/eh_arm.cc:40:1: note: code may be misoptimized unless -fno-strict-aliasing is used
/tmp/ccDWmOks.ltrans0.ltrans.o: In function `get_eit_entry':
<artificial>:(.text+0x298): undefined reference to `__exidx_start'
<artificial>:(.text+0x29c): undefined reference to `__exidx_end'
/opt/arm-kgp-eabi/lib/gcc/arm-kgp-eabi/7.0.0/../../../../arm-kgp-eabi/lib/thumb/cortex-m3/libc.a(lib_a-writer.o): In function `_write_r':
/opt/home/arm-kgp-eabi/newlib/arm-kgp-eabi/thumb/cortex-m3/newlib/libc/reent/../../../../../../../../src/newlib/newlib/libc/reent/writer.c:58: undefined reference to `_write'
/opt/arm-kgp-eabi/lib/gcc/arm-kgp-eabi/7.0.0/../../../../arm-kgp-eabi/lib/thumb/cortex-m3/libc.a(lib_a-sbrkr.o): In function `_sbrk_r':
/opt/home/arm-kgp-eabi/newlib/arm-kgp-eabi/thumb/cortex-m3/newlib/libc/reent/../../../../../../../../src/newlib/newlib/libc/reent/sbrkr.c:58: undefined reference to `_sbrk'
/opt/arm-kgp-eabi/lib/gcc/arm-kgp-eabi/7.0.0/../../../../arm-kgp-eabi/lib/thumb/cortex-m3/libc.a(lib_a-signalr.o): In function `_kill_r':
/opt/home/arm-kgp-eabi/newlib/arm-kgp-eabi/thumb/cortex-m3/newlib/libc/reent/../../../../../../../../src/newlib/newlib/libc/reent/signalr.c:61: undefined reference to `_kill'
/opt/arm-kgp-eabi/lib/gcc/arm-kgp-eabi/7.0.0/../../../../arm-kgp-eabi/lib/thumb/cortex-m3/libc.a(lib_a-signalr.o): In function `_getpid_r':
/opt/home/arm-kgp-eabi/newlib/arm-kgp-eabi/thumb/cortex-m3/newlib/libc/reent/../../../../../../../../src/newlib/newlib/libc/reent/signalr.c:97: undefined reference to `_getpid'
/opt/arm-kgp-eabi/lib/gcc/arm-kgp-eabi/7.0.0/../../../../arm-kgp-eabi/lib/thumb/cortex-m3/libc.a(lib_a-closer.o): In function `_close_r':
/opt/home/arm-kgp-eabi/newlib/arm-kgp-eabi/thumb/cortex-m3/newlib/libc/reent/../../../../../../../../src/newlib/newlib/libc/reent/closer.c:53: undefined reference to `_close'
/opt/arm-kgp-eabi/lib/gcc/arm-kgp-eabi/7.0.0/../../../../arm-kgp-eabi/lib/thumb/cortex-m3/libc.a(lib_a-fstatr.o): In function `_fstat_r':
/opt/home/arm-kgp-eabi/newlib/arm-kgp-eabi/thumb/cortex-m3/newlib/libc/reent/../../../../../../../../src/newlib/newlib/libc/reent/fstatr.c:62: undefined reference to `_fstat'
/opt/arm-kgp-eabi/lib/gcc/arm-kgp-eabi/7.0.0/../../../../arm-kgp-eabi/lib/thumb/cortex-m3/libc.a(lib_a-isattyr.o): In function `_isatty_r':
/opt/home/arm-kgp-eabi/newlib/arm-kgp-eabi/thumb/cortex-m3/newlib/libc/reent/../../../../../../../../src/newlib/newlib/libc/reent/isattyr.c:58: undefined reference to `_isatty'
/opt/arm-kgp-eabi/lib/gcc/arm-kgp-eabi/7.0.0/../../../../arm-kgp-eabi/lib/thumb/cortex-m3/libc.a(lib_a-lseekr.o): In function `_lseek_r':
/opt/home/arm-kgp-eabi/newlib/arm-kgp-eabi/thumb/cortex-m3/newlib/libc/reent/../../../../../../../../src/newlib/newlib/libc/reent/lseekr.c:58: undefined reference to `_lseek'
/opt/arm-kgp-eabi/lib/gcc/arm-kgp-eabi/7.0.0/../../../../arm-kgp-eabi/lib/thumb/cortex-m3/libc.a(lib_a-readr.o): In function `_read_r':
/opt/home/arm-kgp-eabi/newlib/arm-kgp-eabi/thumb/cortex-m3/newlib/libc/reent/../../../../../../../../src/newlib/newlib/libc/reent/readr.c:58: undefined reference to `_read'
collect2: error: ld returned 1 exit status


Что делать?

P. S. startup и соответсвенно ld файл, самописные.
Go to the top of the page
 
+Quote Post
klen
сообщение Sep 1 2016, 21:46
Сообщение #1160


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

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



2_Terminator
такое всегда бывает когда код приложения тянет некоторые функции newlib, они в свою очеред требют среда-спецефичных функций нижнего уровня таких как
_write _sbrk .... итд, которые необходимо реализовать в коде. в таком случае тут уже много раз выкладывали затычки на этот случай.

работает это типа так: 1) Вы слинкованы c newlib 2) например хотите использовать printf 3) newlib реализует все до самого низа где нужно писать байты в какойто девайс - тут то она вызывает _write. а "где он и чего" должен реализовать программист.

Ув. тов AHTOXA и другие тут неоднократно выкладывали исходник с затычками для этих функций.
это все нормально и понятно - непонятно чтоже собиралось до этого?

верните затычки. посмотрите что будет. мне очевидно что когда вы делали свой malloc через него new то все было хорошо, кодла Вы потянули их из newlib то malloc дернул (это можно в коде newlib посмотреть) _sbrk чтоб память выделить.


а вообще то лично мне очень надоела newlib, вещь хорошая но для "жесnко эбедеед" все это не нужно и вредно. я сейчас ваяю свою реализацию libc предназначенную для "маленьких систем" которая будет поддержывать минимально необходимый набор стандартных функций, реентрантность и многопоточность.
делал я так - если что то нужно из libc - переносил портировал в свою либу. цель получить легковесную libc для ембедерских проектов.
Go to the top of the page
 
+Quote Post
Terminator
сообщение Sep 2 2016, 01:50
Сообщение #1161


Местный
***

Группа: Участник
Сообщений: 209
Регистрация: 7-12-04
Из: Томск
Пользователь №: 1 382



Цитата(klen @ Sep 2 2016, 04:46) *

Что-то я так и не нашёл нормального способа определения этих лишних функций, тянущих всякие _write_sbrk и т.п. sad.gif
Затычки вернул. Файлик от AHTOXA нашёл, от моего отличается не сильно, __cxa_begin_cleanup и подобных (из ошибок выше) там нет.
Поковыряю исходники gcc ...

Печалит, что несмотря на явное указание -fno-exception, всякие unwind-ы всё равно тянутся sad.gif

Вернул переопределение операторов new и delete. Простые вещи вроде адекватно работают. Посмотрим что будет дальше ...

Сообщение отредактировал Terminator - Sep 2 2016, 02:33
Go to the top of the page
 
+Quote Post
klen
сообщение Sep 2 2016, 09:52
Сообщение #1162


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

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



2_Terminator

в моей сборке из исходников gcc я выдрал генерацию unwind. сам компиллер эту хрень не будет всовывать если библиотеки не потребуют.

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

сам использую фичи С++14 и все делал для того чтоб никаких "ушей и хвостов от больших машин" не прилазили в код (exeption,rtti, и прочие дряни) - только чистый С++14 без привязки к среде исполнения. как бы у меня работает - значит и у Вас заработает.
Go to the top of the page
 
+Quote Post
AHTOXA
сообщение Sep 2 2016, 20:33
Сообщение #1163


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

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



Цитата(Terminator @ Sep 2 2016, 06:50) *
Файлик от AHTOXA нашёл, от моего отличается не сильно, __cxa_begin_cleanup и подобных (из ошибок выше) там нет.

Это не мой, а как раз ваш файлик sm.gif Я его изначально взял вот из этого вашего поста.


--------------------
Если бы я знал, что такое электричество...
Go to the top of the page
 
+Quote Post
Terminator
сообщение Sep 3 2016, 04:13
Сообщение #1164


Местный
***

Группа: Участник
Сообщений: 209
Регистрация: 7-12-04
Из: Томск
Пользователь №: 1 382



Цитата(klen @ Sep 2 2016, 16:52) *
сам использую фичи С++14 и все делал для того чтоб никаких "ушей и хвостов от больших машин" не прилазили в код

операторы new и delete переопределены?


P. S. да, с lto проект не собирается (Error: offset out of range) sm.gif Собирается только маленькая часть, загрузчик (он по сути является сильно урезанной копией основной прошивки).

Сообщение отредактировал Terminator - Sep 3 2016, 04:16
Go to the top of the page
 
+Quote Post
klen
сообщение Sep 3 2016, 14:12
Сообщение #1165


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

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



соберу релизную версию 6.2.0
с LTO там должно быть без ошибок при линковке.

я заметил люди не очень хотят использовать свежие сборки, наверно боятся граблей. я же грабли ищу и настигаю sm.gif релизная сборка позволит не ходить по минному полю при возможности воспользоваться С++14

вот собрал 5.4.0
linux64:
http://klen.org/Files/DevTools/x86_64-kgp-....0_VACCINIUM.7z

win64:
http://klen.org/Files/DevTools/x86_64-kgp-....0_VACCINIUM.7z

линуксовую протестил на своих проектах. виндовую неначем. пробуйте.
Go to the top of the page
 
+Quote Post
Genadi Zawidowsk...
сообщение Sep 4 2016, 21:53
Сообщение #1166


Профессионал
*****

Группа: Участник
Сообщений: 1 620
Регистрация: 22-06-07
Из: Санкт-Петербург, Россия
Пользователь №: 28 634



Компиляция прошла нормально, но линковка не срослась - что надо указать кроме libm?
И чего это memcpy/memset повылезали?

CODE
C:\Users\gena\AppData\Local\Temp\ccVWE887.ltrans20.ltrans.o: In function `txmikeagc.part.7':
<artificial>:(.text.txmikeagc.part.7+0x9e): undefined reference to `powf'
<artificial>:(.text.txmikeagc.part.7+0x142): undefined reference to `log10f'
C:\Users\gena\AppData\Local\Temp\ccVWE887.ltrans20.ltrans.o: In function `trxparam_update.lto_priv.546':
<artificial>:(.text.trxparam_update.lto_priv.546+0x5a): undefined reference to `powf'
<artificial>:(.text.trxparam_update.lto_priv.546+0xe0): undefined reference to `log10f'
C:\Users\gena\AppData\Local\Temp\ccVWE887.ltrans0.ltrans.o: In function `ResetException.lto_priv.457':
<artificial>:(.text.ResetException.lto_priv.457+0x30e): undefined reference to `memcpy'
<artificial>:(.text.ResetException.lto_priv.457+0x31a): undefined reference to `memset'
<artificial>:(.text.ResetException.lto_priv.457+0x1e0c): undefined reference to `log10f'
C:\Users\gena\AppData\Local\Temp\ccVWE887.ltrans2.ltrans.o: In function `OTG_FS_IRQHandler':
<artificial>:(.text.OTG_FS_IRQHandler+0x1390): undefined reference to `memcpy'
C:\Users\gena\AppData\Local\Temp\ccVWE887.ltrans4.ltrans.o: In function `updateboard.isra.35.lto_priv.330':
<artificial>:(.text.updateboard.isra.35.lto_priv.330+0x8cc): undefined reference to `memcmp'
<artificial>:(.text.updateboard.isra.35.lto_priv.330+0x1148): undefined reference to `memset'
C:\Users\gena\AppData\Local\Temp\ccVWE887.ltrans6.ltrans.o: In function `wave_startrecording.lto_priv.347':
<artificial>:(.text.wave_startrecording.lto_priv.347+0x75c): undefined reference to `memset'
<artificial>:(.text.wave_startrecording.lto_priv.347+0x111e): undefined reference to `memset'
<artificial>:(.text.wave_startrecording.lto_priv.347+0x12c8): undefined reference to `memset'
C:\Users\gena\AppData\Local\Temp\ccVWE887.ltrans8.ltrans.o: In function `display_bars':
<artificial>:(.text.display_bars+0x2e): undefined reference to `log10f'
<artificial>:(.text.display_bars+0x4e): undefined reference to `log10f'
C:\Users\gena\AppData\Local\Temp\ccVWE887.ltrans9.ltrans.o: In function `dsp_extbuffer32rx':
<artificial>:(.text.dsp_extbuffer32rx+0x5c6): undefined reference to `atan2f'
C:\Users\gena\AppData\Local\Temp\ccVWE887.ltrans9.ltrans.o: In function `audio_update.lto_priv.545':
<artificial>:(.text.audio_update.lto_priv.545+0x492): undefined reference to `memset'
<artificial>:(.text.audio_update.lto_priv.545+0x56c): undefined reference to `sinf'
<artificial>:(.text.audio_update.lto_priv.545+0x578): undefined reference to `cosf'
<artificial>:(.text.audio_update.lto_priv.545+0x594): undefined reference to `sinf'
<artificial>:(.text.audio_update.lto_priv.545+0x5a0): undefined reference to `cosf'
<artificial>:(.text.audio_update.lto_priv.545+0x5c6): undefined reference to `sinf'
<artificial>:(.text.audio_update.lto_priv.545+0x5d2): undefined reference to `cosf'
<artificial>:(.text.audio_update.lto_priv.545+0x5fa): undefined reference to `sinf'
<artificial>:(.text.audio_update.lto_priv.545+0x606): undefined reference to `cosf'
<artificial>:(.text.audio_update.lto_priv.545+0x8a6): undefined reference to `memset'
C:\Users\gena\AppData\Local\Temp\ccVWE887.ltrans12.ltrans.o: In function `sync_fs.lto_priv.185':
<artificial>:(.text.sync_fs.lto_priv.185+0x36): undefined reference to `memset'
C:\Users\gena\AppData\Local\Temp\ccVWE887.ltrans12.ltrans.o: In function `dir_next.lto_priv.409':
<artificial>:(.text.dir_next.lto_priv.409+0xf6): undefined reference to `memset'
C:\Users\gena\AppData\Local\Temp\ccVWE887.ltrans14.ltrans.o: In function `fir_design_lowpass.lto_priv.484':
<artificial>:(.text.fir_design_lowpass.lto_priv.484+0x60): undefined reference to `sinf'
<artificial>:(.text.fir_design_lowpass.lto_priv.484+0x86): undefined reference to `sinf'
<artificial>:(.text.fir_design_lowpass.lto_priv.484+0xa4): undefined reference to `sinf'
<artificial>:(.text.fir_design_lowpass.lto_priv.484+0xc2): undefined reference to `sinf'
<artificial>:(.text.fir_design_lowpass.lto_priv.484+0xe4): undefined reference to `sinf'
C:\Users\gena\AppData\Local\Temp\ccVWE887.ltrans14.ltrans.o:<artificial>:(.text.fir_design_lowpass.lto_priv.484+0x100): more undefined references to `sinf' follow
C:\Users\gena\AppData\Local\Temp\ccVWE887.ltrans14.ltrans.o: In function `fir_design_lowpass.lto_priv.484':
<artificial>:(.text.fir_design_lowpass.lto_priv.484+0x168): undefined reference to `memset'
<artificial>:(.text.fir_design_lowpass.lto_priv.484+0x1c4): undefined reference to `cosf'
<artificial>:(.text.fir_design_lowpass.lto_priv.484+0x1d0): undefined reference to `cosf'
<artificial>:(.text.fir_design_lowpass.lto_priv.484+0x1dc): undefined reference to `cosf'
<artificial>:(.text.fir_design_lowpass.lto_priv.484+0x208): undefined reference to `cosf'
<artificial>:(.text.fir_design_lowpass.lto_priv.484+0x214): undefined reference to `cosf'
C:\Users\gena\AppData\Local\Temp\ccVWE887.ltrans14.ltrans.o:<artificial>:(.text.fir_design_lowpass.lto_priv.484+0x220): more undefined references to `cosf' follow
C:\Users\gena\AppData\Local\Temp\ccVWE887.ltrans14.ltrans.o: In function `agc_times_update.lto_priv.463':
<artificial>:(.text.agc_times_update.lto_priv.463+0x4c): undefined reference to `powf'
<artificial>:(.text.agc_times_update.lto_priv.463+0x84): undefined reference to `powf'
<artificial>:(.text.agc_times_update.lto_priv.463+0xd6): undefined reference to `powf'
<artificial>:(.text.agc_times_update.lto_priv.463+0xfa): undefined reference to `log10f'
C:\Users\gena\AppData\Local\Temp\ccVWE887.ltrans14.ltrans.o: In function `agc_times_initialize.lto_priv.547':
<artificial>:(.text.agc_times_initialize.lto_priv.547+0x36): undefined reference to `log10f'
C:\Users\gena\AppData\Local\Temp\ccVWE887.ltrans14.ltrans.o: In function `DMA1_Stream4_IRQHandler':
<artificial>:(.text.DMA1_Stream4_IRQHandler+0x10a): undefined reference to `memset'
<artificial>:(.text.DMA1_Stream4_IRQHandler+0x11c): undefined reference to `memset'
C:\Users\gena\AppData\Local\Temp\ccVWE887.ltrans16.ltrans.o: In function `smanswer':
<artificial>:(.text.smanswer+0x16): undefined reference to `log10f'
C:\Users\gena\AppData\Local\Temp\ccVWE887.ltrans17.ltrans.o: In function `single_rate_out_write_mcv.constprop.156':
<artificial>:(.text.single_rate_out_write_mcv.constprop.156+0x18): undefined reference to `memset'
<artificial>:(.text.single_rate_out_write_mcv.constprop.156+0x26): undefined reference to `memcpy'
<artificial>:(.text.single_rate_out_write_mcv.constprop.156+0x32): undefined reference to `memcpy'
C:\Users\gena\AppData\Local\Temp\ccVWE887.ltrans17.ltrans.o: In function `fir_design_bandpass_scaled.constprop.140':
<artificial>:(.text.fir_design_bandpass_scaled.constprop.140+0x52): undefined reference to `sinf'
<artificial>:(.text.fir_design_bandpass_scaled.constprop.140+0x5e): undefined reference to `cosf'
<artificial>:(.text.fir_design_bandpass_scaled.constprop.140+0x7e): undefined reference to `sinf'
<artificial>:(.text.fir_design_bandpass_scaled.constprop.140+0x8a): undefined reference to `cosf'
<artificial>:(.text.fir_design_bandpass_scaled.constprop.140+0xac): undefined reference to `sinf'
<artificial>:(.text.fir_design_bandpass_scaled.constprop.140+0xb8): undefined reference to `cosf'
<artificial>:(.text.fir_design_bandpass_scaled.constprop.140+0xdc): undefined reference to `sinf'
<artificial>:(.text.fir_design_bandpass_scaled.constprop.140+0xe8): undefined reference to `cosf'
<artificial>:(.text.fir_design_bandpass_scaled.constprop.140+0x12c): undefined reference to `cosf'
<artificial>:(.text.fir_design_bandpass_scaled.constprop.140+0x138): undefined reference to `cosf'
<artificial>:(.text.fir_design_bandpass_scaled.constprop.140+0x144): undefined reference to `cosf'
<artificial>:(.text.fir_design_bandpass_scaled.constprop.140+0x16a): undefined reference to `cosf'
C:\Users\gena\AppData\Local\Temp\ccVWE887.ltrans17.ltrans.o:<artificial>:(.text.fir_design_bandpass_scaled.constprop.140+0x176): more undefined references to `cosf' follow
C:\Users\gena\AppData\Local\Temp\ccVWE887.ltrans19.ltrans.o: In function `agc_forvard_float.isra.10.constprop.4':
<artificial>:(.text.agc_forvard_float.isra.10.constprop.4+0xcc): undefined reference to `powf'
<artificial>:(.text.agc_forvard_float.isra.10.constprop.4+0x19e): undefined reference to `log10f'
collect2.exe: error: ld returned 1 exit status
make.exe: *** [tc1_stm32f746zg_rom.elf] Error 1


Сообщение отредактировал Genadi Zawidowski - Sep 4 2016, 21:54
Go to the top of the page
 
+Quote Post
alx2
сообщение Sep 5 2016, 06:24
Сообщение #1167


Местный
***

Группа: Участник
Сообщений: 340
Регистрация: 25-10-05
Из: Пермь, Россия
Пользователь №: 10 091



Цитата(Genadi Zawidowski @ Sep 5 2016, 03:53) *
Компиляция прошла нормально, но линковка не срослась - что надо указать кроме libm?
Кроме libm надо еще libc - там находятся memcpy/memset. Но Вы, похоже, и libm не указали, судя по тому, что линкер не находит powf, sinf и т.п., которые должны там быть...

Цитата(Genadi Zawidowski @ Sep 5 2016, 03:53) *
И чего это memcpy/memset повылезали?

Если я правильно понял, memset требуется, например, функции wave_startrecording().
Смотрите map-файл - там должно быть написано, кто какой символ потребовал.


--------------------
Всего наилучшего,
Alex Mogilnikov
Go to the top of the page
 
+Quote Post
Genadi Zawidowsk...
сообщение Sep 5 2016, 07:16
Сообщение #1168


Профессионал
*****

Группа: Участник
Сообщений: 1 620
Регистрация: 22-06-07
Из: Санкт-Петербург, Россия
Пользователь №: 28 634



Цитата(alx2 @ Sep 5 2016, 09:24) *
Кроме libm надо еще libc - там находятся memcpy/memset. Но Вы, похоже, и libm не указали, судя по тому, что линкер не находит powf, sinf и т.п., которые должны там быть...


Если я правильно понял, memset требуется, например, функции wave_startrecording().
Смотрите map-файл - там должно быть написано, кто какой символ потребовал.



Не, libm указана явно (ключил -lm компилятору):
Цитата
C:\user\arm-kgp-eabi_@_x86_64-kgp-mingw32_5.4.0_VACCINIUM\bin\arm-kgp-eabi-gcc -c -mcpu=cortex-m7 -mthumb -mfloat-abi=hard -mfpu=fpv5-sp-d16 -fno-math-errno -funroll-loops -fgraphite -ffunction-sections -fdata-sections -ffat-lto-objects -Ofast -flto -gdwarf-2 -fomit-frame-pointer -Wall -Wstrict-prototypes -DNDEBUG=1 -DCPUSTYLE_STM32F7XX=1 -DSTM32F746xx=1 -MD -MP -MF ./dep/tests.o.d -I../../CMSIS-SP-00300-r4p5-00rel0/CMSIS/Include -I../ ../tests.c -o tests.o
C:\user\arm-kgp-eabi_@_x86_64-kgp-mingw32_5.4.0_VACCINIUM\bin\arm-kgp-eabi-gcc bandfilters.o board.o usbd.o usbd_desc.o sequen.o elkey.o encoder.o serial.o hardware.o hd44780.o display.o display2.o keyboard.o keymaps.o nvram.o spifuncs.o formats.o
synthcalcs.o filters.o pcf8535.o uc1608.o uc1601s.o lph88.o ls020.o l2f50.o s1d13781.o ILI9320.o ili9225.o st7735.o st7565s.o graphltdc.o sdram.o ili8961.o twi.o pio.o tlv320aic23.o cs4272.o nau8822.o hardwarecodecs.o buffers.o audio.o spislave.o modems.o sdcard.o ff.o ccsbcs.o tc1.o tests.o -mcpu=cortex-m7 -mthumb -mfloat-abi=hard -mfpu=fpv5-sp-d16 -fno-math-errno -funroll-loops -fgraphite -ffunction-sections -fdata-sections -ffat-lto-objects -flto -Ofast -nostartfiles -T./STM32F746ZG_rom.ld -Wl,-Map=tc1_stm32f746zg_rom.map,--cref,--no-warn-mismatch -L../../CMSIS-SP-00300-r4p5-00rel0/CMSIS/Lib/GCC -lm -o tc1_stm32f746zg_rom.elf


Добавление -lc проблему не решило.
ПРи использовании компилятора с https://launchpad.net/gcc-arm-embedded всё нормально.

Сообщение отредактировал Genadi Zawidowski - Sep 5 2016, 07:18
Go to the top of the page
 
+Quote Post
klen
сообщение Sep 5 2016, 07:50
Сообщение #1169


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

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



Цитата(Genadi Zawidowski @ Sep 5 2016, 10:16) *
Не, libm указана явно (ключил -lm компилятору):


Добавление -lc проблему не решило.
ПРи использовании компилятора с https://launchpad.net/gcc-arm-embedded всё нормально.


после обеда поправим, просьба "не двигатся и трогать предметы..." тоесть не править код и аборочные скрипты в своем проекте.

просьба скачать и прверить ситуацию на выше выложенной сборке OXYCOCCUS
я за нее ручаюсь, все должжно захаваться.это проверенная рабочая моя.

мне наверно не поверят но всетаки lto оптимизатор в коде из транка лучше и устойчивей чем в "старых релизах"
также очень сильно все зависить как собирать, в своих сборках мултилиб, libstdc++ libsupc++, ... собираю руками, автоматом это невозможно.
с OXYCOCCUS я хорошенько потрахался чтоб все работало включая фортран.
Go to the top of the page
 
+Quote Post
Genadi Zawidowsk...
сообщение Sep 5 2016, 08:21
Сообщение #1170


Профессионал
*****

Группа: Участник
Сообщений: 1 620
Регистрация: 22-06-07
Из: Санкт-Петербург, Россия
Пользователь №: 28 634



Хорошо, эта часть не менялась уже много месяцев. Устройство для тестирования рядом, на программаторе.

Цитата(klen @ Sep 5 2016, 10:50) *
просьба скачать и прверить ситуацию на выше выложенной сборке OXYCOCCUS

www.klen.org/Files/DevTools/x86_64-kgp-linux-gnu/arm-kgp-eabi_@_x86_64-kgp-linux-gnu_20160807_OXYCOCCUS.7z
Это линуховая версия... я ведь пигмей (по Вашей классификации пользователей), под виндами сижу...
Но когда Вы выкладываете виндовые версии, я их пытаюсь применить.

Сообщение отредактировал Genadi Zawidowski - Sep 5 2016, 08:22
Go to the top of the page
 
+Quote Post

85 страниц V  « < 76 77 78 79 80 > » 
Reply to this topicStart new topic
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0

 


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


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