Кроссплатформенная замена

Я надеюсь, что здесь есть мастера командной строки Windows. Если да, то я навеки у вас в долгу.

Я использовал R (и связанные с ним инструменты) в Linux в течение многих лет. Я делаю все в emacs, если могу. Мои пальцы так счастливы.

Чтобы обеспечить воспроизводимость моего анализа, я пишу make-файл для каждого отчета/анализа в проекте. В настоящее время я использую комбинацию R и pandoc для создания отчетов. Как только мой make-файл написан, я просто открываю оболочку и ввожу:

make -f my_target

И мой компьютер запускает мой анализ. Легкий. В Linux.

Я недавно начал работать в правительстве, и мой компьютер работает под управлением Windows, и у меня больше нет make, кроме как через mingw, и ни emacs, ни gitbash не распознают make. Я хотел бы иметь возможность запускать make (или что-то эквивалентное) из обоих (или любого) emacs/gitbash, чтобы запускать мой код последовательным/разумным образом.

Таким образом, мой вопрос заключается в следующем. Как я могу использовать make, который в настоящее время доступен ТОЛЬКО через оболочку msys и не подключен ни к gitbash, ни к emacs, ни к какому другому инструменту мне следует перейти, чтобы я мог продолжать «создавать» свои отчеты разумным / воспроизводимым образом?

Если мне лучше изучить новый инструмент, это нормально. Если есть способ запустить make mingw из emacs/gitbash, это тоже хорошо. Я открыт для предложений. Большинство онлайн-руководств предназначены для программистов Windows, переходящих на Linux. У нас не так много ресурсов для перехода с Linux на Windows (что понятно).


person Choens    schedule 25.04.2014    source источник
comment
Вы видели этот ответ? Мне трудно понять, почему make доступен только для оболочки msys.   -  person nograpes    schedule 25.04.2014
comment
Кроме того, вы проверили Cygwin? Это хороший способ добавить некоторые инструменты Linux в Windows.   -  person nograpes    schedule 25.04.2014
comment
Я думал о Cygwin. Другая моя проблема заключается в том, что я пытаюсь научить своих новых сотрудников заниматься наукой о данных таким образом, и я не хочу перегружать их новыми инструментами. Но это может быть то, что мне нужно сделать.   -  person Choens    schedule 25.04.2014
comment
@nograpes Разве принятый ответ не означает, что MSYS настроен на понимание make как псевдонима фактического имени этого исполняемого файла, mingw-make.exe? Если это так, то понятно, что никто другой не будет знать, где он должен искать, когда вы набираете make... (Re: Cygwin, я пользователь Windows, который очень хотел бы иметь что-то, что делает то, что оно стремится сделать, но обнаружил, что у него так много разочаровывающих маленьких отличий / недостатков, что я в значительной степени отказался от него. Вероятно, это не то, чему вы хотите подвергать свой персонал!)   -  person Josh O'Brien    schedule 25.04.2014
comment
@ ДжошО'Брайен Верно. Я понял это не сразу.   -  person nograpes    schedule 25.04.2014
comment
Я бы сказал, что make не является кроссплатформенным. stackoverflow.com/questions/23297156/   -  person anatoly techtonik    schedule 06.01.2015
comment
Я согласен. В конце концов, я стал учить идее, а не созданию. Идея make заключается в том, что он дает вам централизованное место для управления процессом компиляции. Для нашей работы компиляция чего-либо обычно означает создание PDF-файлов из LaTeX. Итак, я научил своих сотрудников создавать файл . . . обычно называемый make.R, который представляет собой функцию или сценарий, который может создавать отчет и любые вспомогательные слайды или опоры.   -  person Choens    schedule 07.01.2015


Ответы (1)


После долгих ругательств и скрежета зубов я, наконец, понял, что я сделал не так.

Я следовал инструкциям по установке MinGW, но сделал опечатку, когда изменил путь пользователя. Таким образом, MinGW НЕ был на моем пути.

Следование этим инструкциям работает, но недостаточно умно, чтобы исправить опечатки.

Начало работы

person Choens    schedule 25.04.2014
comment
Я первый признаю, что не являюсь экспертом в разработке под Windows. Просто это кажется как-то сложнее, чем то, к чему я привык. - person Choens; 02.05.2014