Portál AbcLinuxu, 6. května 2025 11:23

Dotaz: gnu makefile nejde bash command cez $(shell...

7.2.2018 10:47 milan
gnu makefile nejde bash command cez $(shell...
Přečteno: 321×
Odpovědět | Admin
tento cmd funguje
bash -c "echo $OECORE_DISTRO_VERSION | sed -r 's/^([0-9])\.([0-9])-.*$/\1\2/'"

ale ked to chcem dat do makefile tak to nejde:
OECORE_DISTRO_VERSION := $(shell bash -c "echo $OECORE_DISTRO_VERSION | sed -r 's/^([0-9])\.([0-9])-.*$/\1\2/'")

$ make
sed: -e expression #1, char 27: unterminated `s' command

da sa to tam zapisat nejak inak az to netreba backslashovat a pod ? nieco ako v pythone """..."""
Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

7.2.2018 14:17 jirka
Rozbalit Rozbalit vše Re: gnu makefile nejde bash command cez $(shell...
Odpovědět | | Sbalit | Link | Blokovat | Admin
je třeba minimálně escapovat $ -> $$
7.2.2018 15:03 milan
Rozbalit Rozbalit vše Re: gnu makefile nejde bash command cez $(shell...
tak stacilo iba escapovat $. Super dakujem.
7.2.2018 14:30 jirka
Rozbalit Rozbalit vše Re: gnu makefile nejde bash command cez $(shell...
Odpovědět | | Sbalit | Link | Blokovat | Admin
pokud vím, tak v Make žádný "univerzální escape" pro shell neexistuje
další možnost je samozřejmě zavřít to do skriptu a volat z Makefile ten skript, čímž se tomu dá vyhnout úplně, ale to asi u takto jednoduchého skriptu nechcete.

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.