对C++库链接的认识
生活随笔
收集整理的這篇文章主要介紹了
对C++库链接的认识
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
1. 疑惑
2. 準備
生成庫文件libsayhello.so
sayhello.cpp
#include <iostream> using namespace std;void sayhello() {cout << "Hello!" << endl; }CMakeLists.txt
cmake_minimum_required(VERSION 2.8) project(SAYHELLO)add_library(sayhello SHARED sayhello.cpp)會生成一個libsayhello.so文件,將該文件任意文件夾中
3. 實驗
main.cpp
#include <iostream> using namespace std;void sayhello() {cout << "Hello!" << endl; }sayhello.h
#ifndef __SAYHELLO_H__ #define __SAYHELLO_H__void sayhello();#endifCMakeLists.txt
cmake_minimum_required(VERSION 2.8) project(SAYHELLO)# add_library(sayhello SHARED sayhello.cpp)include_directories(/home/lzf/slam/testso) # 添加文件路徑# link_directories(/home/lzf/slam/testso/lib) # 添加庫文件的路徑,后面需要將庫鏈接到可執行文件上link_libraries(/home/lzf/slam/testso/lib/libsayhello.so) # 鏈接編譯所需要的動態文件add_executable(test main.cpp) # target_link_libraries(test sayhello) # 將庫鏈接到可執行文件上# target_link_libraries(test /home/lzf/slam/testso/lib/libsayhello.so) # 或者不添加路徑直接將文件鏈接到可執行文件上4. 結果
(1) link_directories + target_link_libraries
(2) link_libraries
(3) target_link_libraries
總結
以上是生活随笔為你收集整理的对C++库链接的认识的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: oracle触发器报错语法,Oracle
- 下一篇: 字模c语言,[C/C++]字模的解析(视