iT邦幫忙

2023 iThome 鐵人賽

DAY 4
0
Software Development

C++ 實務基礎經驗系列 第 12

第三方套件 libuv

  • 分享至 

  • xImage
  •  

第三方套件 libuv

libuv是一個跨平台異步事件驅動的IO函式庫。

環境

一樣是用之前的Dockerfile

docker run -v D:/dvt:/home --name=cpp_dev -itd cpp_dev

安裝

安裝也是老樣子,vcpkg

vcpkg install libuv
# 安裝完成信息
libuv provides CMake targets:

    find_package(libuv CONFIG REQUIRED)
    target_link_libraries(main PRIVATE $<IF:$<TARGET_EXISTS:libuv::uv_a>,libuv::uv_a,libuv::uv>)

使用

使用範例就用官方的cat指令範例,針對一個檔案將內容輸出到標準輸出上。

CMakeLists.txtcmake -B build -S . -DCMAKE_TOOLCHAIN_FILE=/opt/vcpkg/scripts/buildsystems/vcpkg.cmake

cmake_minimum_required(VERSION 3.10) # 設定最低版本要求
project(cmaketest)                  # 專案名稱

set(CMAKE_CXX_FLAGS "-std=c++14") 

set(SRC
    smain.cpp
)

find_package(libuv CONFIG REQUIRED)
add_executable(${PROJECT_NAME} ${SRC})
target_link_libraries(${PROJECT_NAME} PRIVATE $<IF:$<TARGET_EXISTS:libuv::uv_a>,libuv::uv_a,libuv::uv>)

最後就是實測階段

cd build
make
echo "hahaha" > test.txt
./cmaketest test.txt
# output
hahaha

libuv的內容還是很多的,之後有機會再補全。

參考

libuv-book


上一篇
第三方套件 websocketpp
下一篇
輔助函式 chrono
系列文
C++ 實務基礎經驗25
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言