Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Переменные Makefile
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > Cредства разработки для МК > GNU/OpenSource средства разработки
Злодей
Здравствуйте! У меня снова "проблемы с выражением собственного хотения".
Код
A = 3
B = $(A)+2

Как сложить, что бы получить в B строку "5" а не "3+2"?

crying.gif Make man навёл на мысль, что переменные в Makefile это исключительно строки и фиг я заставлю его посчитать что-то такое.
haker_fox
Цитата(Злодей @ May 8 2009, 22:27) *
crying.gif Make man навёл на мысль, что переменные в Makefile это исключительно строки и фиг я заставлю его посчитать что-то такое.

Расскажите, пожалуйста, что Вы хотите получить в конечном счете. Может быть Вам порекомендуют другой путь или помогут пройти Ваш.
aesok
Цитата(Злодей @ May 8 2009, 17:27) *
Здравствуйте! У меня снова "проблемы с выражением собственного хотения".
Код
A = 3
B = $(A)+2

Как сложить, что бы получить в B строку "5" а не "3+2"?


Используйте google.com со словами 'command line calculator linux'

dc, bc, expr

Анатолий.
alx2
Цитата(Злодей @ May 8 2009, 18:27) *
Как сложить, что бы получить в B строку "5" а не "3+2"?
Насколько я помню, make не вычисляет арифметические выражения. Для этого можно воспользоваться средствами шелла:
Код
B=`${SHELL} -c "echo $$((${A}+2))"`

Или даже так, если совместимость с другими make (кроме гнутого) не требуется:
Код
B:=$(shell echo $$((${A}+2)))
dxp
Цитата(alx2 @ May 10 2009, 06:28) *
Насколько я помню, make не вычисляет арифметические выражения. Для этого можно воспользоваться средствами шелла:
Код
B=`${SHELL} -c "echo $$((${A}+2))"`

Вот поэтому (и еще по ряду причин) я с него и слез в пользу SCons'а. smile.gif
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.