如何在安装了XCode 4.3的Lion 10.7.3上安装QT?

问题描述:

我在装有Lion 10.7.3和XCode 4.3.1的MacBook上安装QT时出现问题。我试图用brew安装,并得到一个编译器错误。下面是错误的结尾,以及“brew doctor”输出。它似乎使用错误版本的gcc ...虽然我刚刚安装了最新的XCode。有任何想法吗?我试图安装QT,所以我可以用capybara-webkit运行无头浏览器测试。 (我也试过用--install-from-source得到同样的错误。)如何在安装了XCode 4.3的Lion 10.7.3上安装QT?

gstroup$ brew install qt

....

kernel/qcocoaview_mac.mm:1386:61: error: cannot initialize a parameter of type 'NSString *' with an lvalue of type 'const NSString *' return [[[NSAttributedString alloc] initWithString:tmpString] autorelease]; ^~~~~~~~~ /System/Library/Frameworks/Foundation.framework/Headers/NSAttributedString.h:28:34: note: passing argument to parameter 'str' here - (id)initWithString:(NSString )str; ^ 2 errors generated. make[2]: [.obj/release-shared/qcocoaview_mac.o] Error 1 make[1]: [release] Error 2 make: ** [sub-gui-make_default-ordered] Error 2 ==> Exit Status: 2 http://github.com/mxcl/homebrew/blob/master/Library/Formula/qt.rb#L76 ==> Environment /usr/bin/gcc HOMEBREW_VERSION: 0.8 HEAD: 64e489663add868db679cca2186ff8d7796e5d9e HOMEBREW_PREFIX: /usr/local HOMEBREW_CELLAR: /usr/local/Cellar HOMEBREW_REPOSITORY: /usr/local HOMEBREW_LIBRARY_PATH: /usr/local/Library/Homebrew Hardware: 8-core 64-bit dunno OS X: 10.7.3 Kernel Architecture: x86_64 Ruby: 1.8.7-249 /usr/bin/ruby => /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/ruby Xcode: 4.3.1 GCC-4.0: N/A GCC-4.2: build 401 (5664 or newer recommended) LLVM: build 2336 MacPorts or Fink? false X11 installed? true ==> Build Flags CC: /usr/bin/cc => /usr/bin/clang CXX: /usr/bin/c++ => /usr/bin/clang LD: /usr/bin/cc => /usr/bin/clang CFLAGS: -O3 -w -pipe CXXFLAGS: -O3 -w -pipe -fvisibility=hidden MAKEFLAGS: -j8

Error: Failed executing: make Please report this bug: https://github.com/mxcl/homebrew/wiki/new-issue

Also try: brew doctor to check your setup for common problems. brew missing to check installed packages for missing deps.

gstroup$ brew doctor

/usr/bin/gcc Your gcc 4.2.x version is older than the recommended version. It may be advisable to upgrade to the latest release of Xcode.

We couldn't detect gcc 4.0.x. Some formulae require this compiler.

/usr/bin is in your PATH before Homebrew's bin. This means that system- provided programs will be used before Homebrew-provided ones. This is an issue if you install, for instance, Python.

Consider editing your .bashrc to put: /usr/local/bin ahead of /usr/bin in your $PATH.

Some brews install binaries to sbin instead of bin, but Homebrew's sbin was not found in your path.

Consider editing your .bashrc to add: /usr/local/sbin to $PATH.

/usr/bin/gcc

gstroup$ gcc --version

i686-apple-darwin11-llvm-gcc-4.2 (GCC) 4.2.1 (Based on Apple Inc. build 5658) (LLVM build 2336.9.00) Copyright (C) 2007 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

Xcode 4.3.x从gcc中作为编译器切换开来。现在Apple使用llvm。这可能是你问题的根源。有一个Github项目https://github.com/kennethreitz/osx-gcc-installer/downloads可以让你下载一个gcc编译器。

您可能必须在brew命令前加上env CC=/usr/bin/gcc来指定gcc编译器。