Cedet Help: Настройка проекта Make

Я изучаю cedet для своих проектов c/c++. Однако я сталкиваюсь с трудностями в проектах Make.

Скажем, у меня есть файл main.cpp, который выглядит так

//main.cpp
#include "temp.h"
blah... <c++ code>

и у меня есть temp.h и temp.cpp

это выглядит так

//temp.h
some declarations

//temp.cpp
some definitions

Затем в emacs+cedet я делаю ede-new, затем добавляю цель main с помощью ede-new-target и добавляю main.cpp в main.

Затем я пишу temp.h и temp.cpp и добавляю temp.cpp к целевому temp.

Я выбираю все цели как программу, создающую этот файл Project.ede.

;; Object Test
;; EDE project file.
(ede-proj-project "Test"
  :name "Test"
  :file "Project.ede"
  :targets (list 
   (ede-proj-target-makefile-program "main"
    :name "main"
    :path ""
    :source '("main.cpp")
    )
   (ede-proj-target-makefile-program "temp"
    :name "temp"
    :path ""
    :source '("temp.cpp")
    )
   )
  )

Теперь, когда я создаю make-файл с помощью ede-proj-regenerate, он создает Makefile, который генерирует main.o и temp.o.

Однако make не удается, так как сгенерированный Makefile не идентифицирует зависимость main.cpp от temp.cpp. Как я могу указать cedet EDE идентифицировать эту зависимость? Что не так в том, что я здесь делаю?

И, во-вторых, как мне сказать, что мне не нужен main.o, поскольку это конечная целевая программа/исполняемый файл, а не объектный файл.


person Ankit    schedule 12.12.2011    source источник


Ответы (1)


В вашем примере созданный Makefile должен создавать как main.o, так и main. Имя цели, которую вы создаете, должно быть именем вашей программы, поэтому, если вы изменили цель с именем «main» на «Pickle», она создаст main.o и программу Pickle.

Когда вы редактируете temp.cpp, вы должны добавить его в main или Pickle, если вы решите переименовать цель. Поместите все свои исходные файлы для программы в одну цель, если только вы не решите создать библиотеку, и в этом случае вместо этого добавьте temp в цель типа библиотеки.

Чтобы «исправить ситуацию», вы можете использовать команду customize-project для доступа ко всем другим параметрам, обычно недоступным с помощью простых команд из самого Emacs. Это позволит вам добавлять зависимости от библиотек, добавлять свои заголовки как aux src и другие полезные вещи. Просто прочитайте строки документа, связанные с различными параметрами.

Краткое руководство по EDE можно найти здесь .

person Eric    schedule 18.01.2012
comment
В связи с несколькими недавними вопросами по EDE я создал раздел «Быстрый старт» в руководстве по EDE. Вы можете увидеть версию встроенного бота здесь: randomsample.de/cedetdocs/ ede/ede/Quick-Start.html - person Eric; 24.02.2012