Trong Xcode, chúng ta phải cấu hình nhiều con đường trong Build Cài đặt, hơn chúng ta sẽ đối phó với các $ (SRCROOT) và $ (PROJECT_DIR), Nhưng những gì là sự khác biệt giữa chúng, bạn có thể chỉ cho tôi một ví dụ, thx rất nhiều.Điểm khác biệt giữa SRCROOT và PROJECT_DIR là gì?
Trả lời
Exchangeable trong thực tế, trong khi các tài liệu làm cho những khác biệt tinh tế lý thuyết:
SRCROOT
đường Directory. Xác định thư mục chứa các tệp nguồn của mục tiêu mục tiêu: chứa đường dẫn đến dự án tệp xác định mục tiêu nhắm mục tiêu.
SOURCE_ROOT
là một bí danh không có giấy tờ đểSRCROOT
PROJECT_DIR
xác định thư mục chứa các dự án (.xcodeproj
)
$(PROJECT_DIR)/build
được sử dụng như là tạo ra giá trị mặc định cho:- Trung gian Xây dựng Đường dẫn Tệp
OBJROOT
- Build Path Sản phẩm
SYMROOT
Thông thường những con đường không được thiết lập mỗi mục tiêu, nhưng được thiết lập cho mỗi dự án hoặc cho mỗi người dùng.
- Trung gian Xây dựng Đường dẫn Tệp
PROJECT_FILE_PATH
Xác định dự án riêng của mình.
Tương đương với$(PROJECT_DIR)/$(PROJECT_NAME).xcodeproj
Về mặt lý thuyết khác nhau (# 1 là về dự án trong đó xác định mục tiêu khi # 2 là về dự án độc lập của bất kỳ mục tiêu), họ luôn luôn trỏ đến cùng một vị trí vì thực chất, bạn luôn xây dựng mục tiêu.
Tài liệu tham khảo
Xcode 8.3 Build Settings reference
Xcode Build System Guide (Retired 2016/09/29)
SRCROOT
& PROJECT_DIR
là các macro giống nhau có cùng tác dụng. PROJECT_DIR
có ý nghĩa hơn khi nói về các khung công tác.
- 1. sự khác biệt giữa/* ... */và là gì/** ... */
- 2. sự khác biệt giữa "đặc điểm" và "đặc điểm mẫu" là gì?
- 3. Điểm khác biệt giữa điểm kiểm tra tia lửa và tồn tại trên đĩa là gì
- 4. Sự khác biệt giữa socket.send() và socket.sendall() là gì?
- 5. Sự khác biệt giữa (string [] args) và System.Environment.CommandLine là gì?
- 6. Sự khác biệt giữa "1.0f" và "1.f" là gì?
- 7. Sự khác biệt không tương thích giữa các điểm C (99) và C++ (11) là gì?
- 8. Sự khác biệt giữa Trang trí, Thuộc tính, Khía cạnh và Đặc điểm là gì?
- 9. Sự khác biệt giữa Đa hình và Đặc điểm là gì?
- 10. Sự khác biệt giữa Điểm kết nối NTFS và Liên kết tượng trưng là gì?
- 11. Điểm khác biệt giữa 'IsEnabled' và 'Start/Stop' của DispatcherTimer là gì?
- 12. Điểm khác biệt giữa dấu gạch dưới _.each và _.map là gì?
- 13. Sự khác biệt giữa JavaBean và POJO là gì?
- 14. Sự khác biệt giữa betweeen% INC và @INC là gì?
- 15. Sự khác biệt giữa INTERSECT và WHERE IN là gì?
- 16. Sự khác biệt giữa RoutedCommand và RoutedUICommand là gì?
- 17. Sự khác biệt chính giữa Sinatra và Ramaze là gì?
- 18. Sự khác biệt giữa DBI và DBD là gì?
- 19. Sự khác biệt giữa NSInvocation và chặn là gì?
- 20. Sự khác biệt giữa fn và fn * là gì?
- 21. Sự khác biệt giữa xtype và bí danh là gì?
- 22. Sự khác biệt giữa build.sbt và build.scala là gì?
- 23. Sự khác biệt giữa localname và qname là gì?
- 24. Sự khác biệt giữa Event.target, Event.toElement và Event.srcElement là gì?
- 25. Sự khác biệt giữa ReplicaSet và ReplicationController là gì?
- 26. Sự khác biệt giữa glBindImageTexture() và glBindTexture() là gì?
- 27. Sự khác biệt giữa @noescape, @escaping và @autoclosure là gì?
- 28. Sự khác biệt giữa nhận và scanf là gì?
- 29. Sự khác biệt giữa Application.ThreadException và AppDomain.CurrentDomain.UnhandledException là gì?
- 30. Sự khác biệt giữa while (true) và loop là gì?
Trong cuộc điều tra của tôi, $ (PROJECT_DIR) và $ (SRCROOT) là một số, cả hai đều là thư mục gốc của dự án. – guojiubo