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

 
 
51 страниц V  « < 45 46 47 48 49 > »   
Reply to this topicStart new topic
> Вопросы по Eclipse, CDT, Zylin embedded CDT, предлагаю обсуждать тут, может потом FAQ выжмем
mdmitry
сообщение Nov 1 2013, 11:42
Сообщение #691


Начинающий профессионал
*****

Группа: Свой
Сообщений: 1 215
Регистрация: 25-10-06
Из: СПб
Пользователь №: 21 648



Цитата(Игорь_Ван @ Nov 1 2013, 15:33) *
В обоих случаях выдаёт ошибку

15:31:53 **** Incremental Build of configuration Debug for project jk87 ****
make all
Building file: ../oo.c
/bin/sh: arm-none-linux-gnueabi-gcc: команда не найдена
Invoking: ARM Linux GCC C Compiler (Sourcery Lite Linux)
arm-none-linux-gnueabi-gcc -O0 -ffunction-sections -fdata-sections -Wall -Wa,-adhlns="oo.o.lst" -c -fmessage-length=0 -MMD -MP -MF"oo.d" -MT"oo.d" -mcpu=arm926ej-s -mthumb -g3 -o "oo.o" "../oo.c"
make: *** [oo.o] Ошибка 127
15:31:53 Build Finished (took 183ms)

Под какой ОС Вы работаете?
Для debian необходимо dash (по умолчанию) сменить на bash.
Когда Вы собираете из консоли, у Вас дополнительно никакие переменные окружения не устанавливаются?


--------------------
Наука изощряет ум; ученье вострит память. Козьма Прутков
Go to the top of the page
 
+Quote Post
Игорь_Ван
сообщение Nov 1 2013, 11:52
Сообщение #692


Участник
*

Группа: Участник
Сообщений: 23
Регистрация: 25-11-12
Пользователь №: 74 552



Ось убунту 12.04.
ls -la /bin/sh
lrwxrwxrwx 1 root root 9 нояб. 1 15:48 /bin/sh -> /bin/bash так что bash установлен.

В командной оболочке собираю так:
$ arm-none-linux-gnueabi-gcc -static main.c
$ls -l a.out
-rwxrwxr-x 1 zavod zavod 653950 нояб. 1 15:51 a.out
$ file a.out
a.out: ELF 32-bit LSB executable, ARM, version 1 (SYSV), statically linked, for GNU/Linux 2.6.16, not stripped
Go to the top of the page
 
+Quote Post
mdmitry
сообщение Nov 1 2013, 11:57
Сообщение #693


Начинающий профессионал
*****

Группа: Свой
Сообщений: 1 215
Регистрация: 25-10-06
Из: СПб
Пользователь №: 21 648



Цитата(Игорь_Ван @ Nov 1 2013, 15:52) *
В командной оболочке собираю так:
$ arm-none-linux-gnueabi-gcc -static main.c
$ls -l a.out
-rwxrwxr-x 1 zavod zavod 653950 нояб. 1 15:51 a.out
$ file a.out
a.out: ELF 32-bit LSB executable, ARM, version 1 (SYSV), statically linked, for GNU/Linux 2.6.16, not stripped

А где вызов make? Попробуйте собирать проект с помощью make в консоле. И хорошо бы сам Makefile показать.


--------------------
Наука изощряет ум; ученье вострит память. Козьма Прутков
Go to the top of the page
 
+Quote Post
Игорь_Ван
сообщение Nov 1 2013, 12:07
Сообщение #694


Участник
*

Группа: Участник
Сообщений: 23
Регистрация: 25-11-12
Пользователь №: 74 552



Так makefile же создаётся автоматически?

CODE
#######################################################################
#########
# Automatically-generated file. Do not edit!
################################################################################

-include ../makefile.init

RM := rm -rf

# All of the sources participating in the build are defined here
-include sources.mk
-include subdir.mk
-include objects.mk

ifneq ($(MAKECMDGOALS),clean)
ifneq ($(strip $(C_DEPS)),)
-include $(C_DEPS)
endif
ifneq ($(strip $(ASM_DEPS)),)
-include $(ASM_DEPS)
endif
ifneq ($(strip $(S_UPPER_DEPS)),)
-include $(S_UPPER_DEPS)
endif
endif

