Apple has recently released Command Line Tools:
-
What are the tools provided in the Command Line Tools package?
-
Is there some sort of documentation other than man pages?
Please note that I have installed these tools by adding the specific component in Xcode.
Also, this is not about a Xcode project, but a package released by Apple on February 16, 2012!
Open the command line tools DMG and you’ll find a meta-package, which you can extract with the command
pkgutil --expand 'Command Line Tools.mpkg' metapackage. Open themetapackage/Distributionfile that was just extracted in a text editor to see the packages that comprise the meta-package:The corresponding package files are found in a hidden
Packagesdirectory alongside the metapackage. Their contents can be listed withpkgutil --payload-files.If you have a file on disk, and want to know which package it came from:
Now, some bonus information that will be useful if you ever want to remove the command-line tools. Apple, in their infinite wisdom, decline to provide a tool to do so, but we can obtain the information we need by using
pkgutilto display information about installed packages.Firstly,
pkgutil --pkgswill list all installed packages. Compare the output of the list of packages above.pkgutil --infowill display information about an installed package; for example:pkgutil --fileswill display the contents of an installed package, relative to thevolumeandlocationfields given bypkgutil --info. Because the absolute paths are not used, you can’t simply pipe the output of this command toxargs rm -fto remove a package’s files; you’ll have to fix up the paths yourself, perhaps with something likepkgutil --files com.example.pkgname | while read line; do rm -f "/install_location/$line"; done.Once a package’s files are removed,
pkgutil --forgetshould be run to remove information about the installed package from the package database.It should go without saying that you should be very careful if you try this: you’re one typo away from screwing your system up so badly that you’ll have to reinstall it, to say nothing of your precious data!
pkgutilhas some other useful options for verifying that a package’s files are all present, and for restoring their permissions; see its manual page for the details.In general, this will work for any package, however note that some packages can have embedded scripts that get run when the package is installed; obviously, merely removing the package’s files won’t remove all traces of the package from your system. You’ll have to extract the package’s contents and read the script source code, and then decide how best to undo the effects of the script yourself.