PaddleOCR
PaddleOCR copied to clipboard
PPOCR 服务化部署,安装PaddleServing失败: Could not build wheels for grpcio, grpcio-tools
- 系统环境/System Environment:Windows10 专业版, 使用 Docker Desktop虚拟Linux
- 版本号/Version:Windows10 22H2 19045.3803 Paddle:2.6.0 PaddleOCR:2.7.1 问题相关组件/Related components:PaddleServing
- docker镜像: paddlepaddle/paddle:2.6.0 (就是在此镜像的容器中安装PaddleServing失败)
- python版本: python3.10.13
- 运行指令/Command Code:pip3 install paddle_serving_server_gpu-0.9.0.post102-py3-none-any.whl
- 完整报错/Complete Error Message:
根据 PPOCR服务化部署 文档, 到准备PaddleServing的运行环境时报错。 https://github.com/PaddlePaddle/PaddleOCR/blob/release/2.7/deploy/pdserving/README_CN.md
安装PaddleServing0.9.0 或者0.8.3都安装不成功。
wget https://paddle-serving.bj.bcebos.com/test-dev/whl/paddle_serving_server_gpu-0.9.0.post102-py3-none-any.whl
pip3 install paddle_serving_server_gpu-0.9.0.post102-py3-none-any.whl
安装时第一次失败的地方:
# pip3 install paddle_serving_server_gpu-0.9.0.post102-py3-none-any.whl
Processing ./paddle_serving_server_gpu-0.9.0.post102-py3-none-any.whl
Requirement already satisfied: six>=1.10.0 in /usr/lib/python3/dist-packages (from paddle-serving-server-gpu==0.9.0.post102) (1.14.0)
Requirement already satisfied: protobuf>=3.11.0 in /usr/local/lib/python3.10/dist-packages (from paddle-serving-server-gpu==0.9.0.post102) (4.25.1)
Collecting grpcio<=1.33.2 (from paddle-serving-server-gpu==0.9.0.post102)
Using cached grpcio-1.33.2.tar.gz (20.9 MB)
Installing build dependencies ... done
Getting requirements to build wheel ... done
Preparing metadata (pyproject.toml) ... done
Collecting grpcio-tools<=1.33.2 (from paddle-serving-server-gpu==0.9.0.post102)
Using cached grpcio-tools-1.33.2.tar.gz (2.1 MB)
Installing build dependencies ... done
Getting requirements to build wheel ... done
Preparing metadata (pyproject.toml) ... done
Collecting flask<2.0.0,>=1.1.1 (from paddle-serving-server-gpu==0.9.0.post102)
Using cached Flask-1.1.4-py2.py3-none-any.whl (94 kB)
Collecting click==7.1.2 (from paddle-serving-server-gpu==0.9.0.post102)
Using cached click-7.1.2-py2.py3-none-any.whl (82 kB)
Collecting itsdangerous==1.1.0 (from paddle-serving-server-gpu==0.9.0.post102)
Using cached itsdangerous-1.1.0-py2.py3-none-any.whl (16 kB)
Collecting Jinja2==2.11.3 (from paddle-serving-server-gpu==0.9.0.post102)
Using cached Jinja2-2.11.3-py2.py3-none-any.whl (125 kB)
Collecting MarkupSafe==1.1.1 (from paddle-serving-server-gpu==0.9.0.post102)
Using cached MarkupSafe-1.1.1-cp310-cp310-linux_x86_64.whl
Collecting Werkzeug==1.0.1 (from paddle-serving-server-gpu==0.9.0.post102)
Using cached Werkzeug-1.0.1-py2.py3-none-any.whl (298 kB)
Collecting func-timeout (from paddle-serving-server-gpu==0.9.0.post102)
Using cached func_timeout-4.3.5-py3-none-any.whl
Requirement already satisfied: pyyaml in /usr/local/lib/python3.10/dist-packages (from paddle-serving-server-gpu==0.9.0.post102) (6.0.1)
Collecting pytest (from paddle-serving-server-gpu==0.9.0.post102)
Using cached pytest-7.4.4-py3-none-any.whl.metadata (7.9 kB)
Collecting protobuf>=3.11.0 (from paddle-serving-server-gpu==0.9.0.post102)
Using cached protobuf-3.20.3-cp310-cp310-manylinux_2_12_x86_64.manylinux2010_x86_64.whl (1.1 MB)
Collecting iniconfig (from pytest->paddle-serving-server-gpu==0.9.0.post102)
Using cached iniconfig-2.0.0-py3-none-any.whl (5.9 kB)
Requirement already satisfied: packaging in /usr/local/lib/python3.10/dist-packages (from pytest->paddle-serving-server-gpu==0.9.0.post102) (23.2)
Collecting pluggy<2.0,>=0.12 (from pytest->paddle-serving-server-gpu==0.9.0.post102)
Using cached pluggy-1.3.0-py3-none-any.whl.metadata (4.3 kB)
Requirement already satisfied: exceptiongroup>=1.0.0rc8 in /usr/local/lib/python3.10/dist-packages (from pytest->paddle-serving-server-gpu==0.9.0.post102) (1.2.0)
Collecting tomli>=1.0.0 (from pytest->paddle-serving-server-gpu==0.9.0.post102)
Using cached tomli-2.0.1-py3-none-any.whl (12 kB)
Using cached pytest-7.4.4-py3-none-any.whl (325 kB)
Using cached pluggy-1.3.0-py3-none-any.whl (18 kB)
Building wheels for collected packages: grpcio, grpcio-tools
Building wheel for grpcio (pyproject.toml) ... error
error: subprocess-exited-with-error
× Building wheel for grpcio (pyproject.toml) did not run successfully.
│ exit code: 1
╰─> [2113 lines of output]
第二次报错, 因内容太长,只截取了尾部:
google::protobuf::util::MessageDifferencer::MultipleFieldsMapKeyComparator::IsMatchInternal(const google::protobuf::Message&, const google::protobuf::Message&, const std::vector<google::protobuf::util::MessageDifferencer::SpecificField>&, const std::vector<const google::protobuf::FieldDescriptor*>&, int) const’:
third_party/protobuf/src/google/protobuf/util/message_differencer.cc:144:20: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector<const google::protobuf::FieldDescriptor*>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
144 | if (path_index == key_field_path.size() - 1) {
| ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
third_party/protobuf/src/google/protobuf/util/message_differencer.cc: In function ‘void google::protobuf::util::MatchIndicesPostProcessorForSmartList(std::vector<int>*, std::vector<int>*)’:
third_party/protobuf/src/google/protobuf/util/message_differencer.cc:190:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector<int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
190 | for (int i = 0; i < match_list1->size(); ++i) {
| ~~^~~~~~~~~~~~~~~~~~~~~
third_party/protobuf/src/google/protobuf/util/message_differencer.cc: In destructor ‘google::protobuf::util::MessageDifferencer::~MessageDifferencer()’:
third_party/protobuf/src/google/protobuf/util/message_differencer.cc:278:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector<google::protobuf::util::MessageDifferencer::MapKeyComparator*>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
278 | for (int i = 0; i < owned_key_comparators_.size(); ++i) {
| ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
third_party/protobuf/src/google/protobuf/util/message_differencer.cc:281:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector<google::protobuf::util::MessageDifferencer::IgnoreCriteria*>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
281 | for (int i = 0; i < ignore_criteria_.size(); ++i) {
| ~~^~~~~~~~~~~~~~~~~~~~~~~~~
third_party/protobuf/src/google/protobuf/util/message_differencer.cc: In member function ‘void google::protobuf::util::MessageDifferencer::TreatAsMapWithMultipleFieldsAsKey(const google::protobuf::FieldDescriptor*, const std::vector<const google::protobuf::FieldDescriptor*>&)’:
third_party/protobuf/src/google/protobuf/util/message_differencer.cc:382:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector<const google::protobuf::FieldDescriptor*>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
382 | for (int i = 0; i < key_fields.size(); ++i) {
| ~~^~~~~~~~~~~~~~~~~~~
third_party/protobuf/src/google/protobuf/util/message_differencer.cc: In member function ‘void google::protobuf::util::MessageDifferencer::TreatAsMapWithMultipleFieldPathsAsKey(const google::protobuf::FieldDescriptor*, const std::vector<std::vector<const google::protobuf::FieldDescriptor*> >&)’:
third_party/protobuf/src/google/protobuf/util/message_differencer.cc:397:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector<std::vector<const google::protobuf::FieldDescriptor*> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
397 | for (int i = 0; i < key_field_paths.size(); ++i) {
| ~~^~~~~~~~~~~~~~~~~~~~~~~~
third_party/protobuf/src/google/protobuf/util/message_differencer.cc:400:23: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector<const google::protobuf::FieldDescriptor*>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
400 | for (int j = 0; j < key_field_path.size(); ++j) {
| ~~^~~~~~~~~~~~~~~~~~~~~~~
third_party/protobuf/src/google/protobuf/util/message_differencer.cc: In member function ‘google::protobuf::util::FieldDescriptorArray google::protobuf::util::MessageDifferencer::CombineFields(const FieldDescriptorArray&, google::protobuf::util::MessageDifferencer::Scope, const FieldDescriptorArray&, google::protobuf::util::MessageDifferencer::Scope)’:
third_party/protobuf/src/google/protobuf/util/message_differencer.cc:679:17: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector<const google::protobuf::FieldDescriptor*>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
679 | while (index1 < fields1.size() && index2 < fields2.size()) {
| ~~~~~~~^~~~~~~~~~~~~~~~
third_party/protobuf/src/google/protobuf/util/message_differencer.cc:679:44: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector<const google::protobuf::FieldDescriptor*>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
679 | while (index1 < fields1.size() && index2 < fields2.size()) {
| ~~~~~~~^~~~~~~~~~~~~~~~
third_party/protobuf/src/google/protobuf/util/message_differencer.cc: In static member function ‘static bool google::protobuf::util::MessageDifferencer::CheckPathChanged(const std::vector<google::protobuf::util::MessageDifferencer::SpecificField>&)’:
third_party/protobuf/src/google/protobuf/util/message_differencer.cc:1119:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector<google::protobuf::util::MessageDifferencer::SpecificField>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
1119 | for (int i = 0; i < field_path.size(); ++i) {
| ~~^~~~~~~~~~~~~~~~~~~
third_party/protobuf/src/google/protobuf/util/message_differencer.cc: In member function ‘bool google::protobuf::util::MessageDifferencer::IsIgnored(const google::protobuf::Message&, const google::protobuf::Message&, const google::protobuf::FieldDescriptor*, const std::vector<google::protobuf::util::MessageDifferencer::SpecificField>&)’:
third_party/protobuf/src/google/protobuf/util/message_differencer.cc:1166:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector<google::protobuf::util::MessageDifferencer::IgnoreCriteria*>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
1166 | for (int i = 0; i < ignore_criteria_.size(); ++i) {
| ~~^~~~~~~~~~~~~~~~~~~~~~~~~
third_party/protobuf/src/google/protobuf/util/message_differencer.cc: In member function ‘bool google::protobuf::util::MessageDifferencer::IsUnknownFieldIgnored(const google::protobuf::Message&, const google::protobuf::Message&, const google::protobuf::util::MessageDifferencer::SpecificField&, const std::vector<google::protobuf::util::MessageDifferencer::SpecificField>&)’:
third_party/protobuf/src/google/protobuf/util/message_differencer.cc:1179:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector<google::protobuf::util::MessageDifferencer::IgnoreCriteria*>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
1179 | for (int i = 0; i < ignore_criteria_.size(); ++i) {
| ~~^~~~~~~~~~~~~~~~~~~~~~~~~
third_party/protobuf/src/google/protobuf/util/message_differencer.cc: In member function ‘bool google::protobuf::util::MessageDifferencer::CompareUnknownFields(const google::protobuf::Message&, const google::protobuf::Message&, const google::protobuf::UnknownFieldSet&, const google::protobuf::UnknownFieldSet&, std::vector<google::protobuf::util::MessageDifferencer::SpecificField>*)’:
third_party/protobuf/src/google/protobuf/util/message_differencer.cc:1302:17: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector<std::pair<int, const google::protobuf::UnknownField*> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
1302 | while (index1 < fields1.size() || index2 < fields2.size()) {
| ~~~~~~~^~~~~~~~~~~~~~~~
third_party/protobuf/src/google/protobuf/util/message_differencer.cc:1302:44: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector<std::pair<int, const google::protobuf::UnknownField*> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
1302 | while (index1 < fields1.size() || index2 < fields2.size()) {
| ~~~~~~~^~~~~~~~~~~~~~~~
third_party/protobuf/src/google/protobuf/util/message_differencer.cc:1316:16: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector<std::pair<int, const google::protobuf::UnknownField*> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
1316 | if (index2 == fields2.size() ||
| ~~~~~~~^~~~~~~~~~~~~~~~~
third_party/protobuf/src/google/protobuf/util/message_differencer.cc:1317:17: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector<std::pair<int, const google::protobuf::UnknownField*> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
1317 | (index1 < fields1.size() &&
| ~~~~~~~^~~~~~~~~~~~~~~~
third_party/protobuf/src/google/protobuf/util/message_differencer.cc:1322:23: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector<std::pair<int, const google::protobuf::UnknownField*> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
1322 | } else if (index1 == fields1.size() ||
| ~~~~~~~^~~~~~~~~~~~~~~~~
third_party/protobuf/src/google/protobuf/util/internal/type_info_test_helper.cc: In member function ‘void google::protobuf::util::converter::testing::TypeInfoTestHelper::ResetTypeInfo(const std::vector<const google::protobuf::Descriptor*>&)’:
third_party/protobuf/src/google/protobuf/util/internal/type_info_test_helper.cc:59:25: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector<const google::protobuf::Descriptor*>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
59 | for (int i = 1; i < descriptors.size(); ++i) {
| ~~^~~~~~~~~~~~~~~~~~~~
third_party/protobuf/src/google/protobuf/util/message_differencer.cc: In member function ‘virtual void google::protobuf::util::MessageDifferencer::StreamReporter::PrintPath(const std::vector<google::protobuf::util::MessageDifferencer::SpecificField>&, bool)’:
third_party/protobuf/src/google/protobuf/util/message_differencer.cc:1764:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector<google::protobuf::util::MessageDifferencer::SpecificField>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
1764 | for (int i = 0; i < field_path.size(); ++i) {
| ~~^~~~~~~~~~~~~~~~~~~
third_party/protobuf/src/google/protobuf/wire_format.cc: In static member function ‘static size_t google::protobuf::internal::WireFormat::ByteSize(const google::protobuf::Message&)’:
third_party/protobuf/src/google/protobuf/wire_format.cc:1465:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector<const google::protobuf::FieldDescriptor*>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
1465 | for (int i = 0; i < fields.size(); i++) {
| ~~^~~~~~~~~~~~~~~
third_party/protobuf/src/google/protobuf/wire_format.cc: In static member function ‘static size_t google::protobuf::internal::WireFormat::FieldDataOnlyByteSize(const google::protobuf::FieldDescriptor*, const google::protobuf::Message&)’:
third_party/protobuf/src/google/protobuf/wire_format.cc:1648:25: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare]
1648 | for (int j = 0; j < count; j++) { \
| ~~^~~~~~~
third_party/protobuf/src/google/protobuf/wire_format.cc:1664:5: note: in expansion of macro ‘HANDLE_TYPE’
1664 | HANDLE_TYPE(INT32, Int32, Int32)
| ^~~~~~~~~~~
third_party/protobuf/src/google/protobuf/wire_format.cc:1648:25: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare]
1648 | for (int j = 0; j < count; j++) { \
| ~~^~~~~~~
third_party/protobuf/src/google/protobuf/wire_format.cc:1665:5: note: in expansion of macro ‘HANDLE_TYPE’
1665 | HANDLE_TYPE(INT64, Int64, Int64)
| ^~~~~~~~~~~
third_party/protobuf/src/google/protobuf/wire_format.cc:1648:25: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare]
1648 | for (int j = 0; j < count; j++) { \
| ~~^~~~~~~
third_party/protobuf/src/google/protobuf/wire_format.cc:1666:5: note: in expansion of macro ‘HANDLE_TYPE’
1666 | HANDLE_TYPE(SINT32, SInt32, Int32)
| ^~~~~~~~~~~
third_party/protobuf/src/google/protobuf/wire_format.cc:1648:25: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare]
1648 | for (int j = 0; j < count; j++) { \
| ~~^~~~~~~
third_party/protobuf/src/google/protobuf/wire_format.cc:1667:5: note: in expansion of macro ‘HANDLE_TYPE’
1667 | HANDLE_TYPE(SINT64, SInt64, Int64)
| ^~~~~~~~~~~
third_party/protobuf/src/google/protobuf/wire_format.cc:1648:25: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare]
1648 | for (int j = 0; j < count; j++) { \
| ~~^~~~~~~
third_party/protobuf/src/google/protobuf/wire_format.cc:1668:5: note: in expansion of macro ‘HANDLE_TYPE’
1668 | HANDLE_TYPE(UINT32, UInt32, UInt32)
| ^~~~~~~~~~~
third_party/protobuf/src/google/protobuf/wire_format.cc:1648:25: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare]
1648 | for (int j = 0; j < count; j++) { \
| ~~^~~~~~~
third_party/protobuf/src/google/protobuf/wire_format.cc:1669:5: note: in expansion of macro ‘HANDLE_TYPE’
1669 | HANDLE_TYPE(UINT64, UInt64, UInt64)
| ^~~~~~~~~~~
third_party/protobuf/src/google/protobuf/wire_format.cc:1648:25: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare]
1648 | for (int j = 0; j < count; j++) { \
| ~~^~~~~~~
third_party/protobuf/src/google/protobuf/wire_format.cc:1681:5: note: in expansion of macro ‘HANDLE_TYPE’
1681 | HANDLE_TYPE(GROUP, Group, Message)
| ^~~~~~~~~~~
third_party/protobuf/src/google/protobuf/wire_format.cc:1648:25: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare]
1648 | for (int j = 0; j < count; j++) { \
| ~~^~~~~~~
third_party/protobuf/src/google/protobuf/wire_format.cc:1682:5: note: in expansion of macro ‘HANDLE_TYPE’
1682 | HANDLE_TYPE(MESSAGE, Message, Message)
| ^~~~~~~~~~~
third_party/protobuf/src/google/protobuf/wire_format.cc:1688:27: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare]
1688 | for (int j = 0; j < count; j++) {
| ~~^~~~~~~
third_party/protobuf/src/google/protobuf/wire_format.cc:1703:25: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare]
1703 | for (int j = 0; j < count; j++) {
| ~~^~~~~~~
x86_64-linux-gnu-gcc -pthread -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O2 -Wall -g -fstack-protector-strong -Wformat -Werror=format-security -g -fwrapv -O2 -fPIC -DHAVE_PTHREAD=1 -I. -Igrpc_root -Igrpc_root/include -Ithird_party/protobuf/src -I/usr/include/python3.10 -c third_party/protobuf/src/google/protobuf/util/internal/utility.cc -o build/temp.linux-x86_64-cpython-310/third_party/protobuf/src/google/protobuf/util/internal/utility.o -std=c++11 -fno-wrapv -frtti
x86_64-linux-gnu-gcc -pthread -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O2 -Wall -g -fstack-protector-strong -Wformat -Werror=format-security -g -fwrapv -O2 -fPIC -DHAVE_PTHREAD=1 -I. -Igrpc_root -Igrpc_root/include -Ithird_party/protobuf/src -I/usr/include/python3.10 -c third_party/protobuf/src/google/protobuf/util/internal/default_value_objectwriter.cc -o build/temp.linux-x86_64-cpython-310/third_party/protobuf/src/google/protobuf/util/internal/default_value_objectwriter.o -std=c++11 -fno-wrapv -frtti
x86_64-linux-gnu-gcc -pthread -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O2 -Wall -g -fstack-protector-strong -Wformat -Werror=format-security -g -fwrapv -O2 -fPIC -DHAVE_PTHREAD=1 -I. -Igrpc_root -Igrpc_root/include -Ithird_party/protobuf/src -I/usr/include/python3.10 -c third_party/protobuf/src/google/protobuf/util/internal/protostream_objectwriter.cc -o build/temp.linux-x86_64-cpython-310/third_party/protobuf/src/google/protobuf/util/internal/protostream_objectwriter.o -std=c++11 -fno-wrapv -frtti
third_party/protobuf/src/google/protobuf/util/internal/utility.cc: In function ‘std::string google::protobuf::util::converter::ToCamelCase(google::protobuf::StringPiece)’:
third_party/protobuf/src/google/protobuf/util/internal/utility.cc:261:24: warning: comparison of integer expressions of different signedness: ‘size_t’ {aka ‘long unsigned int’} and ‘google::protobuf::stringpiece_ssize_type’ {aka ‘long int’} [-Wsign-compare]
261 | for (size_t i = 0; i < input.size(); ++i, was_cap = is_cap) {
| ~~^~~~~~~~~~~~~~
third_party/protobuf/src/google/protobuf/util/internal/utility.cc:274:19: warning: comparison of integer expressions of different signedness: ‘size_t’ {aka ‘long unsigned int’} and ‘google::protobuf::stringpiece_ssize_type’ {aka ‘long int’} [-Wsign-compare]
274 | (i + 1 < input.size() && ascii_islower(input[i + 1])))) {
| ~~~~~~^~~~~~~~~~~~~~
third_party/protobuf/src/google/protobuf/util/internal/utility.cc: In function ‘std::string google::protobuf::util::converter::ToSnakeCase(google::protobuf::StringPiece)’:
third_party/protobuf/src/google/protobuf/util/internal/utility.cc:303:24: warning: comparison of integer expressions of different signedness: ‘size_t’ {aka ‘long unsigned int’} and ‘google::protobuf::stringpiece_ssize_type’ {aka ‘long int’} [-Wsign-compare]
303 | for (size_t i = 0; i < input.size(); ++i) {
| ~~^~~~~~~~~~~~~~
third_party/protobuf/src/google/protobuf/util/internal/utility.cc:316:19: warning: comparison of integer expressions of different signedness: ‘size_t’ {aka ‘long unsigned int’} and ‘google::protobuf::stringpiece_ssize_type’ {aka ‘long int’} [-Wsign-compare]
316 | (i + 1 < input.size() && // case 3 out
| ~~~~~~^~~~~~~~~~~~~~
third_party/protobuf/src/google/protobuf/util/internal/utility.cc: In function ‘void google::protobuf::util::converter::InitWellKnownTypes()’:
third_party/protobuf/src/google/protobuf/util/internal/utility.cc:347:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘long unsigned int’ [-Wsign-compare]
347 | for (int i = 0; i < GOOGLE_ARRAYSIZE(well_known_types_name_array_); ++i) {
x86_64-linux-gnu-gcc -pthread -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O2 -Wall -g -fstack-protector-strong -Wformat -Werror=format-security -g -fwrapv -O2 -fPIC -DHAVE_PTHREAD=1 -I. -Igrpc_root -Igrpc_root/include -Ithird_party/protobuf/src -I/usr/include/python3.10 -c third_party/protobuf/src/google/protobuf/timestamp.pb.cc -o build/temp.linux-x86_64-cpython-310/third_party/protobuf/src/google/protobuf/timestamp.pb.o -std=c++11 -fno-wrapv -frtti
In file included from third_party/protobuf/src/google/protobuf/util/internal/default_value_objectwriter.cc:31:
third_party/protobuf/src/google/protobuf/util/internal/default_value_objectwriter.h: In destructor ‘virtual google::protobuf::util::converter::DefaultValueObjectWriter::Node::~Node()’:
third_party/protobuf/src/google/protobuf/util/internal/default_value_objectwriter.h:156:25: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector<google::protobuf::util::converter::DefaultValueObjectWriter::Node*>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
156 | for (int i = 0; i < children_.size(); ++i) {
| ~~^~~~~~~~~~~~~~~~~~
third_party/protobuf/src/google/protobuf/util/internal/default_value_objectwriter.cc: In member function ‘google::protobuf::util::converter::DefaultValueObjectWriter::Node* google::protobuf::util::converter::DefaultValueObjectWriter::Node::FindChild(google::protobuf::StringPiece)’:
third_party/protobuf/src/google/protobuf/util/internal/default_value_objectwriter.cc:223:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector<google::protobuf::util::converter::DefaultValueObjectWriter::Node*>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
223 | for (int i = 0; i < children_.size(); ++i) {
| ~~^~~~~~~~~~~~~~~~~~
third_party/protobuf/src/google/protobuf/util/internal/default_value_objectwriter.cc: In member function ‘void google::protobuf::util::converter::DefaultValueObjectWriter::Node::WriteChildren(google::protobuf::util::converter::ObjectWriter*)’:
third_party/protobuf/src/google/protobuf/util/internal/default_value_objectwriter.cc:268:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector<google::protobuf::util::converter::DefaultValueObjectWriter::Node*>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
268 | for (int i = 0; i < children_.size(); ++i) {
| ~~^~~~~~~~~~~~~~~~~~
third_party/protobuf/src/google/protobuf/util/internal/default_value_objectwriter.cc: In member function ‘virtual void google::protobuf::util::converter::DefaultValueObjectWriter::Node::PopulateChildren(const google::protobuf::util::converter::TypeInfo*)’:
third_party/protobuf/src/google/protobuf/util/internal/default_value_objectwriter.cc:317:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector<google::protobuf::util::converter::DefaultValueObjectWriter::Node*>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
317 | for (int i = 0; i < children_.size(); ++i) {
| ~~^~~~~~~~~~~~~~~~~~
third_party/protobuf/src/google/protobuf/util/internal/default_value_objectwriter.cc:394:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector<google::protobuf::util::converter::DefaultValueObjectWriter::Node*>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
394 | for (int i = 0; i < children_.size(); ++i) {
| ~~^~~~~~~~~~~~~~~~~~
third_party/protobuf/src/google/protobuf/util/internal/protostream_objectwriter.cc: In function ‘google::protobuf::util::Status google::protobuf::util::converter::{anonymous}::GetNanosFromStringPiece(google::protobuf::StringPiece, const char*, const char*, google::protobuf::int32*)’:
third_party/protobuf/src/google/protobuf/util/internal/protostream_objectwriter.cc:150:47: warning: comparison of integer expressions of different signedness: ‘google::protobuf::stringpiece_ssize_type’ {aka ‘long int’} and ‘const size_type’ {aka ‘const long unsigned int’} [-Wsign-compare]
150 | if (s_nanos.find_first_not_of("0123456789") != StringPiece::npos) {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
third_party/protobuf/src/google/protobuf/util/internal/protostream_objectwriter.cc: In member function ‘void google::protobuf::util::converter::ProtoStreamObjectWriter::AnyWriter::StartAny(const google::protobuf::util::converter::DataPiece&)’:
third_party/protobuf/src/google/protobuf/util/internal/protostream_objectwriter.cc:379:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector<google::protobuf::util::converter::ProtoStreamObjectWriter::AnyWriter::Event>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
379 | for (int i = 0; i < uninterpreted_events_.size(); ++i) {
| ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
x86_64-linux-gnu-gcc -pthread -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O2 -Wall -g -fstack-protector-strong -Wformat -Werror=format-security -g -fwrapv -O2 -fPIC -DHAVE_PTHREAD=1 -I. -Igrpc_root -Igrpc_root/include -Ithird_party/protobuf/src -I/usr/include/python3.10 -c third_party/protobuf/src/google/protobuf/type.pb.cc -o build/temp.linux-x86_64-cpython-310/third_party/protobuf/src/google/protobuf/type.pb.o -std=c++11 -fno-wrapv -frtti
x86_64-linux-gnu-gcc -pthread -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O2 -Wall -g -fstack-protector-strong -Wformat -Werror=format-security -g -fwrapv -O2 -fPIC -DHAVE_PTHREAD=1 -I. -Igrpc_root -Igrpc_root/include -Ithird_party/protobuf/src -I/usr/include/python3.10 -c third_party/protobuf/src/google/protobuf/wire_format_lite.cc -o build/temp.linux-x86_64-cpython-310/third_party/protobuf/src/google/protobuf/wire_format_lite.o -std=c++11 -fno-wrapv -frtti
x86_64-linux-gnu-gcc -pthread -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O2 -Wall -g -fstack-protector-strong -Wformat -Werror=format-security -g -fwrapv -O2 -fPIC -DHAVE_PTHREAD=1 -I. -Igrpc_root -Igrpc_root/include -Ithird_party/protobuf/src -I/usr/include/python3.10 -c third_party/protobuf/src/google/protobuf/util/time_util.cc -o build/temp.linux-x86_64-cpython-310/third_party/protobuf/src/google/protobuf/util/time_util.o -std=c++11 -fno-wrapv -frtti
x86_64-linux-gnu-gcc -pthread -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O2 -Wall -g -fstack-protector-strong -Wformat -Werror=format-security -g -fwrapv -O2 -fPIC -DHAVE_PTHREAD=1 -I. -Igrpc_root -Igrpc_root/include -Ithird_party/protobuf/src -I/usr/include/python3.10 -c third_party/protobuf/src/google/protobuf/descriptor.pb.cc -o build/temp.linux-x86_64-cpython-310/third_party/protobuf/src/google/protobuf/descriptor.pb.o -std=c++11 -fno-wrapv -frtti
error: command '/usr/bin/x86_64-linux-gnu-gcc' failed with exit code 1
[end of output]
note: This error originates from a subprocess, and is likely not a problem with pip.
ERROR: Failed building wheel for grpcio-tools
Failed to build grpcio grpcio-tools
ERROR: Could not build wheels for grpcio, grpcio-tools, which is required to install pyproject.toml-based projects
same problem