gpt4 book ai didi

qt - 有错误 QApplication : no such file or directory

转载 作者:行者123 更新时间:2023-12-01 22:38:52 25 4
gpt4 key购买 nike

我已经安装了 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/

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