尝试使用Bazel构建Tink库(https://github.com/google/tink)。已安装Bazel,gcc版本7.2.0,Windows 10 x64。Visual C++ 2017。
一开始,出现了类似“C++编译规则'@boringssl//:crypto'失败”的错误--我在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版本的库。
感谢您的帮助,并为可能的格式错误和破碎的英语道歉-这是我的第一个问题在这里。
1条答案
按热度按时间a11xaf1n1#
不幸的是,我们现在不支持Windows。这是我们计划明年支持的东西,请参阅我们的feature roadmap。