, что я попробовал:
- Сначала я построил Abseil (в экземпляре (в экземпляре). />
- Я следовал инструкциям здесь https://github.com/abseil/abseil-cpp/bl ... /readme.md для установки Abseil. /> Сначала я выполнил шаг конфигурации Cmake со следующей командой:
$ cmake -S . -B ./build -DCMAKE_PREFIX_PATH=
projects/install/ -DCMAKE_INSTALL_PREFIX=/projects/install/ -DABSL_ENABLE_INSTALL=ON -DABSL_USE_EXTERNAL_GOOGLETEST=ON -DABSL_FIND_GOOGLETEST=ON (где - родительский путь, содержащий мою папку проектов, которую я выпускаю здесь) - Я построил Absiel со следующей командой:
cmake --build ./build --config Release - cmake -build ./build -target install
- Это успешно привело к тому, что библиотеки abseil были установлены в /projects/install
[*] Мой шаг конфигурации Cmake был выполнен следующим образом:
cmake -S . -B ./build -DCMAKE_INSTALL_PREFIX=projects/install -DCMAKE_CXX_STANDARD=17 -DCMAKE_PREFIX_PATH=projects/install/ -Dprotobuf_BUILD_TESTS=OFF -Dprotobuf_MSVC_STATIC_RUNTIME=OFF -Dprotobuf_BUILD_SHARED_LIBS=ON
Я также попробовал его без спецификаций для protobuf_msvc_static_runtime и protobuf_build_shared_libs Хотя в прошлом я успешно использовал эти спецификации с более ранними версиями. /> Естественно, я ожидал, что буферы протокола успешно создают libprotobuf.dll libprotobuf-lite.dll , libprotoc.dll и protoc.exe .
Что на самом деле приводило
massive number number>
LNK2019 и LNK2001 с участием неразрешенных внешних символов для библиотечных методов ABSL, из которых я предоставлю здесь очень небольшую выборку: < /p>
any_lite.obj : error LNK2019: unresolved external symbol "public: unsigned __int64 __cdecl absl::string_view::rfind(char,unsigned __int64)const " (?rfind@string_view@absl@@QEBA_KD_K@Z) referenced in function "bool __cdecl google::protobuf::internclass std::allocator > *,class std::basic_string *)" (?ParseAnyTypeUrl@internal@protobuf@google@@YA_NVstring_view@absl@@PEAV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D
descriptor.obj : error LNK2001: unresolved external symbol "public: unsigned __int64 __cdecl absl::string_view::rfind(char,unsigned __int64)const " (?rfind@string_view@absl@@QEBA_KD_K@Z) [C:\Users\tdennis\projects\protobuf\build\protoc-gen-upbdef
names.cc.obj : error LNK2001: unresolved external symbol "public: unsigned __int64 __cdecl absl::string_view::rfind(char,unsigned __int64)const "
Подробнее здесь: https://stackoverflow.com/questions/795 ... windows-10
Мобильная версия