LINUX.ORG.RU

gmake

 , ,


0

1

Здравствуйте. тут такая проблема. есть виндовс 10 и есть gcc (Gnu Compiler Collection), на котором мне нужно собрать мой проект. изначально он на визуал студии сделан и он немаленький, но то другой разговор. проблема с написанием мэйкфайлов. выглядит проблема так: таргет : зависимости (другие таргеты) (здесь ТАБ)рецепт_строка_1 (здесь ТАБ)рецепт_строка_2 (здесь ТАБ)рецепт_строка_3 и так далее. согласно документации этот, возможно, многострочный, рецепт должен выполняться, как шэлл скрипт. на 10 винде это PowerShell, но тут можно и как на bash писать. так проблема вот в чем. вместо того, чтобы выполнить этот рецепт, как шэлл скрипт (как я бы написал эти команды в отдельный скрипт и его запустил), оно строку за строкой передает строки рецепта в функцию CreateProcess (не забываем, это WinBuilds, gcc для Windows). В результате строки типа g++ -o my_obj my_src.cpp проходят (имя экзкшника + параметры командной строки), А ВОТ что-то типа присвоения переменных в рецепте не проходит (откуда ж WinAPI функция CreateProcess может знать про какие-то мои переменные шэлла), ей нужно передать путь к экзешнику. попытки туда передать что-то еще приводят к ошибке 193 (not a valid win32 application). к тому же, естественно приводят попытки вынести рецепт в отдельный шэллскрипт и тут из мейкфайла его вызывать. ВОПРОС: КАК ЗАСТАВИТЬ GMAKE НЕ ПЕРЕДАВАТЬ РЕЦЕПТ ПОСТРОЧНО В CREATEPROCESS, А ПЕРЕДАТЬ ЭТО В POWERSHELL, как оно по-нормальному и должно происходить?? какие-то параметры запуска gmake, переменные окружения, конфиг файлы?

проблема с написанием мэйкфайлов

Нет, основная проблема с изложением мысли.

andreyu ★★★★★ ()

В чем проблема по рецепту дергать ps скрипт прям из цели, передавая ему список файлов и список объектников

lberserq ()

powershell.exe -NonInteractive -File <path to script>

annulen ★★★★★ ()

Лётчик.жпг. или я один такой?

DELIRIUM ★★★★★ ()
Ответ на: комментарий от annulen

Спалился, вендовоз! Колись, какая у тебя версия astral.dll?

DELIRIUM ★★★★★ ()
Ответ на: комментарий от DELIRIUM

Лётчик.жпг. или я один такой?

Не, не один 😁

Stil ★★★★★ ()
Ответ на: комментарий от Stil

Ну хорошо, а то я уже испугался, что парсер пора отправлять в отпуск.

DELIRIUM ★★★★★ ()
Ответ на: комментарий от DELIRIUM

Спалился, вендовоз!

В CI-системе Qt это говно используется для развертывания виндовых машин, пришлось разбираться

Колись, какая у тебя версия astral.dll?

Нету

annulen ★★★★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.