小编A. *_*hun的帖子

如何在 Visual Studio Code 中设置适用于 Linux 的 Windows 子系统中的包含路径

目前我正在使用 Windows 机器,并且想尝试用于 linux(wsl) 的 Windows 子系统进行 C++ 开发。Visual Studio Code(VSC) 提供了一个简洁的扩展,用于处理运行良好的子系统。我还无法开始工作的一件事是让 vsc 包含位于子系统内部的头文件。

\n\n

我知道我可以手动添加新路径以包含在 \xc2\xb4c_cpp_properties.json\xc2\xb4 中,但我不知道从 Windows 指向子系统 /usr/include 的任何路径(作为示例)。我找到了一些资源(wsl include paths),但无论如何都无法让它工作。我还尝试按照 gitlab 问题中的描述自行生成路径,但这也没有帮助。

\n\n

有人有一些为 C++ 项目使用 wsl 设置 vsc 的经验吗?谁能帮助我?

\n

c++ include-path visual-studio-code windows-subsystem-for-linux vscode-remote

6
推荐指数
1
解决办法
1万
查看次数

如何通过conan使用gtest

我目前正在学习柯南。作为一个练习项目,我想创建一个带有单元测试的库(我很清楚将 conan 用于 gtest 并不是最有用的事情,但这只是一个例子)。

我的项目目录:

  • 建造
    • 垃圾桶
      • array_tests
  • 源文件
    • 数组.hpp
  • 测试
    • array_tests.cpp
  • 配置文件.txt
  • CMakeLists.txt

我的conanfile.txt

[requires]
gtest/1.10.0

[generators]
cmake
Run Code Online (Sandbox Code Playgroud)

我的 CMakeLists.txt:

cmake_minimum_required(VERSION 3.5)
project(ralib)
enable_testing()

include(${CMAKE_BINARY_DIR}/conanbuildinfo.cmake)
conan_basic_setup()

add_library(ralib INTERFACE)

add_executable(array_tests tests/array_tests.cpp)
target_link_libraries(array_tests ${CONAN_LIBS})


add_test(NAME array_tests WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/bin COMMAND array_tests)
Run Code Online (Sandbox Code Playgroud)

我的array_tests.cpp:

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

TEST(Array, test){
    std::cout << "g" << std::endl;
    EXPECT_EQ(1, 1);
}
Run Code Online (Sandbox Code Playgroud)

来自build

./bin/array_tests
Run Code Online (Sandbox Code Playgroud)

执行 array_tests 时出错

munmap_chunk(): invalid pointer
Aborted (core dumped)
Run Code Online (Sandbox Code Playgroud)

来自build

conan install .. && cmake .. && cmake --build …
Run Code Online (Sandbox Code Playgroud)

c++ cmake googletest conan

3
推荐指数
1
解决办法
2809
查看次数

转换自公历日历开始至今的天数

我正在使用包含时间维度的netCDF4文件。此时间维度的值是代表从1582-10-15 00:00开始的天的双精度值。为了允许用户与数据进行交互,我需要将这些时间戳转换为实际日期(例如01:01:2014T00:00:00)。

在研究这一点时,我无法在c ++中找到解决方案。netCDF Python库提供了num2date以及date2num,它们正是我所需要的。可悲的是,我在c ++库中找不到这些功能。我将不胜感激有关如何执行此操作的任何建议。

c++ datetime netcdf netcdf4

2
推荐指数
1
解决办法
85
查看次数

Conan 创建带有依赖项的包

我正在尝试为 netcdf-c 构建 conan 包。NetCDF 需要 zlib 和 hdf5 作为依赖项,它们都可以通过 conan 中心获得。

我将它们作为要求添加到我的 conanfile.py 中。当运行conan create . testing/build从我的 conanfile.py 创建 conan 包时,CMake 无法构建 netcdf-c。的输出conan create显示 zlib 和 hdf5 已安装,但找不到。当使用 cmake 编译 netcdf-c 时,我必须像这样设置配置:CPPFLAGS="-I${H5DIR}/include -I${ZDIR}/include" LDFLAGS="-L${H5DIR}/lib -L${ZDIR}/lib" --prefix=${NCDIR} --disable-dap。我如何在我的内部设置这些标志conanfile.py

柯南文件.py:

from conans import ConanFile, CMake, tools


class NetcdfcConan(ConanFile):
    name = "netcdf_c"
    version = "4.7.3"
    license = "BSD 3-Clause 'New' or 'Revised' License"
    author = "Arne Osterthun arne.osterthun@dlr.de"

    description = "The Unidata network Common …
Run Code Online (Sandbox Code Playgroud)

cmake netcdf conan

1
推荐指数
1
解决办法
2418
查看次数