编译错误:"cannot find -lQtCore4"

Compiling error: "cannot find -lQtCore4"

本文关键字:find -lQtCore4 cannot 编译 错误      更新时间:2023-10-16

昨天我下载了linux的Qt4开源库。运行

./configure
./make
./make install

并插入到我的。bashrc文件中:

PATH=/usr/local/TrollTech/Qt-4.7.3/bin:$PATH
export PATH

在此之后,我运行cmake以便为我生成一个Makefile。CMakeLists.txt:

project(VTKToVTFx)
cmake_minimum_required(VERSION 2.6)
find_package(VTK REQUIRED)
find_package(Qt4 REQUIRED)
include(${VTK_USE_FILE})
include(${QT_USE_FILE})
SET(VTK_TO_VTFX_FORMS main.ui)
QT4_WRAP_UI(VTK_TO_VTFX_FORMS_UIC ${VTK_TO_VTFX_FORMS})
SET(MOC_HEADERS VTKToVTFx.h)
qt4_wrap_cpp(MOC_OUTFILES ${MOC_HEADERS})
SET(CPP_SOURCES VTKToVTFx.cpp
                VTKPatch.cpp
                VTKFile.cpp
                VTKData.cpp
                VTKDataHolder.cpp
                )
add_executable(VTKToVTFx ${CPP_SOURCES} ${VTK_TO_VTFX_FORMS_UIC} ${MOC_OUTFILES})
# Adds folders for Visual Studio solution explorer (and for Xcode explorer)
source_group( "Generated"         FILES ${MOC_FILES_CPP} ${VTK_TO_VTFX_FORMS_UIC} ${QRC_FILES_CPP} ${MOC_OUTFILES})
INCLUDE_DIRECTORIES(${CMAKE_CURRENT_BINARY_DIR})
target_link_libraries(VTKToVTFx vtkHybrid)
target_link_libraries(VTKToVTFx QtCore4)
target_link_libraries(VTKToVTFx QtGUI4)

这个CMakeLists.txt在Windows上工作得很好,但是当我试图在我安装的Ubuntu上编译输出时,出现了这个错误:

/usr/bin/ld: cannot find -lQtCore4
/usr/bin/ld: cannot find -lQtGUI4
谁能指出我的问题在这里?

在unix[like]世界中,斜杠是路径分隔符,而不是反斜杠。

usrlocalTrollTechQt-4.7.3bin求值为usrlocalTrollTechQt-4.7.3bin

edit:此外,您的CMakeLists.txt似乎有点脏。看看http://qtnode.net/wiki/Qt4_with_cmake。而不是

target_link_libraries(VTKToVTFx QtCore4)

使用类似(来源是链接站点):


  • 要添加对Qt4库的支持,如network或qttest,您需要添加包含文件和相应的库。例如,要添加对网络和qttest库的支持,您可以使用:
INCLUDE_DIRECTORIES(
   ${QT_INCLUDE_DIR}
   ${QT_QTNETWORK_INCLUDE_DIR}
   ${QT_QTTEST_INCLUDE_DIR}
)
TARGET_LINK_LIBRARIES(
   ${QT_LIBRARIES}
   ${QT_QTNETWORK_LIBRARIES}
   ${QT_QTTEST_LIBRARIES}
)

即使在4。在X行版本中,库已经被重命名并将被重命名。幸运的是,不需要硬编码:)