Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/qt/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 创建QT Makefile:“创建QT Makefile”;dyld:未加载库:@rpath/QtCore.framework/Versions/5/QtCore";_C++_Qt_Makefile - Fatal编程技术网

C++ 创建QT Makefile:“创建QT Makefile”;dyld:未加载库:@rpath/QtCore.framework/Versions/5/QtCore";

C++ 创建QT Makefile:“创建QT Makefile”;dyld:未加载库:@rpath/QtCore.framework/Versions/5/QtCore";,c++,qt,makefile,C++,Qt,Makefile,出于教育目的,我正在学习从头开始创建一个QT Make文件,而不使用qmake 这是我的Makefile: SOURCES = calculator.cpp INCPATH = -I. -I/usr/local/qt/5.9.1/clang_64/lib/QtWidgets.framework/Headers -I/usr/local/qt/5.9.1/clang_64/lib/QtGui.framework/Headers -I/usr/local/qt/5.9.1/clang_64/lib

出于教育目的,我正在学习从头开始创建一个QT Make文件,而不使用qmake

这是我的Makefile:

SOURCES = calculator.cpp

INCPATH = -I. -I/usr/local/qt/5.9.1/clang_64/lib/QtWidgets.framework/Headers -I/usr/local/qt/5.9.1/clang_64/lib/QtGui.framework/Headers -I/usr/local/qt/5.9.1/clang_64/lib/QtCore.framework/Headers -I. -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.12.sdk/System/Library/Frameworks/OpenGL.framework/Headers -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.12.sdk/System/Library/Frameworks/AGL.framework/Headers -I/usr/local/qt/5.9.1/clang_64/mkspecs/macx-clang -F/usr/local/qt/5.9.1/clang_64/lib

DEFINES = -DQT_NO_DEBUG -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_CORE_LIB

FRAMEWORK = -framework QtCore -framework QtGui -framework QtWidgets -framework OpenGL -framework DiskArbitration -framework IOKit -framework OpenGL -framework AGL

all:
    g++ -std=c++11 $(SOURCES) $(INCPATH) $(FRAMEWORK)
当我运行
make
时,没有错误,并且成功生成了a.out文件

当我试图通过键入
/a.out
来运行该a.out文件时,出现以下错误:

dyld: Library not loaded: @rpath/QtCore.framework/Versions/5/QtCore
  Referenced from: /Users/dougbeney/Desktop/Coding/Projects/cpp/Test/./a.out
  Reason: image not found
Abort trap: 6
你知道我错过了什么吗?我尝试签出生成的qmake Makefile作为引用,但无法确定我需要什么

找到了

这一切都是在LFLAGS

下面是我如何将Makefile更改为工作的:

SOURCES = calculator.cpp

INCPATH = -I. -I/usr/local/qt/5.9.1/clang_64/lib/QtWidgets.framework/Headers -I/usr/local/qt/5.9.1/clang_64/lib/QtGui.framework/Headers -I/usr/local/qt/5.9.1/clang_64/lib/QtCore.framework/Headers -I. -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.12.sdk/System/Library/Frameworks/OpenGL.framework/Headers -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.12.sdk/System/Library/Frameworks/AGL.framework/Headers -I/usr/local/qt/5.9.1/clang_64/mkspecs/macx-clang -F/usr/local/qt/5.9.1/clang_64/lib

DEFINES = -DQT_NO_DEBUG -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_CORE_LIB

LFLAGS = -stdlib=libc++ -headerpad_max_install_names  -arch x86_64 -Wl,-syslibroot,/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.12.sdk -mmacosx-version-min=10.10 -Wl,-rpath,@executable_path/Frameworks -Wl,-rpath,/usr/local/qt/5.9.1/clang_64/lib

FRAMEWORK = -framework QtCore -framework QtGui -framework QtWidgets -framework OpenGL -framework DiskArbitration -framework IOKit -framework OpenGL -framework AGL

all:
    g++ -std=c++11 $(LFLAGS) $(SOURCES) $(INCPATH) $(FRAMEWORK)