Visual Studio C ++ 2009 менеджер пакетов nuget licurl "неразрешенный внешний" - PullRequest
0 голосов
/ 10 января 2020

Visual Studio C ++ 2009 поставляется с менеджером пакетов NuGet, который позволяет загружать libcurl (в качестве примера). После загрузки доступность libcurl наблюдается через Project >> Properties >> Referenced Packages.

enter image description here

Пользовательский проект C ++ затем компилируется с использованием в частности <curl/curl.h> в качестве заголовка. Однако «неразрешенный внешний» сохраняется во время соединения (примитивы libcurl не найдены). На данный момент это кажется «логичным» и понятным. Начиная с этого поста , необходимо указывать правильный файл libcurl.lib из проекта. Вот два производных действия: Project >> Properties >> Linker >> General >> Additional Library Directories -> сообщить проекту, где найти соответствующий файл libcurl.lib (например, версия x64 / debug, выбирающая из всего материала, загруженного NuGet).

enter image description here

Далее Project >> Properties >> Linker >> Input >> Additional Dependencies -> сообщить проекту имя файла, скажем libcurl.lib, где находятся отсутствующие примитивы.

enter image description here

Обратите внимание, что я не управляю зависимостями (libssh2, openssl и zlib) самого libcurl.lib (надеюсь, что NuGet что-то сделал для меня?).

проблема в том, что «неразрешенный внешний» все еще сохраняется во время компиляции? Я показал в постах StackOverflow, которые объясняют, как интегрировать libcurl в VS, но большинство методов - это raw процедур. Используя преимущества NuGet, процедура (описанная выше) должна быть максимально простой? Тем не менее, это не удается ...

...