Google Tink 库构建 C++

Google Tink library building C++

正在尝试使用 Bazel 构建 Tink 库 (https://github.com/google/tink)。已安装 Bazel,gcc 版本 7.2.0,Windows 10 x64。 Visual C++ 2017.

起初,有像 "C++ compilation of rule '@boringssl//:crypto' failed" 这样的错误 - 我在 boringssl/BUILD 文件(第 boringssl_copts、boringssl_copts_c11 节)中评论了这些行(我认为带有编译标志) ) 然后他们就消失了。

但在那之后,bazel 说,那个错误在 errors.h 文件中 (https://github.com/google/tink/blob/master/cc/util/errors.h)

// from #include "absl/base/port.h"
#define PRINTF_ATTRIBUTE(string_index, first_to_check)                  \
__attribute__((__format__ (__printf__, string_index, first_to_check)))
// Constructs a Status object given a printf-style va list.
crypto::tink::util::Status ToStatusF(
crypto::tink::util::error::Code code, const char* format, ...)
PRINTF_ATTRIBUTE(2, 3);
}  // namespace tink
}  // namespace crypto
enter code here

错误 C3646:第 32 行(符合 "PRINTF_ATTRIBUTE(2, 3);" 的行)未知覆盖说明符。最可怕的是,在另一个文件中,相同的代码(定义相同的属性)正在运行。

此文件中还有其他错误,但提到的是第一个(另一个是关于同一行,所以我猜它们是第一个的结果)。

我几乎是 cpp 的新手,但应该只使用 cpp,而不是 java-版本的库。

感谢您的帮助,对于可能出现的格式错误和破损的英语,我们深表歉意 - 这是我的第一个问题。

很遗憾,我们暂时不支持 Windows。这是我们计划明年支持的内容,请参阅我们的 feature roadmap