gpt4 book ai didi

macos - Qt 5.1-运行时崩溃

转载 作者:行者123 更新时间:2023-12-03 15:44:51 24 4
gpt4 key购买 nike

尝试从Qt 5.1构建示例程序时,出现以下运行时错误:

Starting /Users/pietro/myProgs/ParamGUI/build-6_treeview-Desktop_Qt_5_1_0_clang_64bit-Debug/mv_tree.app/Contents/MacOS/mv_tree...
dyld: Library not loaded: /Users/bld.qt/bamboo-agent-home/xml-data/build-dir/DQTC-LGPLRELEASEBUILD510-OSX106/______________________________PADDING______________________________/lib/QtWidgets.framework/Versions/5/QtWidgets
Referenced from: /Users/pietro/myProgs/ParamGUI/build-6_treeview-Desktop_Qt_5_1_0_clang_64bit-Debug/mv_tree.app/Contents/MacOS/mv_tree
Reason: image not found
The program has unexpectedly finished.
/Users/pietro/myProgs/ParamGUI/build-6_treeview-Desktop_Qt_5_1_0_clang_64bit-Debug/mv_tree.app/Contents/MacOS/mv_tree exited with code 0

使用调试器启动程序,并在main()的第一条指令处有一个断点,我得到此错误消息(相对于二进制代码位置):
The inferior stopped because it received a signal from the Operating System.  
Signal name: SIGTRAP
Signal meaning: Trace/breakpoint trap

我不知道如何解决它。
该示例是一个简单的示例,该示例根据Qt文档创建了树形 View 。
在qmake文件中,我指定: QT += widgets
错误 Reason: image not found没有引用位图图像,不是吗?

我是不是错了,或者很多人对Qt5有疑问?

平台:Qt 5.1,Mac OS-X 10.7,QtCreator 2.7.2

-新测试-
在相同的环境中:
-“普通C++项目(CMake构建)”可以正常工作。
-“Qt控制台应用程序”具有与本问题中提到的应用程序相同的问题。

---项目源代码---

专业版文件:
QT += core
QT -= gui
TARGET = Qt5Test2
CONFIG += console
CONFIG -= app_bundle
TEMPLATE = app
SOURCES += main.cpp

main.cpp文件:
#include <QCoreApplication>

int main(int argc, char *argv[])
{
QCoreApplication a(argc, argv);

return a.exec();
}

最佳答案

问题是您的Qt文件不在链接器在可执行文件中指定的位置。

检查可执行文件中以下命令的结果:

otool -L /Users/pietro/myProgs/ParamGUI/build-6_treeview-Desktop_Qt_5_1_0_clang_64bit-Debug/mv_tree.app/Contents/MacOS/mv_tree...

它将显示如下内容:
/Users/pietro/myProgs/ParamGUI/build-6_treeview-Desktop_Qt_5_1_0_clang_64bit-Debug/mv_tree.app/Contents/MacOS/mv_tree...:
/System/Library/Frameworks/Carbon.framework/Versions/A/Carbon (compatibility version 2.0.0, current version 153.0.0)
/System/Library/Frameworks/IOKit.framework/Versions/A/IOKit (compatibility version 1.0.0, current version 275.0.0)
<CUT OUT>/QtCore.framework/QtCore (compatibility version 5.1.0, current version 5.1.1)
...

依此类推。

您的情况需要 QtWidgets在此处:
/Users/bld.qt/bamboo-agent-home/xml-data/build-dir/DQTC-LGPLRELEASEBUILD510-OSX106/______________________________PADDING______________________________/lib/QtWidgets.framework/Versions/5/QtWidgets

它在那个地方存在吗?如果没有,则将其放在此处,或者使用 install_name_tool将可执行文件更改为指向正确的位置。

在后一种解决方案中,您将必须执行以下操作:
install_name_tool -change /Users/bld.qt/bamboo-agent-home/xml-data/build-dir/DQTC-LGPLRELEASEBUILD510-OSX106/______________________________PADDING______________________________/lib/QtWidgets.framework/Versions/5/QtWidgets <THE PATH TO YOUR QtWidgets> <THE PATH TO YOUR EXECUTABLE>

之后在可执行文件上执行 otool -L进行确认。然后重新运行该应用程序。

关于macos - Qt 5.1-运行时崩溃,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18435357/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com