Форум программистов, компьютерный форум, киберфорум
C/С++ под Linux
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.57/7: Рейтинг темы: голосов - 7, средняя оценка - 4.57
-14 / 14 / 3
Регистрация: 01.04.2009
Сообщений: 544

Аппаратные переменные make

03.05.2020, 11:09. Показов 1485. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте.
Подскажите пожалуйста что в Makefile означает .c=
вот в таком выражении C_OBJS = $(C_SRC:.c=.o)
Взято из файла

C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
PREFIX  = /path/to/your/cross-compiler/gnu-solaris
TARGET  = powerpc-eabi
 
CC = $(PREFIX)/bin/$(TARGET)-gcc
LD = $(PREFIX)/bin/$(TARGET)-gcc
OBJCOPY = $(PREFIX)/bin/$(TARGET)-objcopy
OBJDUMP = $(PREFIX)/bin/$(TARGET)-objdump
 
#
# Define locations for the text and data code sections. The bss
# gets tacked on to the end of the data by the linker script,
# don't worry about it.
#
 
# define this to move from the default of 0xFFF00000
# IMAGE_TEXT_START = 0xFFC00000
 
# where do you want the text to execute? Define this to move
# from 0x00000000
# TEXT_START = 0x00000000
 
# the data section location defaults to the end of the text section,
# so define these only if you want it in a specific place
# ex. If you're using a real ROM, you need to specify a DATA_START
# that is in RAM so you can actually write to the data space.
#
# IMAGE_DATA_START = 0xFFF40000
# DATA_START = 0x00050000
 
# define options for compilation
# add -gdwarf for debug
# CFLAGS = -gdwarf
 
# define options for linkage. Prevent the inclusion of standard start
# code and libraries.
LDFLAGS = -fno-builtin -nostartfiles -nodefaultlibs -T ld.script
 
ifdef IMAGE_TEXT_START
LDFLAGS += -Wl,--defsym,TEXT_START=$(TEXT_START) \
        -Wl,--defsym,IMAGE_TEXT_START=$(IMAGE_TEXT_START)
endif
 
ifdef IMAGE_DATA_START
 
LDFLAGS += -Wl,--defsym,DATA_START=$(DATA_START) \
        -Wl,--defsym,IMAGE_DATA_START=$(IMAGE_DATA_START)
endif
 
# define options for the objdump
DUMPFLAGS = --syms --disassemble-all
 
# list C modules to link with the init code here
C_SRC = test.c
C_OBJS = $(C_SRC:.c=.o)
 
# use variables to refer to init code in case it changes
PPCINIT = ppcinit.o
PPCINIT_DEP = reg_defs.h ppcinit.h ppcinit.S
 
#
# define build targets
#
 
all: go.srec
 
clean:
    rm *.o *.elf *.srec *.dump *.i
 
# build s-record with init code and c files linked together
go.srec: $(C_OBJS) $(PPCINIT)
    $(LD) $(LDFLAGS) -o go.elf $(PPCINIT) $(C_OBJS)
    $(OBJDUMP) $(DUMPFLAGS) go.elf > go.dump
    $(OBJCOPY) -O srec -R .comment go.elf go.srec
 
# compile init code
$(PPCINIT): $(PPCINIT_DEP)
    $(CC) $(CFLAGS) -c -x assembler-with-cpp $*.S
 
# handle compilation of C files
%.o:%.c
    $(CC) $(CFLAGS) -c $<
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
03.05.2020, 11:09
Ответы с готовыми решениями:

[Gentoo] Не могу запустить make: No rule to make target
Любой вызов make возвращает make: *** No rule to make target при запуске ./configure выводит bash: ./configure: No such file or...

make / mingw32-make - сравнение скорости в многопоточном режиме (-j)
в MinGW + MSYS имеются такие файлы для сборки программ с помощью Makefile: Alex@tycoon-851de03e /home $ make -v GNU Make 3.81 ...

Почему экзешник make.exe (вернее, его разновидность mingw32-make.exe) принимает неизвестные параметры?
Друзья! У меня есть одна из сборок mingw, а там, как известно файл make.exe отсутствует, а вместо него есть файл mingw32-make.exe Суть...

3
725 / 224 / 73
Регистрация: 01.03.2011
Сообщений: 643
03.05.2020, 20:48
Лучший ответ Сообщение было отмечено Viktor2004 как решение

Решение

Цитата Сообщение от Viktor2004 Посмотреть сообщение
Подскажите пожалуйста что в Makefile означает .c=
вот в таком выражении C_OBJS = $(C_SRC:.c=.o)
Присвоить переменной C_OBJS значение переменной C_SRC заменив суффикс .c на .o для каждого слова. Например C_SRC="foo bar.c .cbaz.c" получим C_OBJS="foo bar.o .cbaz.o"
PS: почему "аппаратные"?
1
 Аватар для freevoyajer
20 / 21 / 2
Регистрация: 09.04.2020
Сообщений: 125
03.05.2020, 22:06
Цитата Сообщение от prik Посмотреть сообщение
PS: почему "аппаратные"?
Предполагаю машинный перевод, ну или другие трудности перевода.
0
-14 / 14 / 3
Регистрация: 01.04.2009
Сообщений: 544
04.05.2020, 12:06  [ТС]
Цитата Сообщение от prik Посмотреть сообщение
Присвоить переменной C_OBJS значение переменной C_SRC заменив суффикс .c на .o для каждого слова. Например C_SRC="foo bar.c .cbaz.c" получим C_OBJS="foo bar.o .cbaz.o"
PS: почему "аппаратные"?
Большое спасибо.
Я думал это автоматическая переменная, одна из многих которые используются в make
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
04.05.2020, 12:06
Помогаю со студенческими работами здесь

Функция make+, make*
Как описать функцию: make+ , make* ??? Функция этого задания должна конструировать для заданного набора аргументов вызов функции, ...

Аппаратные кодеки
Добрый день, Подскажите существуют ли цифровые аппаратные кодеки, выполненные в виде интегральных микросхем? Задача сжимать HD...

Аппаратные кнопки
Здравствуйте.Задача переопределить кнопки HOME и BACK. В принципе работает и так @Override public boolean onKeyDown(int keyCode,...

Аппаратные RAID
Всем здравствуйте! Скажите, пожалуйста, кто сталкивался с аппаратными RAID-массивами(имею в виду не софтовые, а именно завязанные на...

Аппаратные артефакты
Всем привет.. Новая видеокарта, новый БП, кулер новый, все покупал! что только не делал.. В чем проблема: захожу в игру и начинается...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
Настройки VS Code
Loafer 13.04.2026
{ "cmake. configureOnOpen": false, "diffEditor. ignoreTrimWhitespace": true, "editor. guides. bracketPairs": "active", "extensions. ignoreRecommendations": true, . . .
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2. Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива. Было так:. . .
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
Подстановка значения реквизита справочника в табличную часть документа
Maks 10.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: при выборе сотрудника (справочник Сотрудники) в ТЧ документа. . .
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях. Задача: при копировании документа очищать определенные реквизиты и табличную. . .
модель ЗдравоСохранения 8. Подготовка к разному выполнению заданий
anaschu 08.04.2026
https:/ / github. com/ shumilovas/ med2. git main ветка * содержимое блока дэлэй из старой модели теперь внутри зайца новой модели 8ATzM_2aurI
Блокировка документа от изменений, если он открыт у другого пользователя
Maks 08.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в конфигурации КА2. Задача: запретить редактирование документа, если он открыт у другого пользователя. / / . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru