Changes between Version 76 and Version 77 of FAQ
- Timestamp:
- Jul 18, 2009, 1:30:31 PM (15 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
FAQ
v76 v77 5 5 == General Questions == 6 6 7 === A port fails to build === 7 === A port fails to build === #buildfails 8 8 9 9 Before filing a bug in the issue tracker, please make sure you have the latest version of MacPorts and of the ports tree by running … … 21 21 Also, make sure you have the latest version of Xcode. Old versions of Xcode are known to make certain ports fail. 22 22 23 === I get the error "C compiler cannot create executables" when I try to install a port === 23 === I get the error "C compiler cannot create executables" when I try to install a port === #missingxcode 24 24 25 25 You need to install [http://www.macports.org/install.php#requirements Xcode]. … … 30 30 Some ports need newer versions of Xcode than that which ships with the OS, and will fail to install due to that requirement. Xcode is not updated via Software Update, you have to download it manually. To do so, go to http://connect.apple.com/ and log in with your ADC information (the free online account is enough to get access to Xcode). Once you log in, go to ''Downloads'', then select ''Developer Tools'' on the right section under ''Downloads''. You can then search for Xcode (there are quite a few versions available, make sure to get the latest for you OS version). 31 31 32 === Is MacPorts Universal? === 32 === Is MacPorts Universal? === #universal 33 33 34 34 MacPorts works on both Intel- and PowerPC-based Macs, but the ports you install will be compiled only for the architecture you're currently running on. This means that if you migrate from, say, a PowerPC Mac to an Intel one and use Migration Assistant to copy your data to the new machine, you should reinstall all your ports on the new machine to rebuild them for Intel. It may be simpler to completely remove all of MacPorts and start fresh. See below for uninstallation instructions, but be sure to keep any configuration files you need. … … 40 40 See also [wiki:Universal] for a list of ports that were tested for +universal support and the results. 41 41 42 === Why is /opt/local the default install location for MacPorts? === 42 === Why is /opt/local the default install location for MacPorts? === #defaultprefix 43 43 44 44 `/opt/local` was chosen so as to avoid stomping on other various installations (e.g. fink uses `/sw` to do the same); `/usr/local` is not a viable choice for several reasons: … … 47 47 3. gcc considers `/usr/local` to be a standard system directory, causing (at least) the include directory to be unable to appear early in the list of include directories, and hence causing MacPorts-installed items to be difficult to use properly for items which need them (where another version is installed elsewhere, like `/usr/X11R6`) 48 48 49 === How do I remove or uninstall MacPorts? === 49 === How do I remove or uninstall MacPorts? === #uninstall 50 50 51 51 Uninstalling MacPorts can be a drastic step, and depending on the issue you're experiencing, you may not need to do so. If you're unsure, ask on the macports-users mailing list first. … … 80 80 Note that depending on which version of MacPorts you have and which ports you've installed, not all of the above paths will exist on your system. This is ok. 81 81 82 === What are the folders in `${prefix}/var/macports/ for and why do they take up so much space? === 82 === What are the folders in `${prefix}/var/macports/ for and why do they take up so much space? === #diskspace 83 83 84 84 `man porthier` says: "MacPorts runtime data", but it contains some more subfolders: … … 103 103 In the subfolder `rsync.macports.org/release/ports` are folders for each port category and the ports themselves therein, where the corresponding Portfile and patches are found. `port sync` and also `port selfupdate` update this from the MacPorts rsync server. 104 104 105 === I get `Error: checksum (md5/sha1/rmd160) mismatch for port`. What can I do about it? === 105 === I get `Error: checksum (md5/sha1/rmd160) mismatch for port`. What can I do about it? === #checksums 106 106 107 107 MacPorts computes checksums of downloaded files to ensure they aren't corrupted and haven't been tampered with. Each portfile lists the checksums for the files that the port will download (using md5, sha1 and/or rmd160). If the computed checksum of the downloaded file doesn't match the one listed in the portfile, that means the file you downloaded is not the one the port designer used when creating the port, and so MacPorts stops the installation. … … 124 124 * [http://porticus.alittledrop.com/ Porticus] is another new GUI currently in development. 125 125 126 === What do I do if `port selfupdate` doesn't work or the Rsync server refuses connections? === 126 === What do I do if `port selfupdate` doesn't work or the Rsync server refuses connections? === #selfupdatefails 127 127 First try `sudo port -d selfupdate` to get all errors to display. If your connection to the rsync server fails you may get blocked by a firewall or other network control software. 128 128 … … 140 140 * [wiki:howto/PortTreeTarball You can download a tarball, built daily, and update with that] 141 141 142 === When I run `port list installed` I see the identical versions of some ports installed, why? === 142 === When I run `port list installed` I see the identical versions of some ports installed, why? === #portlist 143 143 Using `port list installed` will give confusing results as the 'list' command bases its version information only on what is the currently-available version; so if you have port '''foo''' installed at versions 1 and 2 (with 2 being the current version available), `list installed` will only show '''foo''' at version 2, twice. 144 144 … … 157 157 Don't be scared away, MacPorts will still use the X11 server provided by the system. 158 158 159 === Python fails to build === 159 === Python fails to build === #pythonfails 160 160 161 161 If you get an error building Python like … … 165 165 your Xcode installation is incomplete (you are missing e.g. the QuickTime SDK). 166 166 167 === How do I get readline support for MacPort's Python? === 167 === How do I get readline support for MacPort's Python? === #pythonreadline 168 168 169 169 If you're using python24, install the py-readline port. … … 171 171 If you're using python25, make sure your python25 port is up to date, at least 2.5.4_4, when the standard modules were reintegrated back into the port itself (see ticket #12369). 172 172 173 === Will MacPorts link to system libraries rather than its own? === 173 === Will MacPorts link to system libraries rather than its own? === #syslibs 174 174 175 175 No, MacPorts maintains its own versions of libraries. See the next question for the reason why. … … 177 177 You may find some ports that link with some system libraries. Some of these are intentional, such as in cases where the MacPorts version is missing some crucial functionality (e.g. ports that need Kerberos support use the Mac OS X-supplied library, not the MacPorts one). In other cases these are bugs in the relevant ports, and tickets should be filed so it can be corrected. 178 178 179 === Why is MacPorts using its own libraries? === 179 === Why is MacPorts using its own libraries? === #ownlibs 180 180 181 181 There are several reasons why MacPorts uses its own libraries. It makes ports more consistent across different versions of Mac OS X. If we can rely on e.g. openssl 0.9.8 from MacPorts, we don't have to test every port that needs ssl for every available openssl installation. Apple's software tends to break from time to time (e.g. openssl refuses to build with an old zlib, but for awhile Apple shipped the old headers of the vulnerable zlib version). Even if Apple's versions aren't broken, they're rarely up-to-date. Apple has a habit of not updating the libraries in Mac OS X until absolutely necessitated by a security vulnerability. … … 183 183 The drawbacks of this policy are minimal: Wasting a few megabytes for e.g. a Python installation is next to nothing if you have a multi-gigabyte hard disk, and the time required to build the additional ports decreases as computers get faster. 184 184 185 === GNOME has an empty menu === 185 === GNOME has an empty menu === #gnomemenu 186 186 187 187 See the [wiki:GNOME GNOME] section of this Wiki for more information. … … 213 213 == Portfile Development and Maintenance Questions == 214 214 215 === Is it possible to have a dependency on a specific variant of another port? E.g. "postgresql8 +server"? === 215 === Is it possible to have a dependency on a specific variant of another port? E.g. "postgresql8 +server"? === #126 216 216 217 217 No. This is ticket #126. The dependency engine is currently unable to handle specifying anything beyond "port X requires port Y" or "port X requires file Z which can be provided by port Y." There have been discussions on revamping the engine (see the mailing list archives) but nothing concrete as yet. This is why the most useful variants really shouldn't be variants at all but rolled into the port itself. It can also sometimes be useful to break variants out into separate ports (e.g. the postgresql83-doc and postgresql83-server ports, instead of having +doc or +server variants of the postgresql83 port). 218 218 219 === Why won't `portindex` work? I have a local repository set up === 219 === Why won't `portindex` work? I have a local repository set up === #portindexfails 220 220 221 221 Your local repository needs the ports to be nested within a category for portindex to work, as explained in the relevant [http://guide.macports.org/#development.local-repositories documentation]. 222 222 223 === Why was the `cd` command removed from trunk? === 223 === Why was the `cd` command removed from trunk? === #cd 224 224 225 225 The `cd` command was removed from trunk in r28796. As of release 1.7.0 it will no longer be available for use in Portfiles. `cd` is harmful as it changes the current directory of the whole process and not only of the current Tcl interpreter. Also, it becomes unreliable when used inside phases and other phases begin to rely on it. … … 227 227 Please use absolute paths instead, starting with ${worksrcpath}. If you need to run a command with `system`, use it like `system "cd ${worksrcpath} && autoreconf"`. 228 228 229 === What is the process for becoming a committer? === 229 === What is the process for becoming a committer? === #committer 230 230 231 231 The process is pretty much the same as for any other open source project. See the relevant [http://guide.macports.org/#project.membership documentation] and the [wiki:NewCommittersGuide New commiters guide] for what commit access to MacPorts entails. 232 232 233 === Why Tcl? === 233 === Why Tcl? === #whytcl 234 234 235 235 These mailing list posts by Landon Fuller, one of the original authors, explain why Tcl was chosen for MacPorts: … … 240 240 == Runtime Errors == 241 241 242 === I try to disable a variant, but it just informs me of the proper usage for the `port` command === 242 === I try to disable a variant, but it just informs me of the proper usage for the `port` command === #disablevariants 243 243 244 244 When using