Issue
In Xcode, we have to configure many paths in the Build Settings, then we will deal with the $(SRCROOT) and $(PROJECT_DIR) , But what the difference between them, can you show me an example, thx a lot.
Solution
Exchangeable in practice, while the documentation makes these subtle theoretical distinctions:
SRCROOT
Directory path. Identifies the directory containing the target’s source files: contains the path to the project file that defines the target.
SOURCE_ROOT
is an undocumented alias toSRCROOT
PROJECT_DIR
Identifies the directory containing the project (.xcodeproj
)
$(PROJECT_DIR)/build
is used as the create the default value for:- Intermediate Build Files Path
OBJROOT
- Build Products Path
SYMROOT
Typically these paths are not set per target, but are set per-project or per-user.
- Intermediate Build Files Path
PROJECT_FILE_PATH
Identifies the project itself.
Equivalent to$(PROJECT_DIR)/$(PROJECT_NAME).xcodeproj
Conceptually different (#1 is about the project which defines the target while #2 is about the project independently of any target), they are always pointing to the same location since you are, in essence, always building a target.
References
Xcode 8.3 Build Settings reference
Xcode Build System Guide (Retired 2016-09-29)
Answered By - SwiftArchitect Answer Checked By - Gilberto Lyons (PHPFixing Admin)
0 Comments:
Post a Comment
Note: Only a member of this blog may post a comment.