将外部 C++ 库添加到 CLion 项目
Add external c++ libraries to a CLion project
我正在使用来自 Mac 的 CLion,但我无法理解如何将外部库添加到我的项目中。那么,如何将外部库添加到 C++ 项目?
在CMakeLists.txt
中,添加外部图书馆信息。
首先,您可以为外部库定义一个逻辑名称,
比如说我们想要 link 一个共享库,其中有 .so 文件已经安装在系统上,
add_library(myLogicalExtLib SHARED IMPORTED)
IMPORTED表示库已经存在,我们不需要在这个项目中在这里构建它。
那么,我们可以提供这个逻辑库的位置信息如下,
set_target_properties(myLogicalExtLib PROPERTIES IMPORTED_LOCATION "/usr/lib/x86_64-linux-gnu/my_logical_ext_lib.so")
手动编辑 CMakeLists.txt 在末尾添加以下几行,并为您的系统提供正确的路径和正确的项目名称。此配置适用于 Ubuntu 17.04 工作站。
include_directories("/usr/include/SDL2")
target_link_libraries(ProjectName "/usr/lib/x86_64-linux-gnu/libSDL.so")
希望对您有所帮助。
您可以使用以下方法对其进行测试:
#include <iostream>
#include <SDL.h>
using namespace std;
int main() {
if (SDL_Init(SDL_INIT_VIDEO) < 0) {
cout << "SDL Init failed" << endl;
return 1;
}
cout << "SDL Init succeeded" << endl;
SDL_Quit();
return 0;
}
我正在使用来自 Mac 的 CLion,但我无法理解如何将外部库添加到我的项目中。那么,如何将外部库添加到 C++ 项目?
在CMakeLists.txt
中,添加外部图书馆信息。
首先,您可以为外部库定义一个逻辑名称,
比如说我们想要 link 一个共享库,其中有 .so 文件已经安装在系统上,
add_library(myLogicalExtLib SHARED IMPORTED)
IMPORTED表示库已经存在,我们不需要在这个项目中在这里构建它。
那么,我们可以提供这个逻辑库的位置信息如下,
set_target_properties(myLogicalExtLib PROPERTIES IMPORTED_LOCATION "/usr/lib/x86_64-linux-gnu/my_logical_ext_lib.so")
手动编辑 CMakeLists.txt 在末尾添加以下几行,并为您的系统提供正确的路径和正确的项目名称。此配置适用于 Ubuntu 17.04 工作站。
include_directories("/usr/include/SDL2")
target_link_libraries(ProjectName "/usr/lib/x86_64-linux-gnu/libSDL.so")
希望对您有所帮助。
您可以使用以下方法对其进行测试:
#include <iostream>
#include <SDL.h>
using namespace std;
int main() {
if (SDL_Init(SDL_INIT_VIDEO) < 0) {
cout << "SDL Init failed" << endl;
return 1;
}
cout << "SDL Init succeeded" << endl;
SDL_Quit();
return 0;
}