- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我已经安装了 QtCreator 2.7.2 ,但是当我尝试编译我的代码时包含 QApplication 它给我这个错误:错误 QApplication:没有这样的文件或目录。
可以顺利编译教程代码“记事本”,我可以在/usr/include/qt4/QtGui/QApplication中找到QApplication。
这是我的代码: #包括 #include "framework/vision_app.h"
int main(int argc, char** argv)
{
QApplication qapp(argc, argv);
VisionApp vapp;
if (vapp.init(argc, argv))
{
return qapp.exec();
}
else
{
return 1;
}
}
多说一句,我没有任何 .pro 文件。我使用 cmake 来打包我的代码。
这是我的 cmakelist:
cmake_minimum_required(VERSION 2.4.6)
include($ENV{ROS_ROOT}/core/rosbuild/rosbuild.cmake)
# Set the build type. Options are:
# Coverage : w/ debug symbols, w/o optimization, w/ code-coverage
# Debug : w/ debug symbols, w/o optimization
# Release : w/o debug symbols, w/ optimization
# RelWithDebInfo : w/ debug symbols, w/ optimization
# MinSizeRel : w/o debug symbols, w/ optimization, stripped binaries
#set(ROS_BUILD_TYPE RelWithDebInfo)
rosbuild_init()
rosbuild_add_boost_directories()
find_package(OpenCV 2.3 REQUIRED)
if(OpenCV_FOUND)
message(STATUS "OpenCV include: ${OpenCV_INCLUDE_DIRS}")
message(STATUS "OpenCV libs: ${OpenCV_LIBS}")
include_directories(${OpenCV_INCLUDE_DIRS})
else(OpenCV_FOUND)
message(SEND_ERROR "OpenCV not found!!")
endif()
# Qt4 requirements
include_directories(${CMAKE_CURRENT_BINARY_DIR})
set(QT_USE_QTOPENGL TRUE)
find_package(OpenGL REQUIRED)
message (STATUS "OpenGL_found:" ${OPENGL_FOUND})
find_package(Qt4 REQUIRED)
include(${QT_USE_FILE})
add_definitions(${QT_DEFINITIONS})
add_definitions(-DQT_NO_KEYWORDS)
#set the default path for built executables to the "bin" directory
set(EXECUTABLE_OUTPUT_PATH ${PROJECT_SOURCE_DIR}/bin)
#set the default path for built libraries to the "lib" directory
set(LIBRARY_OUTPUT_PATH ${PROJECT_SOURCE_DIR}/lib)
#uncomment if you have defined messages
#rosbuild_genmsg()
#uncomment if you have defined services
#rosbuild_gensrv()
include_directories(${PROJECT_SOURCE_DIR}/src)
include_directories(${PROJECT_SOURCE_DIR}/src/gui)
set(we_vision_HDRS src/framework/vision_app.h
src/gui/main_window.h
)
set(we_vision_SRCS src/vision_node_qt.cpp
src/framework/vision_app.cpp
src/gui/main_window.cpp
)
set(we_vision_UIS res/main_window.ui)
QT4_WRAP_CPP(we_vision_HDRS_MOC ${we_vision_HDRS})
QT4_WRAP_UI(we_vision_UI_HDRS ${we_vision_UIS})
rosbuild_add_executable(vision_node_qt ${we_vision_SRCS}
${we_vision_HDRS_MOC}
${we_vision_UI_HDRS}
)
target_link_libraries(vision_node_qt ${OpenCV_LIBS} ${QT_LIBRARIES} ${OPENGL_LIBRARIES})
rosbuild_link_boost(vision_node_qt thread filesystem system)
谁能帮帮我?
最佳答案
你不会相信,但我刚刚遇到了一个非常老的项目,遇到了与你遇到的问题完全相同的问题:错误 QApplication:没有这样的文件或目录
我的发现:按照我的建议,我将 MESSAGE(${QT_INCLUDES}) 添加到我的 CMakeLists.txt 中。这揭示了一些非常有趣的事情:我所有的 Qt 都指向一个旧的 Qt 4.8.2,它不再存在于我的机器上。即使我添加了一个新工具包并运行 CMake,它也没有更新 CMakeCache.txt。该工具包已连接到我最近的 Qt 4.8.5,但 cmake“发现”了 Qt 4.8.2。我通过删除旧的 CMakeCache.txt 解决了我的问题
当 QtCreator 没有找到 CMakeCache.txt 时,它会创建自己的。但不是我有旧的,过时的地方,而是在构建文件夹中。所以也许这就是解释,为什么你的命令行有效,但不是 QtCreator:有两个不同的 QMakeCache.txt 文件。在命令行上你使用正确的,QtCreator 使用它自己的过时的。
关于qt - 有错误 QApplication : no such file or directory,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18198578/
我想念任何Qt如果我替换 QApplication::exec() 的功能使用标准的 Windows 消息循环实现?这应该澄清我的意思: 运行事件处理的常用“Qt”方式: int main(int a
何时在 Windows 上调用虚函数 QApplication::saveState 和 QApplication::commitData?它们是否被调用,或者 session 管理只是 UNIX 的
有两个qApplications A & B,它们可以在各自的主窗口中分别执行。 我想实现以下目标: 1) //Open Application B. //Inside App B's code
我正在尝试运行一个简单的 hello world 示例,并且已经需要一些时间来弄清楚要使用的内容现在我验证了包含路径,QApplication 实际上应该在那里,但它抛出了上述错误。为了清楚起见,我的
当我首先运行 python-pyside2 项目服务器时,它运行良好。 而且该站点也运行良好,但是如果我按 F5 btn 在浏览器中刷新。 站点显示错误页面 Runtime at/ import sy
关闭。这个问题是not reproducible or was caused by typos .它目前不接受答案。 这个问题是由于错别字或无法再重现的问题引起的。虽然类似的问题可能是on-topi
我正在将 Qt 桌面应用程序移植到 Linux(Ubuntu 19.10、64 位桌面、Qt 5.12.5、gcc 版本 9.2.1),并且在 QApplication 完成后发现一些意外的线程仍然处
这里引用 Qt 文档: For any GUI application using Qt, there is precisely one QApplication object 很明显。但我不知道为什
这里引用 Qt 文档: For any GUI application using Qt, there is precisely one QApplication object 很明显。但我不知道为什
我正在尝试将修改后的 qt 程序作为库运行。我需要它而不是阻止主执行。 所以我想做的是运行 QApplication 并开始执行主应用程序。我该如何实现? 我的第一个想法是在一个单独的线程中运行它。
我需要在单击按钮时重新启动我的应用程序,但我遇到了一些问题。我尝试了两种方法: 已尝试 this suggestion它确实重新启动了应用程序,但是我得到了每个小部件的 Gtk_IS_INVISIBL
我试图在不同的线程中创建 QApplication,但发现了 2 个主要问题: 1- 我无法与 GUI 交互 2- 一些警告: 警告:QApplication 不是在 main() 线程中创建的。 Q
是否可以在退出前一个实例后创建和使用新的 QApplication 实例? 最佳答案 是的,您可以在销毁前一个实例后创建一个新的 QApplication。我在 Windows 中使用 PyQt4 验
我是 PyQt4(和 QT)的新手,我遇到了一个问题, 我已经对 QApplication 进行了子类化(以具有对应用程序真正全局的全局数据和函数): class App(QApplication):
我正在 3Dsmax 2015 上做一些简单的 PySide。 这是我的错误: python.ExecuteFile "C:\Program Files\Autodesk\3ds Max 2015\s
我有一个带有单个对话框窗口的 Qt 应用程序。主要看起来像这样: QApplication a(argc, argv); MyObject * myMobject = new QObject(&a);
我有一个带有通知区域图标的应用程序,因此主窗口可能会忽略关闭事件。我正在尝试在应用程序退出时保存首选项和历史记录。我还想在应用程序运行时处理注销。虽然该应用程序是跨平台的,但它在 GNU/Linux
QApplication::QApplication ( int & argc, char ** argv ) Initializes the window system and constructs
我应该在哪里使用 except 块来记录 QApplication 的异常? 这似乎不起作用: app = QtGui.QApplication(sys.argv) MainWindow = Main
在基本的 C++ Qt Widgets 应用程序中,在堆栈上创建一个 QApplication 或直接在 main 函数中对其进行堆分配是可行的,但是在堆上调用一个函数-分配一个 QApplicati
我是一名优秀的程序员,十分优秀!