redis-plus-plus--github中文翻译--2

本文档详细介绍了如何在Windows上构建和配置redis-plus-plus,包括设置C++标准、构建静态库和共享库、处理编译问题、在Visual Studio中构建项目,以及将库集成到项目中的步骤。特别强调了与C++标准一致性的重要性,以及在不同编译器和Windows环境下可能遇到的注意事项和解决方案。
摘要由CSDN通过智能技术生成

12

能不能举个例子
当然可以。以下是一个具体的例子,说明如何使用cmake命令为redis-plus-plus配置编译和安装路径:

假设:

  • hiredis 被安装在 /opt/libs/hiredis
  • 你想要将 redis-plus-plus 安装到 /opt/libs/redis-plus-plus

那么,你可以使用以下的 cmake 命令:

cmake -DCMAKE_PREFIX_PATH=/opt/libs/hiredis -DCMAKE_INSTALL_PREFIX=/opt/libs/redis-plus-plus ..

运行这个命令后,cmake 会使用 /opt/libs/hiredis 路径下的 hiredis 库来配置 redis-plus-plus 的编译设置。在编译并执行安装命令后,redis-plus-plus 会被安装到 /opt/libs/redis-plus-plus 目录下。

确保你已经在合适的目录下运行这些命令(比如在 redis-plus-plus 源代码目录下的 build 目录,正如之前的步骤所描述的那样)。

13

Since version 1.3.0, by default, redis-plus-plus is built with the -std=c++17 standard. So that we can use the std::string_view and std::optional features. However, it can also be built with the -std=c++11 or -std=c++14 standard, and in that case, we have our own simple implementation of std::string_view and std::optional. In order to explicitly specify c++ standard, you can use the following cmake flag: -DREDIS_PLUS_PLUS_CXX_STANDARD=11.cmake -DCMAKE_PREFIX_PATH=/path/to/hiredis -DCMAKE_INSTALL_PREFIX=/path/to/install/redis-plus-plus -DREDIS_PLUS_PLUS_CXX_STANDARD=11 .
这段话描述了redis-plus-plus从1.3.0版本开始的编译设置,特别是与C++标准相关的设置。以下是这段话的中文解释:

从1.3.0版本开始,默认情况下,redis-plus-plus 使用 -std=c++17 标准进行构建。这样我们就可以使用 std::string_viewstd::optional 这些特性。但是,它也可以使用 -std=c++11-std=c++14 标准进行构建,在这种情况下,我们有自己的简单实现版本的 std::string_viewstd::optional。为了明确指定C++标准,你可以使用以下的 cmake 标志: -DREDIS_PLUS_PLUS_CXX_STANDARD=11

接下来给出的命令:

cmake -DCMAKE_PREFIX_PATH=/path/to/hiredis -DCMAKE_INSTALL_PREFIX=/path/to/install/redis-plus-plus -DREDIS_PLUS_PLUS_CXX_STANDARD=11 ..

是一个完整的 cmake 配置命令示例,它除了指定 hiredis 的路径和 redis-plus-plus 的安装路径外,还明确指定了使用C++11标准来编译 redis-plus-plus。你需要替换 /path/to/hiredis/path/to/install/redis-plus-plus 为你的实际路径。

简而言之,这段话解释了如何为 redis-plus-plus 指定特定的C++标准进行编译,并给出了具体的命令示例。

14

NOTE: You should build redis-plus-plus and your application with the same standard, e.g. if you build redis-plus-plus with C++17 standard, you MUST also build your application code with C++17 standard.

NOTE: You should build redis-plus-plus and your application with the same standard, e.g. if you build redis-plus-plus with C++17 standard, you MUST also build your application code with C++17 standard.

15

When compiling redis-plus-plus, it also compiles a test program, which might take a while. However, you can disable building test with the following cmake option: -DREDIS_PLUS_PLUS_BUILD_TEST=OFF.
这段话的中文解释是:

当编译 redis-plus-plus 时,它也会编译一个测试程序,这可能需要一段时间。但是,你可以使用以下的 cmake 选项来禁用测试的构建:-DREDIS_PLUS_PLUS_BUILD_TEST=OFF

这意味着如果你不需要编译这些测试程序,或者想要加速编译过程,你可以使用这个选项来跳过测试程序的编译。

16

