Название: mingw32-make юзает sh, makefile хочет cmd.exe Отправлено: Eugene Efremov от Май 08, 2007, 04:00 mingw32-make версии 3.81, при обнаружении zsh, sh или еще чего-нибудь в том же духе, в качестве шелла юзает именно его. И это, вообще говоря, правильно. Но проблема в том, что при этом она перестает понимать \ как разделитель директории. А оно встречается.
Например qmake от QT генерит именно такие makefile. Как результат -- в makefile написано c:\Qt\4.2.3\bin\moc.exe, а оно выдает: Код:
Вопрос: как заставить эту make юзать для таких случаев cmd.exe? Или -- любым другим способом втолковать ему, что \ -- это разделитель директорий, а не только квотинг?... P.S. Bариант убирания из path всех *sh не предлагать... Название: mingw32-make юзает sh, makefile хочет cmd.exe Отправлено: Вудруф от Май 08, 2007, 08:41 Попробуйте заменить \ на \\.
Название: mingw32-make юзает sh, makefile хочет cmd.exe Отправлено: Eugene Efremov от Май 08, 2007, 13:13 Цитата: "Вудруф" Попробуйте заменить \ на \\. А как быть с теми \ которые действительно используются для квотинга? Я думал о скрипте, который автоматически меняет makefiles, но проблема в том, как отличить, где пути, а где квотинг. Если кто посоветует мне регексп (или какой другой способ), способный гарантированно отличить одно от другого -- буду ему благодарен. И потом, разница в синтаксисе между cmd и sh заключается не только в этом. Например md и mkdir, cp и copy... Оно честно пытается запустить программу copy.exe... С понятным результатом: Код:
Нет, нужен какой-то способ указать mingw32-make, какую shell ему надо юзать... P.S. Долго гуглил... Единственное вразумительное, что нашлось по теме, это http://lists.trolltech.com/qt-interest/2006-01/thread00091-0.html. Мать их так, похоже, придется или-таки извращаться с path, или как-то патчить саму mingw32-make... |