2009-12-08 35 views
39

Tôi có một dự án gồm nhiều tệp .c.h và tôi viết tệp makefile của riêng mình.Sử dụng Makefile tùy chỉnh với Eclipse/CDT

Làm cách nào tôi có thể định cấu hình Eclipse để sử dụng tệp makefile và tệp nguồn từ vị trí ban đầu của chúng?

Trả lời

18

Có một tùy chọn để tạo dự án từ các tệp hiện có: sử dụng "Project Wizard" và chọn "Makefile project".

+1

Điều đó có cho phép bạn chỉnh sửa Makefile thay vì phải thực hiện theo cách của Eclipse không? –

+1

@Peter: bạn có thể chỉnh sửa các tệp makefiles của mình như bạn và Eclipse không chạm vào nó ... ít nhất đó là cách tôi đã sử dụng nó. Có thể có những lựa chọn bí truyền mà tôi chưa đụng đến :-) – jldupont

7

Bạn có thể vô hiệu hóa "Tạo makefiles tự động" trong bất động sản dự án nhật thực - (. Thiết lập builder)> c/C++ build

1

Ngoài ra, có thể có một dòng mà nói "default: esh $(PLUGIN_SO)," hay một cái gì đó dọc theo những đường tùy thuộc vào dự án của bạn . Tôi thấy rằng việc thay đổi "default" thành "all" cũng sẽ cho phép dự án biên dịch. Đây là một tính năng tiện dụng, nhật thực :)

40

Bạn có thể tạo một Makefile tùy chỉnh và đảm bảo nó nằm trong thư mục gốc của dự án của bạn. Sau đó, bạn cần phải vô hiệu hóa các makefiles được tạo tự động. Bạn có thể làm điều đó bằng cách vào đây:

Project Properties (right click on project and select properties) -> C/C++ Build -> in that window uncheck "Generate Makefiles Automatically."

Để sử dụng mục tiêu riêng của bạn, bạn có thể mở View gọi là "Make Target":

Window -> Show View -> Make Target

Theo quan điểm mà bạn có thể tạo ra một mới mục tiêu sẽ sử dụng mục tiêu tương ứng trong Makefile tùy chỉnh của bạn.

+0

Nếu bạn không có cái nhìn này thì sao? – ComputerEngineer88

1

Trong lần thử biên dịch chéo ARM mới nhất của tôi, tôi đã thực hiện một khám phá đau đớn về cách làm việc này.

Trước tiên, tôi đã tạo "Dự án Makefile với Mã hiện tại". Tôi đã chọn chuỗi công cụ Cross ARM. Nếu bây giờ tôi mở một bàn điều khiển trong Eclipse và thực hiện, nó hoạt động.

Bây giờ để xây dựng trong giao diện, tôi đã phải:

tính Thay đổi
  1. đến nội Builder, với Tạo ra Makefile kiểm tra.
  2. Tùy chọn cài đặt hiện cung cấp tab Tạo tác Xây dựng. chọn thực thi với $ {Project}.
  3. Xây dựng. Điều này sẽ dẫn đến lỗi trong giai đoạn liên kết.
  4. Chuyển các thiết lập để ngoài Builder, bỏ chọn "Automatic Makefile thế hệ"
  5. sạch
  6. Build
2

Tất cả những gì bạn phải làm là nói với gmake sử dụng makefile của bạn. Lệnh mặc định cho Code Composer Studio là ${CCS_UTILS_DIR}/bin/gmake. Chỉ cần yêu cầu gmake sử dụng makefile của riêng bạn (ví dụ: sri.mk). Chúng tôi làm điều này với tùy chọn -f. Vì vậy, lệnh mặc định sẽ trở thành ${CCS_UTILS_DIR}/bin/gmake -f ../sri.mk

Lưu ý rằng Code Composer Studio dựa trên Eclipse.

Dưới đây là hướng dẫn:

  1. dự án-> Properties-> C/C++ Build
  2. nhấp chuột vào tab 'Builder'
  3. Un-chọn 'Use default build lệnh"
  4. thay đổi lệnh để ${CCS_UTILS_DIR}/bin/gmake -f ../sri.mk

screen capture of gui settings

Lưu ý rằng bản dựng được khởi động từ thư mục Debug. Thư mục Debug chứa các tệp makefiles được tạo ra bởi Eclipse. Tôi đặt makefile của tôi trong thư mục cấp cao nhất của dự án vì vậy đó là lý do tại sao tôi đặt ../ trong -f ../sri.mk.

Các vấn đề liên quan