【问题标题】:How to build qt 5 project on mac如何在mac上构建qt 5项目
【发布时间】:2013-01-24 04:04:46
【问题描述】:

我尝试在 Mac 上构建一个简单的 Qt 5 程序。但我失败了。

代码很简单:

#include <QtWidgets/QApplication>

int main(int argc, char *argv[])
{
    QApplication app (argc, argv);
    return app.exec();
}

我用过:

clang++ -I ~/Qt5.0.0/5.0.0/clang_64/include -L/Users/crazylion/Qt5.0.0/5.0.0/clang_64/lib    test.cpp

然后我得到了这个错误:

Undefined symbols for architecture x86_64:
  "QApplication::exec()", referenced from:
      _main in test-jPGORy.o
  "QApplication::QApplication(int&, char**, int)", referenced from:
      _main in test-jPGORy.o
  "QApplication::~QApplication()", referenced from:
      _main in test-jPGORy.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)

我有什么遗漏吗?

【问题讨论】:

    标签: macos qt clang


    【解决方案1】:

    首先,不要手动编译和链接Qt项目;使用 qmake 和项目文件。

    在您的源目录中运行qmake -project 以生成基本项目文件。

    编辑项目文件并添加以下行:QT += widgets

    现在运行qmake 生成一个makefile。

    现在运行make 来构建您的程序。

    其次,你可以简单地#include &lt;QApplication&gt;

    【讨论】:

      【解决方案2】:

      如果您想使用 clang++ 来支持 qmake,您需要指定要链接到的库以及库目录(您提供的)。

      clang++ -I ~/Qt5.0.0/5.0.0/clang_64/include -L/Users/crazylion/Qt5.0.0/5.0.0/clang_64/lib  -lQtCore -lQtGui  test.cpp
      

      【讨论】:

        【解决方案3】:

        我遇到了同样的问题,在我看来,发行版中存在某种错误,它给了我一些错误,因为在全新安装(使用 qt creator)之后,我没有一些晦涩的 qt 库(不是正常的 qt5 模块,但某种库正在开发中)所以我倾向于认为这可能是 qt 的问题

        也就是说我有一些问题需要更好地理解:

        -您在使用 IDE 吗?

        -如果您使用的是哪个?

        -你是否在 *.pro 中包含了所有用于地震的模块?

        -你用过4.8版本,有遇到过这些问题吗?

        附:如果您没有任何特殊需要,我建议您坚持使用 4.8 版一段时间(就像我所做的那样没有问题),因为 5.0 刚刚发布

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2021-10-08
          • 2015-12-14
          • 1970-01-01
          • 2012-12-19
          • 2016-12-05
          • 1970-01-01
          • 2013-02-26
          相关资源
          最近更新 更多