-include ../makefile.defs

# Add inputs and outputs from these tool invocations to the build variables
SECONDARY_FLASH += \
jk87.hex \

SECONDARY_LIST += \
jk87.lst \

SECONDARY_SIZE += \
jk87.siz \


# All Target
all: jk87.elf secondary-outputs

# Tool invocations
jk87.elf: $(OBJS) $(USER_OBJS)
@echo 'Building target: $@'
@echo 'Invoking: ARM Linux GCC C Linker (Sourcery Lite Linux)'
arm-none-linux-gnueabi-gcc -Xlinker --gc-sections -Wl,-Map,"jk87.map" -static -mcpu=arm926ej-s -mthumb -g3 -o "jk87.elf" $(OBJS) $(USER_OBJS) $(LIBS)
@echo 'Finished building target: $@'
@echo ' '

jk87.hex: jk87.elf
@echo 'Invoking: ARM Linux GNU Create Flash Image (Sourcery Lite Linux)'
arm-none-linux-gnueabi-objcopy -O ihex "jk87.elf" "jk87.hex"
@echo 'Finished building: $@'
@echo ' '

jk87.lst: jk87.elf
@echo 'Invoking: ARM Linux GNU Create Listing (Sourcery Lite Linux)'
arm-none-linux-gnueabi-objdump -h -S "jk87.elf" > "jk87.lst"
@echo 'Finished building: $@'
@echo ' '

jk87.siz: jk87.elf
@echo 'Invoking: ARM Linux GNU Print Size (Sourcery Lite Linux)'
arm-none-linux-gnueabi-size --format=berkeley "jk87.elf"
@echo 'Finished building: $@'
@echo ' '

# Other Targets
clean:
-$(RM) $(SECONDARY_SIZE)$(OBJS)$(C_DEPS)$(ASM_DEPS)$(SECONDARY_FLASH)$(EXECUTABLES)$(SECONDARY_LIST)$(S_UPPER_DEPS) jk87.elf
-@echo ' '

secondary-outputs: $(SECONDARY_FLASH) $(SECONDARY_LIST) $(SECONDARY_SIZE)

.PHONY: all clean dependents
.SECONDARY:

-include ../makefile.targets


Сообщение отредактировал IgorKossak - Nov 1 2013, 12:15
Причина редактирования: [codebox] для длинного кода, [code] - для короткого!!!
Go to the top of the page
 
+Quote Post
mdmitry
сообщение Nov 1 2013, 12:12
Сообщение #695


Начинающий профессионал
*****

Группа: Свой
Сообщений: 1 215
Регистрация: 25-10-06
Из: СПб
Пользователь №: 21 648



Цитата(Игорь_Ван @ Nov 1 2013, 16:07) *
Так makefile же создаётся автоматически?

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

И кто мешает make all выполнить в консоле?


--------------------
Наука изощряет ум; ученье вострит память. Козьма Прутков
Go to the top of the page
 
+Quote Post
Игорь_Ван
сообщение Nov 1 2013, 12:37
Сообщение #696


Участник
*

Группа: Участник
Сообщений: 23
Регистрация: 25-11-12
Пользователь №: 74 552



Действительно, странно, но make all в консоли всё собрал нормально, правда сегодня уже не успею проверить работоспособность на самом контроллере.
CODE
zavod@zavod-System-Product-Name:~/workspace/jk87/Debug$ make all
Building file: ../oo.c
Invoking: ARM Linux GCC C Compiler (Sourcery Lite Linux)
arm-none-linux-gnueabi-gcc -O0 -ffunction-sections -fdata-sections -Wall -Wa,-adhlns="oo.o.lst" -c -fmessage-length=0 -MMD -MP
-MF"oo.d" -MT"oo.d" -mcpu=arm926ej-s -mthumb -g3 -o "oo.o" "../oo.c"
Finished building: ../oo.c

Building target: jk87.elf
Invoking: ARM Linux GCC C Linker (Sourcery Lite Linux)
arm-none-linux-gnueabi-gcc -Xlinker --gc-sections -Wl,-Map,"jk87.map" -static -mcpu=arm926ej-s -mthumb -g3 -o "jk87.elf" ./oo.o
Finished building target: jk87.elf