cmake -DCMAKE_PREFIX_PATH=/path/to/hiredis -DCMAKE_INSTALL_PREFIX=/path/to/install/redis-plus-plus -DREDIS_PLUS_PLUS_BUILD_TEST=OFF ..
这是一个cmake命令,用于为redis-plus-plus项目配置编译和安装路径,并明确地禁用了测试程序的构建。下面是这个命令的详细解释:

  1. -DCMAKE_PREFIX_PATH=/path/to/hiredis: 指定hiredis库的安装路径。
  2. -DCMAKE_INSTALL_PREFIX=/path/to/install/redis-plus-plus: 指定redis-plus-plus的安装路径。
  3. -DREDIS_PLUS_PLUS_BUILD_TEST=OFF: 禁用redis-plus-plus的测试程序构建。
  4. ..: 表示cmake配置的源代码目录是当前目录的上一级,也就是redis-plus-plus的源代码目录。

当执行这个命令时,cmake会使用指定路径下的hiredis库来配置redis-plus-plus的编译设置,并确保在编译时跳过测试程序的构建。完成编译并安装后,redis-plus-plus会被安装到指定的路径。

注意,你需要替换/path/to/hiredis/path/to/install/redis-plus-plus为实际的路径。

17

你能举个例子嘛,这个应该在test文件夹输入,还是任意文件夹下的窗口输入

好的,我将为你提供一个完整的例子,从克隆redis-plus-plus的源代码到编译并安装。

  1. 选择一个工作目录并克隆源代码:

    cd ~
    git clone https://github.com/sewenew/redis-plus-plus.git
    
  2. 进入到redis-plus-plus目录并创建一个新的build目录:

    cd redis-plus-plus
    mkdir build
    
  3. 进入到build目录并运行cmake命令:

    假设你已经将hiredis安装在/opt/libs/hiredis,并且你想要将redis-plus-plus安装在/opt/libs/redis-plus-plus

    cd build
    cmake -DCMAKE_PREFIX_PATH=/opt/libs/hiredis -DCMAKE_INSTALL_PREFIX=/opt/libs/redis-plus-plus -DREDIS_PLUS_PLUS_BUILD_TEST=OFF ..
    
  4. 编译并安装:

    make
    sudo make install
    

在这个例子中,你需要在redis-plus-plus的源代码目录中创建一个新的build目录,并在那里运行cmake命令。这是一种常见的做法,称为"out-of-source"构建,它确保源代码目录保持整洁,并不会混杂编译时生成的文件。所以你应该在redis-plus-plus目录下的build子目录中输入上述cmake命令,而不是在任意文件夹或test文件夹。

18

By default, redis-plus-plus builds both a static library and a shared library. If you only want to build one of them, you can disable the other with -DREDIS_PLUS_PLUS_BUILD_STATIC=OFF or -DREDIS_PLUS_PLUS_BUILD_SHARED=OFF. redis-plus-plus builds static library with -fPIC option, i.e. Position Independent Code, by default. However, you can disable it with -DREDIS_PLUS_PLUS_BUILD_STATIC_WITH_PIC=OFF.
这些文本提供了关于如何配置redis-plus-plus编译选项的信息。以下是这些选项的中文解释:

  1. 构建静态库和共享库:
    默认情况下,redis-plus-plus 同时构建一个静态库和一个共享库。如果你只想构建其中之一,可以使用 -DREDIS_PLUS_PLUS_BUILD_STATIC=OFF-DREDIS_PLUS_PLUS_BUILD_SHARED=OFF 来禁用另一个。

    例如:

    • 如果你只想构建共享库,可以设置 -DREDIS_PLUS_PLUS_BUILD_STATIC=OFF
    • 如果你只想构建静态库,可以设置 -DREDIS_PLUS_PLUS_BUILD_SHARED=OFF
  2. 静态库的位置独立代码(PIC)选项:
    redis-plus-plus 默认使用 -fPIC 选项来构建静态库,这意味着它构建的是位置独立代码(Position Independent Code)。但是,你可以使用 -DREDIS_PLUS_PLUS_BUILD_STATIC_WITH_PIC=OFF 来禁用这个选项。

    使用位置独立代码(PIC)的好处是它允许在不同的地址空间中重用相同的代码,这在创建共享库时是必要的。然而,在某些情况下,例如当你确定只会在一个特定的上下文中使用静态库时,可能不需要PIC,因此可以禁用它以优化性能。

综上所述,这些选项允许你定制redis-plus-plus的构建过程,以满足特定的需求或偏好。当运行cmake命令时,你可以添加适当的选项来配置构建设置。

19

Windows Support:Now hiredis has Windows support, and since Visual Studio 2017, Visual Studio has built-in support for CMake

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值