C++ 查找带有Cmake和/或qmake的Microsoft SDK(psapi.lib)
我有一个使用Qt4.6和MicrosoftSDK(Psapi.Lib)的应用程序 我使用cmake或qmake来构建 对于qmake和cmake,我在硬文件中指定Psapi.lib的路径 qmake:C++ 查找带有Cmake和/或qmake的Microsoft SDK(psapi.lib),c++,cmake,qmake,C++,Cmake,Qmake,我有一个使用Qt4.6和MicrosoftSDK(Psapi.Lib)的应用程序 我使用cmake或qmake来构建 对于qmake和cmake,我在硬文件中指定Psapi.lib的路径 qmake: win32 { LIBS += "C:\Program Files\Microsoft SDKs\Windows\v7.0A\Lib\Psapi.Lib" } unix { CONFIG += link_pkgconfig PKGCONFIG += xmu } cmak
win32 {
LIBS += "C:\Program Files\Microsoft SDKs\Windows\v7.0A\Lib\Psapi.Lib"
}
unix {
CONFIG += link_pkgconfig
PKGCONFIG += xmu
}
cmake:
SET(PSAPI "C:/Program Files/Microsoft SDKs/Windows/v7.0A/Lib/Psapi.Lib")
IF(UNIX)
INCLUDE(FindPkgConfig)
PKG_CHECK_MODULES(XMU xmu REQUIRED)
INCLUDE_DIRECTORIES(${XMU_INCLUDE_DIR})
LINK_DIRECTORIES(${XMU_LIBRARY_DIRS})
ENDIF()
但是我想避免这条艰难的道路,有没有办法搜索SDK库
对于linux,搜索没有问题:
qmake:
win32 {
LIBS += "C:\Program Files\Microsoft SDKs\Windows\v7.0A\Lib\Psapi.Lib"
}
unix {
CONFIG += link_pkgconfig
PKGCONFIG += xmu
}
cmake:
SET(PSAPI "C:/Program Files/Microsoft SDKs/Windows/v7.0A/Lib/Psapi.Lib")
IF(UNIX)
INCLUDE(FindPkgConfig)
PKG_CHECK_MODULES(XMU xmu REQUIRED)
INCLUDE_DIRECTORIES(${XMU_INCLUDE_DIR})
LINK_DIRECTORIES(${XMU_LIBRARY_DIRS})
ENDIF()
有可能做同样的事情吗?
谢谢。请参阅CMake中的find_library命令。我在Windows 7上成功地找到了Psapi.Lib,如下所示:
find_library (PSAPI Psapi)
但是我很难找到合适的架构。它始终可以找到x32版本:
find_library (PSAPI Psapi PATH_SUFFIXES "x64")
message (STATUS "PSAPI: ${PSAPI}")
> -- PSAPI: C:/Program Files (x86)/Windows Kits/8.0/Lib/win8/um/x86/Psapi.Lib
:(