Mac OS X: Как получить ссылку на make-файл / Приложения / Приложение - PullRequest
1 голос
/ 27 февраля 2011

ОС Mac OS X 10.6.6 Emacs 23.2.1

В настоящее время я пытаюсь установить magit на углеродные Emacs, используя предложенное ими решение make. Я почти полный makefile новичок, так что я могу быть на совершенно неверном пути. Makefile отображает:

%.elc: %.el
$(BATCH) --eval '(byte-compile-file "$<")'

, который расширяется до:

emacs -batch -q -no-site-file -eval "(setq load-path (cons (expand-file-name \".\") load-path))" --eval '(byte-compile-file "magit.el")'

Что я понимаю. Однако он возвращается с:

Cannot open load file: subst-ksc

То, что после небольшого поиска в Google обнаруживает некоторые недостающие библиотеки. Я также понял, что emacs, на который ссылается расширенная команда, указывает на / usr / bin / emacs, который является одним большим файлом, я не вижу нормальных каталогов lisp / site-lisp / etc. Я также знаю, что мой предпочтительный emacs - это карбоновый emacs, расположенный в /Application/Emacs.app, который просто открывается при нажатии на него, или, альтернативно, я могу открыть его с помощью терминала:

open /Application/MyApp.app

Наконец, заглавный вопрос: Как я могу создать Makefile, используя Emacs.app в каталоге приложений? Я надеюсь, что кто-то здесь знает ответ, или может указать мне на альтернативы.

С уважением, Йерун.

Ответы [ 3 ]

2 голосов
/ 11 октября 2011
 bash-3.2$ EMACSLOADPATH=/usr/share/emacs/22.1/site-lisp:/usr/share/emacs/22.1/lisp emacs - batch -eval '(print "hi")'

 "hi"  
 bash-3.2$ emacs -batch -eval '(print "hi")'
 Cannot open load file: subst-ksc
 bash-3.2$
1 голос
/ 27 июля 2014

У меня была такая же ошибка Cannot open load file: subst-ksc на OS X Maverick, работающей

cask exec emacs --no-site-file --no-site-lisp --batch \
     \
    -f batch-byte-compile projectile.el

Я решил ее с помощью метода, указанного здесь .

Замените /usr/bin/emacs файл с помощью следующего сценария:

#!/bin/sh
/Applications/Emacs.app/Contents/MacOS/Emacs "$@"

Таким образом, команда emacs запустит ваш фактический Emacs.

1 голос
/ 10 февраля 2012
bash-3.2$ emacs -batch -eval '(print emacs-version)'
Cannot open load file: subst-ksc

bash-3.2$ unset EMACSLOADPATH

bash-3.2$ emacs -batch -eval '(print emacs-version)'

"22.1.1"
...