gflags的安装及使用

安装

mkdir build && cd build
cmake ..
make
sudo make install

使用

gflag_test.cpp

#include <iostream>
#include <gflags/gflags.h>

DEFINE_string(name, "", "Name of the person");
DEFINE_int32(ID, 0,  "ID of the person");

int main(int argc, char** argv) 
{
    gflags::ParseCommandLineFlags(&argc, &argv, true);

    if (!FLAGS_name.empty()) {
        std::cout << "Hello, " << FLAGS_name << "!" << std::endl;
        std::cout << "ID: " << FLAGS_ID << std::endl;
    }

    return 0;
}

CMakeLists.txt

cmake_minimum_required(VERSION 3.5)
project(gflags_example)

# 设置 C++ 标准
set(CMAKE_CXX_STANDARD 11)

# 添加 gflags 包的查找路径
find_package(gflags REQUIRED)

# 添加可执行文件
add_executable(gflags_example gflag_test.cpp)

# 链接 gflags 库
target_link_libraries(gflags_example gflags)

执行

./gflags_example --name="Andy" --ID=10 
Hello, Andy!
ID: 10
### 在 Ubuntu 20.04 上安装 gflags 库 要在 Ubuntu 20.04 上成功安装 `gflags` 库,可以按照以下方式操作: #### 方法一:通过源码构建并安装 以下是基于引用中的描述完成的具体步骤[^3]。 1. **克隆仓库** 使用 Git 将官方的 `gflags` 源码下载到本地。 ```bash git clone https://github.com/gflags/gflags.git ``` 2. **进入目录并创建构建环境** 进入克隆下来的文件夹,并为其创建一个用于构建的子目录。 ```bash cd gflags mkdir build && cd build ``` 3. **配置 CMake 参数** 设置必要的参数来指定命名空间以及支持的位置独立代码(PIC)。这些设置对于兼容其他项目非常重要。 ```bash cmake .. -DGFLAGS_NAMESPACE=google -DCMAKE_CXX_FLAGS=-fPIC .. ``` 4. **编译与安装** 利用多线程加速编译过程,并最终将其安装至系统路径下。 ```bash make -j$(nproc) sudo make install ``` #### 方法二:利用包管理器快速部署 如果仅需基本功能而无需自定义选项,则可以直接借助 APT 软件包管理系统获取预编译版本[^5]。 ```bash sudo apt update sudo apt install libgflags-dev ``` 以上两种途径均可达成目标,具体选择取决于实际需求场景和个人偏好。前者提供了更大的灵活性,适合开发阶段;后者则更加简便快捷,适用于生产环境中的一般用途。 ```python import subprocess def check_gflags_installation(): """Check whether gflags is installed correctly.""" try: result = subprocess.run(['dpkg', '-s', 'libgflags-dev'], stdout=subprocess.PIPE, stderr=subprocess.PIPE) if "Status: install ok installed" in result.stdout.decode('utf-8'): print("GFlags has been successfully installed via package manager.") else: raise Exception() except: print("Please verify your installation by checking headers and libraries manually.") check_gflags_installation() ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值