|
|
  |
Вопросы по Eclipse, CDT, Zylin embedded CDT, предлагаю обсуждать тут, может потом FAQ выжмем |
|
|
|
Nov 1 2013, 11:42
|

Начинающий профессионал
    
Группа: Свой
Сообщений: 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. Когда Вы собираете из консоли, у Вас дополнительно никакие переменные окружения не устанавливаются?
--------------------
Наука изощряет ум; ученье вострит память. Козьма Прутков
|
|
|
|
|
Nov 1 2013, 11:52
|
Участник

Группа: Участник
Сообщений: 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
|
|
|
|
|
Nov 1 2013, 12:07
|
Участник

Группа: Участник
Сообщений: 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] - для короткого!!!
|
|
|
|
|
Nov 1 2013, 12:37
|
Участник

Группа: Участник
Сообщений: 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
|
|
|
|
|
Nov 5 2013, 07:56
|

Гуру
     
Группа: Модераторы
Сообщений: 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)
|
|
|
|
|
Nov 5 2013, 20:36
|

Гуру
     
Группа: Модераторы
Сообщений: 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)
|
|
|
|
|
Mar 7 2014, 09:32
|
Частый гость
 
Группа: Участник
Сообщений: 120
Регистрация: 2-09-05
Из: Екатеринбург
Пользователь №: 8 165

|
Eclipse + OpenOCD + ST-LINK V2. Почему-то содержимое PC становится нечетным после первого шага выполнения программы. В Atollic, которому подсунут тот же elf, PC остается четный. Программа выполняется как положено, подозрение, что отображение неправильное. Поиском не нашел объяснения этой странности. И еще вопрос, который сформулировал Сергей Борщ когда-то "Попутный вопрос - можно ли его заставить в этом окне показывать команды по порядку адресов - мне он часто показывает команды с пропусками или в причудливо перемешанном порядке." Пропуски наблюдаю регулярно. Благодаря *.lss слепым не остаюсь, но неудобно чуток :-) Есть решение?
Эскизы прикрепленных изображений
|
|
|
|
|
  |
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0
|
|
|