当我在QtCreator上执行下面的内容时,我看到的是 hello world
打印在屏幕上。但是,如果我从终端机上通过执行 open project.app
,那么就没有输出。为什么会这样呢?也许我的执行方式不对,那么如何在macOS Terminal上执行Qt应用呢?
main.cpp
#include <QCoreApplication>
#include <QDebug>
int main(int argc, char *argv[])
{
QCoreApplication a(argc, argv);
qDebug() << "hello world";
return a.exec();
}
プロジェクト.pro
QT += core
CONFIG += c++11 console app_bundle
SOURCES += main.cpp
我尝试了以下内容,但看起来可能有其他问题。
$ ./project.app/Contents/MacOS/project
dyld: Library not loaded: @rpath/QtWidgets.framework/Versions/5/QtWidgets
Referenced from: /Users/user/QtProjecs/project/./project.app/Contents/MacOS/project
Reason: Incompatible library version: project requires version 5.13.0 or later, but QtWidgets provides version 5.7.0
Abort trap: 6
MacOSX.app文件夹将其可执行文件隐藏在ContentsMacOS子目录中,所以如果你想直接执行可执行文件,并在Terminal中看到它的输出,你会像这样运行它。
./project.app/Contents/MacOS/project