• Open Menu Close Menu
  • Apple
  • Shopping Bag
  • Apple
  • Mac
  • iPad
  • iPhone
  • Watch
  • TV
  • Music
  • Support
  • Search apple.com
  • Shopping Bag

Lists

Open Menu Close Menu
  • Terms and Conditions
  • Lists hosted on this site
  • Email the Postmaster
  • Tips for posting to public mailing lists
Re: Project layout...?
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Project layout...?


  • Subject: Re: Project layout...?
  • From: Paul Walmsley <email@hidden>
  • Date: Wed, 27 May 2009 19:08:43 +0100

I would say that the ideal use of configurations, projects and targets would depend on the nature of your project setup in Visual Studio. If you have mainly one large (VS) project that has all your libraries and third party dependencies in then it may be better to have a single Xcode project file with multiple targets for all the individual libraries.

If on the other hand you have a large number of projects, or several core libraries that are used by a number of different applications then it may be easier to have a single Xcode project for each one and then in the projects for the applications add them in as cross-project references. This makes it easier to re-use libraries in multiple projects but has the disadvantage that finding symbol definitions doesn't work at all well across multiple projects (especially if you're used to VisualStudio's symbol browsing), though it's slightly better than it used to be.

Paul


Dan Korn wrote:
If you're used to Visual Studio and the way it deals with what it calls solutions, projects, and configurations, then rather than having a large Xcode project with a Target for each VS project and Configurations for Debug and Release, I recommend ignoring "configurations" in Xcode and creating separate Xcode projects for each project in the VS solution, and using Targets for Debug and Release. You can have projects build targets of other projects as dependencies and link to their output, and you can always create a top-level "Überproject" which is analogous to the VS solution.

So the mapping would like so:

Visual Studio -> Xcode
Solution -> "top-level" Project
Project -> Project
Configuration -> Target

If you go with Adam's recommendation, you're going to be frustrated by things like the inability to link to different Debug and Release versions of third-party components on the Configuration level in the Xcode GUI without going into the low-level settings or changing all the output paths of your targets to build to a common location. If you ignore configurations, then everything is separated unambiguously by Debug and Release in the GUI.

Dan

On May 26, 2009, at 1:18 PM, Adam Durity wrote:

Though Greg's comments are valid, I feel he didn't really address your question.

Your initial intuition about Xcode is correct. Create a single project, and use multiple targets to build the libraries and executables that you need. This will allow you to set up dependencies between targets, etc.

Adam

_______________________________________________ Do not post admin requests to the list. They will be ignored. Xcode-users mailing list (email@hidden) Help/Unsubscribe/Update your Subscription: This email sent to email@hidden

_______________________________________________ Do not post admin requests to the list. They will be ignored. Xcode-users mailing list (email@hidden) Help/Unsubscribe/Update your Subscription: This email sent to email@hidden
References: 
 >Re: Project layout...? (From: Greg Guerin <email@hidden>)
 >Re: Project layout...? (From: Adam Durity <email@hidden>)
 >Re: Project layout...? (From: Dan Korn <email@hidden>)

  • Prev by Date: Re: gmp 4.3.0 and Xcode 3.1.2: _main not found due to architecture mismatches
  • Next by Date: Re: gmp 4.3.0 and Xcode 3.1.2: _main not found due to architecture mismatches
  • Previous by thread: Re: Project layout...?
  • Next by thread: Re: Project layout...?
  • Index(es):
    • Date
    • Thread