Я уже искал документацию emacs, веб-сайт cedet и здесь на SO напрасно. Если на мой вопрос уже дан ответ, не стесняйтесь (укажите на существующий ответ и) закройте его.
Я пытаюсь ознакомиться с EDE-проектами в emacs. Пока я могу настроить простой проект с одним или несколькими файлами.
Теперь я хотел бы отделить часть моего кода и упаковать его в библиотеку. По сути, я пытаюсь добиться того же, что и со следующим написанным от руки наивным Makefile:
matrix:
g++ -c -o lib/libmatrix.o lib/matrix.cpp -std=c++0x
ar crf lib/libmatrix.a lib/libmatrix.o
num:
g++ num.cpp -Llib -Ilib -std=c++0x -o num -g
Здесь у меня есть библиотека, состоящая из "lib / matrix.h" и "lib / matrix.cpp" (это игрушечная реализация типа матрицы) и файл "num.cpp", который использует матрицу.
Я не знаю, как заставить emacs правильно скомпилировать матрицу. Пока что я получил следующий EDE-проект, но, конечно, он не компилируется.
;; Object Numbers
;; EDE project file.
(ede-proj-project "Numbers"
:name "Numbers"
:file "Project.ede"
:targets (list
(ede-proj-target-makefile-program "num"
:name "num"
:path ""
:source '("num.cpp")
:compiler 'ede-g++-compiler
:linker 'ede-g++-linker
:configuration-variables 'nil
:ldflags '("-std=c++0x" "-Llib" "-Ilib")
:ldlibs '("matrix")
)
(ede-proj-target-makefile-archive "matrix"
:name "matrix"
:path "/lib"
:source '("matrix.cpp")
:compiler 'ede-g++-compiler
:linker 'ede-archive-linker
:configuration-variables 'nil
)
)
:configuration-variables 'nil
)