Страница 12 из 16
Re: Eclipse + GCC + OpenOCD: готовая сборка среды
Добавлено: 08 фев 2019, 17:43
petrovitch
А какова технология самостоятельной сборки IDE с Eclipse+GCC+OpenOCD для программатора J-Link?
Как я понял из последней переписки, OpenOCD уже автоматом ставится с Eclipse. Необходимы
только некие настройки.
Как было описано на bitbucket.org ещё необходимы
"арм GNU Toolchain 5+
CMake 3.8+
make для вашей ОС (make, mingw64-make ...)"
И как это всё свести воедино в рабочее состояние?!
Re: Eclipse + GCC + OpenOCD: готовая сборка среды
Добавлено: 08 фев 2019, 17:54
Лашкевич
Ну какая там может быть технология, брать эклипс, ставить плагин GNU MCU Eclipse, класть рядом OpenOCD и компиляторы GNU-арм, и прописывать настройки в плагине и в остальном как в Vector IDE. Отдельно подробный никто мануал не описывал, собственно, чтобы это не писать, и был собран Vector IDE.
Re: Eclipse + GCC + OpenOCD: готовая сборка среды
Добавлено: 12 фев 2019, 10:48
bkolbov
petrovitch писал(а): ↑08 фев 2019, 17:43
Как было описано на bitbucket.org ещё необходимы
"арм GNU Toolchain 5+
CMake 3.8+
make для вашей ОС (make, mingw64-make ...)"
И как это всё свести воедино в рабочее состояние?!
Проекты, о которых вы говорите, используют систему сборки CMake - это не проекты Eclipse. Они могут собираться вообще без какой-либо IDE - примеры скриптов сборки там рядом лежат. Соответственно, если создавать вручную родные проекты Eclipse - то требования к софту выше будут неактуальны.
В целом, CMake поддерживают большинство современных Сишных IDE и "прокачанных" плагинами блокнотов: VSCode, Sublime Text, Clion, CodeBlocks, Visual студио, Qt Creаtor и прочие. Eclipse тоже должен поддерживать CMake, и, если мне верно подсказывает гугл, делается это через плагин cmake4eclipse.
Re: Eclipse + GCC + OpenOCD: готовая сборка среды
Добавлено: 15 мар 2021, 17:43
IT124NPOIT
После компиляции появляется токая ошибка, что это значит?
15:28:02 **** Incremental Build of configuration Debug for project 1921UPSD&DG ****
make all
Building target: 1921UPSD&DG.elf
Invoking: GNU арм Cross C Linker
арм-none-eabi-gcc -mcpu=кортекс-m4 -mthumb -mfloat-abi=hard -mfpu=fpv4-sp-d16 -O0 -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -g3 -T "E:VectorIDE13_Examples1921UPSD&DG" -T "E:VectorIDE13_Examples1921UPSD&DGldscriptsK1921VK01T.ld" -Xlinker --gc-sections -Wl,-Map,"1921UPSD&DG.map" -o "1921UPSD&DG.elf" ./src/K1921VK01T_init.o ./src/main.o ./asm/startup_MCP_gcc.o ./.metadata/.plugins/org.eclipse.cdt.make.core/specs.o -lE:/VectorIDE13_Examples/1921UPSD&DG
d:/vectoridev1.3/eclipse/../gnugcc/build tools/2.12-20190422-1053/bin/sh: DG: not found
make: *** [makefile:46: 1921UPSD&DG.elf] Error 127
15:28:04 Build Failed. 1 errors, 0 warnings. (took 2s.518ms
Re: Eclipse + GCC + OpenOCD: готовая сборка среды
Добавлено: 15 мар 2021, 17:48
Disona
IT124NPOIT писал(а): ↑15 мар 2021, 17:43
После компиляции появляется токая ошибка, что это значит?
15:28:02 **** Incremental Build of configuration Debug for project 1921UPSD&DG ****
Здравствуйте.
Точно сказать пока не могу, но с виду как будто нехорошее название проекта. Не могли бы попробовать заменить символ "&" в названии проекта на какой-нибудь другой (нижнее подчеркивание, например), удалить папку "Debug" и перебилдить проект?
Re: Eclipse + GCC + OpenOCD: готовая сборка среды
Добавлено: 16 мар 2021, 15:05
IT124NPOIT
Сделал как вы рекомендовали, но теперь уже такие ошибки:
{\rtf1\ansi\ansicpg1251\deff0\deflang1049{\fonttbl{\f0\fnil Consolas;}{\f1\fnil\fcharset0 Calibri;}}
{\colortbl ;\red0\green0\blue255;\red0\green0\blue0;}
{\*\generator Msftedit 5.41.21.2509;}\viewkind4\uc1\pard\sa200\sl276\slmult1\cf1\lang1033\f0\fs20 12:53:02 **** Incremental Build of configuration Debug for project 1921UPSD_DG ****\cf0\par
\cf2 make all \cf0\par
\cf2 Building file: ../src/K1921VK01T_init.c\cf0\par
\cf2 Invoking: GNU арм Cross C Compiler\cf0\par
\cf2 арм-none-eabi-gcc -mcpu=кортекс-m4 -mthumb -mfloat-abi=hard -mfpu=fpv4-sp-d16 -O0 -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -g3 -I"E:\\VectorIDE13_Examples\\1921UPSD_DG" -I"E:\\VectorIDE13_Examples\\1921UPSD_DG\\include" -std=gnu11 -MMD -MP -MF"src/K1921VK01T_init.d" -MT"src/K1921VK01T_init.o" -c -o "src/K1921VK01T_init.o" "../src/K1921VK01T_init.c"\cf0\par
\cf2 Finished building: ../src/K1921VK01T_init.c\cf0\par
\cf2 \cf0\par
\cf2 Building file: ../src/main.c\cf0\par
\cf2 Invoking: GNU арм Cross C Compiler\cf0\par
\cf2 арм-none-eabi-gcc -mcpu=кортекс-m4 -mthumb -mfloat-abi=hard -mfpu=fpv4-sp-d16 -O0 -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -g3 -I"E:\\VectorIDE13_Examples\\1921UPSD_DG" -I"E:\\VectorIDE13_Examples\\1921UPSD_DG\\include" -std=gnu11 -MMD -MP -MF"src/main.d" -MT"src/main.o" -c -o "src/main.o" "../src/main.c"\cf0\par
\cf2 Finished building: ../src/main.c\cf0\par
\cf2 \cf0\par
\cf2 Building file: ../asm/startup_MCP_gcc.S\cf0\par
\cf2 Invoking: GNU арм Cross Assembler\cf0\par
\cf2 арм-none-eabi-gcc -mcpu=кортекс-m4 -mthumb -mfloat-abi=hard -mfpu=fpv4-sp-d16 -O0 -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -g3 -x assembler-with-cpp -MMD -MP -MF"asm/startup_MCP_gcc.d" -MT"asm/startup_MCP_gcc.o" -c -o "asm/startup_MCP_gcc.o" "../asm/startup_MCP_gcc.S"\cf0\par
\cf2 Finished building: ../asm/startup_MCP_gcc.S\cf0\par
\cf2 \cf0\par
\cf2 Building file: ../.metadata/.plugins/org.eclipse.cdt.make.core/specs.c\cf0\par
\cf2 Invoking: GNU арм Cross C Compiler\cf0\par
\cf2 арм-none-eabi-gcc -mcpu=кортекс-m4 -mthumb -mfloat-abi=hard -mfpu=fpv4-sp-d16 -O0 -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -g3 -I"E:\\VectorIDE13_Examples\\1921UPSD_DG" -I"E:\\VectorIDE13_Examples\\1921UPSD_DG\\include" -std=gnu11 -MMD -MP -MF".metadata/.plugins/org.eclipse.cdt.make.core/specs.d" -MT".metadata/.plugins/org.eclipse.cdt.make.core/specs.o" -c -o ".metadata/.plugins/org.eclipse.cdt.make.core/specs.o" "../.metadata/.plugins/org.eclipse.cdt.make.core/specs.c"\cf0\par
\cf2 Finished building: ../.metadata/.plugins/org.eclipse.cdt.make.core/specs.c\cf0\par
\cf2 \cf0\par
\cf2 Building target: 1921UPSD_DG.elf\cf0\par
\cf2 Invoking: GNU арм Cross C Linker\cf0\par
\cf2 арм-none-eabi-gcc -mcpu=кортекс-m4 -mthumb -mfloat-abi=hard -mfpu=fpv4-sp-d16 -O0 -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -g3 -T "E:\\VectorIDE13_Examples\\1921UPSD_DG" -T "E:\\VectorIDE13_Examples\\1921UPSD_DG\\ldscripts\\K1921VK01T.ld" -Xlinker --gc-sections -Wl,-Map,"1921UPSD_DG.map" -o "1921UPSD_DG.elf" ./src/K1921VK01T_init.o ./src/main.o ./asm/startup_MCP_gcc.o ./.metadata/.plugins/org.eclipse.cdt.make.core/specs.o -lE:/VectorIDE13_Examples/1921UPSD_DG\cf0\par
\cf2 d:/vectoridev1.3/gnugcc/арм embedded gcc/8.2.1-1.7-20190524-0603/bin/../lib/gcc/арм-none-eabi/8.2.1/../../../../арм-none-eabi/bin/ld.exe: cannot open linker script file E:\\VectorIDE13_Examples\\1921UPSD_DG: Invalid argument\cf0\par
\cf2 collect2.exe: error: ld returned 1 exit status\cf0\par
\cf2 make: *** [makefile:46: 1921UPSD_DG.elf] Error 1\cf0\par
\par
\cf1 12:53:04 Build Failed. 2 errors, 0 warnings. (took 1s.588ms)\cf0\f1\fs22\par
}
Re: Eclipse + GCC + OpenOCD: готовая сборка среды
Добавлено: 16 мар 2021, 15:25
Disona
IT124NPOIT писал(а): ↑16 мар 2021, 15:05
Сделал как вы рекомендовали, но теперь уже такие ошибки:
...
Ох. Тут уже затрудняюсь сказать. То ли проблема с настройками проекта, то ли опять с именами файлов - жалуется на скрипт линкера, который должен быть с расширением "*.ld".
А почему так странно выглядит текст сообщений из консоли? Какие-то фигурные скобки сплошные...
У вас есть возможность скинуть проект в zip-архиве?
Re: Eclipse + GCC + OpenOCD: готовая сборка среды
Добавлено: 16 мар 2021, 16:07
Disona
IT124NPOIT писал(а): ↑16 мар 2021, 15:05
Сделал как вы рекомендовали, но теперь уже такие ошибки:
...
Так, я догадался, что это за абракадабра и открыл в ворде.
Значит сомнение вызывает вот это дело:
Код: Выделить всё
арм-none-eabi-gcc
-mcpu=кортекс-m4
-mthumb
-mfloat-abi=hard
-mfpu=fpv4-sp-d16 -O0
-fmessage-length=0
-fsigned-char
-ffunction-sections
-fdata-sections
-g3
-T "E:\VectorIDE13_Examples\1921UPSD_DG" <------------------------------------------------
-T "[E:\VectorIDE13_Examples\1921UPSD_DG\ldscripts\K1921VK01T.ld"
-Xlinker
--gc-sections
-Wl,-Map,"1921UPSD_DG.map"
-o "1921UPSD_DG.elf" ./src/K1921VK01T_init<...>
-lE:/VectorIDE13_Examples/1921UPSD_DG
Проверьте, пожалуйста, настройки проекта в разделе, как на скриншоте. Там должны быть перечислены "*.ld"-файлы с скриптами линкера, а у вас, как будто бы, там помимо файла указан ещё отдельно путь до его расположения. Путь надо убрать.
- Скриншот | Показать
-
- 2021-03-16 15-04-53 Properties.png (45.76 КБ) 2106 просмотров
Re: Eclipse + GCC + OpenOCD: готовая сборка среды
Добавлено: 16 мар 2021, 16:48
IT124NPOIT
После вашего замечание появилось такая ошибка:
14:34:58 **** Incremental Build of configuration Debug for project 1921UPSD_DG ****
make all
Building file: ../src/K1921VK01T_init.c
Invoking: GNU арм Cross C Compiler
арм-none-eabi-gcc -mcpu=кортекс-m4 -mthumb -mfloat-abi=hard -mfpu=fpv4-sp-d16 -O0 -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -g3 -I"E:\VectorIDE13_Examples\1921UPSD_DG" -I"E:\VectorIDE13_Examples\1921UPSD_DG\include" -std=gnu11 -MMD -MP -MF"src/K1921VK01T_init.d" -MT"src/K1921VK01T_init.o" -c -o "src/K1921VK01T_init.o" "../src/K1921VK01T_init.c"
Finished building: ../src/K1921VK01T_init.c
Building file: ../src/main.c
Invoking: GNU арм Cross C Compiler
арм-none-eabi-gcc -mcpu=кортекс-m4 -mthumb -mfloat-abi=hard -mfpu=fpv4-sp-d16 -O0 -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -g3 -I"E:\VectorIDE13_Examples\1921UPSD_DG" -I"E:\VectorIDE13_Examples\1921UPSD_DG\include" -std=gnu11 -MMD -MP -MF"src/main.d" -MT"src/main.o" -c -o "src/main.o" "../src/main.c"
Finished building: ../src/main.c
Building file: ../asm/startup_MCP_gcc.S
Invoking: GNU арм Cross Assembler
арм-none-eabi-gcc -mcpu=кортекс-m4 -mthumb -mfloat-abi=hard -mfpu=fpv4-sp-d16 -O0 -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -g3 -x assembler-with-cpp -MMD -MP -MF"asm/startup_MCP_gcc.d" -MT"asm/startup_MCP_gcc.o" -c -o "asm/startup_MCP_gcc.o" "../asm/startup_MCP_gcc.S"
Finished building: ../asm/startup_MCP_gcc.S
Building file: ../.metadata/.plugins/org.eclipse.cdt.make.core/specs.c
Invoking: GNU арм Cross C Compiler
арм-none-eabi-gcc -mcpu=кортекс-m4 -mthumb -mfloat-abi=hard -mfpu=fpv4-sp-d16 -O0 -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -g3 -I"E:\VectorIDE13_Examples\1921UPSD_DG" -I"E:\VectorIDE13_Examples\1921UPSD_DG\include" -std=gnu11 -MMD -MP -MF".metadata/.plugins/org.eclipse.cdt.make.core/specs.d" -MT".metadata/.plugins/org.eclipse.cdt.make.core/specs.o" -c -o ".metadata/.plugins/org.eclipse.cdt.make.core/specs.o" "../.metadata/.plugins/org.eclipse.cdt.make.core/specs.c"
Finished building: ../.metadata/.plugins/org.eclipse.cdt.make.core/specs.c
Building target: 1921UPSD_DG.elf
Invoking: GNU арм Cross C Linker
арм-none-eabi-gcc -mcpu=кортекс-m4 -mthumb -mfloat-abi=hard -mfpu=fpv4-sp-d16 -O0 -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -g3 -T "E:\VectorIDE13_Examples\1921UPSD_DG\cmd\build.ld" -Xlinker --gc-sections -Wl,-Map,"1921UPSD_DG.map" -o "1921UPSD_DG.elf" ./src/K1921VK01T_init.o ./src/main.o ./asm/startup_MCP_gcc.o ./.metadata/.plugins/org.eclipse.cdt.make.core/specs.o -lE:/VectorIDE13_Examples/1921UPSD_DG
d:/vectoridev1.3/gnugcc/арм embedded gcc/8.2.1-1.7-20190524-0603/bin/../lib/gcc/арм-none-eabi/8.2.1/../../../../арм-none-eabi/bin/ld.exe: cannot open linker script file niiet_ram.ld: No such file or directory
collect2.exe: error: ld returned 1 exit status
make: *** [makefile:46: 1921UPSD_DG.elf] Error 1
14:34:59 Build Failed. 2 errors, 0 warnings. (took 1s.234ms)
Re: Eclipse + GCC + OpenOCD: готовая сборка среды
Добавлено: 16 мар 2021, 17:15
Disona
IT124NPOIT писал(а): ↑16 мар 2021, 16:48
После вашего замечание появилось такая ошибка:
...
Теперь, похоже, проблема вот в чём:
- в качестве основного скрипта для линкера вы используете файл "build.ld"
- "build.ld" в свою очередь внутри себя подключает другой файл - "niiet_ram.ld"
- этот файл расположен (или, по крайней мере, должен быть расположен) в папке "cmd" внутри проекта - то есть там же, где и "build.ld"
- линкер должен знать, где искать разные LD-файлы
Для этого надо в настройках проекта добавить опцию с флагом "-L" и указать расположение папки "cmd", как на скриншоте
- | Показать
-
- 2021-03-16 16-11-11 Properties.png (53.7 КБ) 2101 просмотр