Invoking: ARM Linux GNU Create Flash Image (Sourcery Lite Linux)
arm-none-linux-gnueabi-objcopy -O ihex "jk87.elf" "jk87.hex"
Finished building: jk87.hex

Invoking: ARM Linux GNU Create Listing (Sourcery Lite Linux)
arm-none-linux-gnueabi-objdump -h -S "jk87.elf" > "jk87.lst"
Finished building: jk87.lst

Invoking: ARM Linux GNU Print Size (Sourcery Lite Linux)
arm-none-linux-gnueabi-size --format=berkeley "jk87.elf"
text data bss dec hex filename
498800 3180 5068 507048 7bca8 jk87.elf
Finished building: jk87.siz
Go to the top of the page
 
+Quote Post
sherr
сообщение Nov 5 2013, 06:42
Сообщение #697


Местный
***

Группа: Участник
Сообщений: 257
Регистрация: 10-06-06
Из: Ставрополь
Пользователь №: 17 955



Извиняюсь, если такой вопрос уже был .
Есть разлапистый проект на основе STM32 Periferial Lib - куча папок, структуру которых рушить бы не
хотелось. Как сделать, чтобы под Eclipse все файлы исходников видели нужные им .h файлы,
независимо от их взаимного расположения в папках проекта. Прописывание в .include всех папок
с .h файлами не помогает ...
Go to the top of the page
 
+Quote Post
Сергей Борщ
сообщение Nov 5 2013, 07:56
Сообщение #698


Гуру
******

Группа: Модераторы
Сообщений: 8 455
Регистрация: 15-05-06
Из: Рига, Латвия
Пользователь №: 17 095



Если библиотека лежит не в папке проекта, то можно ее корневую папку добавить в структуру проекта как linked folder (File->new->folder->advanced). Если там требуется указать относительный путь, то его надо указывать в виде ${PARENT-2-PROJECT_LOC}/common для папки ../../common

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

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



==========================================================================
Новый вопрос.

Кеплер, при настройке C/C++ General->Preprocessor include paths, macros etc->Providers->CDT GCC Builtin compiler settings (которое замена Discovery в предыдущих версиях) в каждом проекте создается папка .settings, в которую помещается файл language.settings.xml с настройками этого Provider. Логично было бы включать этот файл в репозиторий системы контроля версий, чтобы не создавать его заново при вытаскивании проекта на новой машине. Но в этом файле есть фрагмент
CODE
env-hash="тут какое-то число"
в котором "какое-то число" на каждой машине прописывается свое при открытии проекта. То есть получается, что если я работаю с одним проектом на двух машинах, то при переходе с машины на машину этот файл меняется и система контроля версий совершенно законно хочет это изменение сохранить в репозитории. Не включать файл в репозиторий тоже плохо - тогда придется при каждом доставании из репозитория настраивать CDT GCC Builtin compiler settings вручную заново. Ладно если в workspace один-два проекта, а если их несколько десятков?

В общем вопрос: кто как с этим борется?

Вообще последние версии вызывают недоумение - сначала в корне workspace появилась неизвестно для чего нужная папка RemoteSystemsTempFiles. Вот кто мешал засунуть ее в .metadata? Теперь эта .settings, при наличии двух файлов .project и .cproject - что мешало дописывать в них?


--------------------
На любой вопрос даю любой ответ
"Write code that is guaranteed to work, not code that doesn’t seem to break" (C++ FAQ)
Go to the top of the page
 
+Quote Post
mdmitry
сообщение Nov 5 2013, 18:04
Сообщение #699


Начинающий профессионал
*****

Группа: Свой
Сообщений: 1 215
Регистрация: 25-10-06
Из: СПб
Пользователь №: 21 648



Цитата(Сергей Борщ @ Nov 5 2013, 11:56) *
Вообще последние версии вызывают недоумение - сначала в корне workspace появилась неизвестно для чего нужная папка RemoteSystemsTempFiles. Вот кто мешал засунуть ее в .metadata? Теперь эта .settings, при наличии двух файлов .project и .cproject - что мешало дописывать в них?

Здесь кое-что на эту тему. Меня пока не приперло с этим разбираться (могу терпеть, в отличие от Discovery).


