0

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

起初,出现诸如“规则'@boringssl//:crypto'的C++编译失败”之类的错误-我在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 版本的库。

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

4

1 回答 1

1

不幸的是,我们目前不支持 Windows。这是我们计划在明年支持的东西,请参阅我们的功能路线图

于 2018-05-24T15:12:37.827 回答