Следуя онлайн-руководству, я заставил VS автоматически анализировать и генерировать файлы H/CPP. из файлов PROTO только с protoc.exe. Подсветка синтаксиса даже работает и дает мне приятные цвета в IDE. Ура!

Код: Выделить всё
"$(ProjectDir)../dependencies/protobuf/bin/protoc.exe" --proto_path=$(ProjectDir) --cpp_out=$(ProjectDir) %(FullPath)
Код: Выделить всё
#include "google/protobuf/port_undef.inc"
#include "google/protobuf/io/coded_stream.h"
#include "google/protobuf/arena.h"
#include "google/protobuf/arenastring.h"
#include "google/protobuf/generated_message_tctable_decl.h"
#include "google/protobuf/generated_message_util.h"
...
Исходные файлы Protobuf содержат заголовок, который, насколько я могу судить, нигде не найден. в выпуске protobuf. У меня его просто нет!
Код: Выделить всё
#include "absl/strings/string_view.h" // < !!!
Теперь я могу скомпилировать, но не могу ссылку, потому что мне не хватает protobuf.lib, который, как я думал, где-то будет частью релиза.... но это не так.
У меня не было намерения компилировать protobuf самостоятельно, я доверяю разработчикам и просто хотел использовать двоичный. Даже если бы я захотел создать его самостоятельно, шаги, которые я выполнил, кажутся слишком запутанными, и я не уверен, что мне следует делать.
Перед взломом помимо всего этого, еще одна вещь, чтобы заставить это работать. Я подумал, что мне лучше спросить здесь, чтобы убедиться, что я делаю это обычным, запланированным способом - Да, я прочитал README protobuf как а также их веб-сайт, который не руководство по установке и в любом случае перенаправляет на файл readme на github. У меня VCPKG не работал.
- Была ли эта отсутствующая зависимость нормальной и нужно ли было исправлять ее вручную я сам нашел его в Интернете, как я это сделал, или он должен был быть включен/найден где-то еще/часть чего-то еще, что я пропустил?
- Это обычный способ установки и использования Protobuf или это должен быть автоматизированный способ, который в основном подойдет для установки Windows VC++, а я усложнил себе жизнь больше, чем необходимо?
Подробнее здесь: https://stackoverflow.com/questions/772 ... on-windows