--------------------
Наука изощряет ум; ученье вострит память. Козьма Прутков
Go to the top of the page
 
+Quote Post
Сергей Борщ
сообщение Nov 5 2013, 20:36
Сообщение #700


Гуру
******

Группа: Модераторы
Сообщений: 8 455
Регистрация: 15-05-06
Из: Рига, Латвия
Пользователь №: 17 095



QUOTE (mdmitry @ Nov 5 2013, 21:04) *
Здесь кое-что на эту тему.
Спасибо, RemoteSystemsTempFiles убрал отключив RSE UI в Window -> Preferences -> General -> Startup and Shutdown

Добавлено: Ан нет, надо еще Window -> Preferences -> Remote systems убрать галочку "Re-open Remote systems view to previous state"


--------------------
На любой вопрос даю любой ответ
"Write code that is guaranteed to work, not code that doesn’t seem to break" (C++ FAQ)
Go to the top of the page
 
+Quote Post
sidy
сообщение Dec 2 2013, 10:28
Сообщение #701


Местный
***

Группа: Участник
Сообщений: 280
Регистрация: 2-11-08
Пользователь №: 41 333



У меня вопрос: как в CooCox посмотреть откуда программа попала в default handler, стек как таковой там не показывается, т.е. в окне debug отображается только где процессор находится на данный момент, а предыдущие адреса неотображаются.
Go to the top of the page
 
+Quote Post
_Pasha
сообщение Jan 15 2014, 20:34
Сообщение #702


;
******

Группа: Участник
Сообщений: 5 646
Регистрация: 1-08-07
Пользователь №: 29 509



Подскажите, как мне запустить из сабжа компиляцию проекта на удаленной станции, чтобы make на ней же. Пока пользуюсь другими терминалами.
Вкратце, завожу ssh, делал проект с локальной копией - не понравилось sm.gif синхронизация там всякая - хочу чтобы на кнопку save - сохранялось по сетке. RaspberryPI sm.gif если кому интересно

Go to the top of the page
 
+Quote Post
sidy
сообщение Jan 23 2014, 06:37
Сообщение #703


Местный
***

Группа: Участник
Сообщений: 280
Регистрация: 2-11-08
Пользователь №: 41 333



del

Сообщение отредактировал sidy - Jan 23 2014, 06:43
Go to the top of the page
 
+Quote Post
amusin
сообщение Mar 7 2014, 09:32
Сообщение #704


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

Группа: Участник
Сообщений: 120
Регистрация: 2-09-05
Из: Екатеринбург
Пользователь №: 8 165



Eclipse + OpenOCD + ST-LINK V2.
Почему-то содержимое PC становится нечетным после первого шага выполнения программы.
В Atollic, которому подсунут тот же elf, PC остается четный.
Программа выполняется как положено, подозрение, что отображение неправильное.
Поиском не нашел объяснения этой странности.

И еще вопрос, который сформулировал Сергей Борщ когда-то
"Попутный вопрос - можно ли его заставить в этом окне показывать команды по порядку адресов - мне он часто показывает команды с пропусками или в причудливо перемешанном порядке."
Пропуски наблюдаю регулярно. Благодаря *.lss слепым не остаюсь, но неудобно чуток :-) Есть решение?
Эскизы прикрепленных изображений
Прикрепленное изображение
 
Go to the top of the page
 
+Quote Post
Сергей Борщ
сообщение Mar 7 2014, 09:47
Сообщение #705


Гуру
******

Группа: Модераторы
Сообщений: 8 455
Регистрация: 15-05-06
Из: Рига, Латвия
Пользователь №: 17 095



Насколько помнится, младший бит в счетчике команд указывает на режим THUMB, т.е. должен быть в единице. Видимо Atollic просто маскирует его чтобы не смущать.

По пропускам: надо "отжать" иконку Show source. Видимо он не может однозначно оперделить принадлежность некоторых команд к строкам исходника.


--------------------
На любой вопрос даю любой ответ
"Write code that is guaranteed to work, not code that doesn’t seem to break" (C++ FAQ)
Go to the top of the page
 
+Quote Post

51 страниц V  « < 45 46 47 48 49 > » 
Reply to this topicStart new topic
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0

 


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


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