«Если рабочий хочет хорошо выполнять свою работу, он должен сначала заточить свои инструменты» — Конфуций, «Аналитики Конфуция. Лу Лингун»
титульная страница > программирование > Почему мои Makefile не интерполируют выражения в $ (())?

Почему мои Makefile не интерполируют выражения в $ (())?

Опубликовано в 2025-03-25
Просматривать:707

Why Doesn't My Makefile Interpolate Expressions in $(())?

Makefile Interpolation Проблема

При попытке интерполировать выражение в команде Makefile, оно остается не оцениваемым. Это происходит, когда выражение заключено в двойные вьющиеся скобки $ (()).

, чтобы решить эту проблему, удвоит знак доллара ($) в разделе рецепта Makefile. Это эффективно ускользает от первого долларового знака, позволяя иметь правильную интерполяцию.

Вот пример исправленного Makefile:

test:
    go test $$(go list ./... | grep -v /vendor/)

.PHONY: test

с этой модификацией, выражение $$ (go list./... | grep -v/vendor/) будет оцениваться должным образом при запуске команды Make Test.

Последний учебник Более>

Изучайте китайский

Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.

Copyright© 2022 湘ICP备2022001581号-3