Как вручную добавить библиотеку в проект visual studio 2017? - PullRequest
0 голосов
/ 10 сентября 2018

Приношу свои извинения за этот очень простой вопрос, который наверняка задавался и был дан ответ ранее, а также за мою очень устаревшую терминологию. Я искал ответ, но не смог найти ничего полезного. Я использую последнее обновление VS 2017 Community и пытаюсь вручную добавить то, что раньше называло «библиотекой функций», к проекту, который находится под «решением».

Проект представляет собой просто консольное приложение C ++ или C #. У меня есть файл .h (заголовок), файл .lib (статическая библиотека) и файл .dll (динамическая библиотека). Я намерен сделать "вызовы функций" для этой библиотеки. Я знаю, что мне нужно иметь мою dll в папке отладки, где находится исполняемый файл, но я не уверен, как «добавить зависимости» в VS 2017. Я знаю, как управлять и устанавливать пакеты NuGet, но эти файлы не это удобный пакет NuGet.

Я надеюсь получить совет о том, как сделать это правильно (VS 2017).

1 Ответ

0 голосов
/ 10 сентября 2018

В такой ситуации я создаю папку, я использую C:\Etc\SDKs\<name_of_library>, а затем в этой папке создаю подпапку include и подпапку lib. Обратите внимание, что выбор папки верхнего уровня совершенно произвольный, поместите его туда, где он наиболее удобен для вас.

В разделе C/C++ свойств проекта на вкладке General или в соответствующем разделе для проектов C # есть запись для Additional include directories. Добавьте туда путь к недавно созданной папке include. Это позволит вам включить заголовочный файл и заставить его работать правильно.

В разделе Linker свойств проекта, также на вкладке General, есть соответствующая запись для Additional library directories. Добавьте туда путь к вашей папке lib. На следующей вкладке вниз: Input есть запись для Additional Dependencies. Добавьте туда фактическое имя файла библиотеки.

Эти шаги должны позволить вашему проекту быть построенным с использованием имеющихся у вас файлов .h, .lib и .dll.

- Изменить адрес комментариев -

Файл .lib помещается в папку ...\lib, а файл .h в ...\include, это правильно. Тем не менее, у вас было правильное местоположение .dll в исходном вопросе. Это должно быть где-то в пути поиска, который найдет исполняемый файл, поэтому самое простое место - это та же папка, что и исполняемый файл.

General tab - плохой выбор слов с моей стороны. General раздел мог бы быть лучше здесь. При просмотре свойств проекта самая левая панель представляет собой древовидное представление различных разделов свойств. Когда все закрыто, кроме самого верхнего элемента, вы увидите

Configuration Properties
    General
    Debugging
    VC Directories
  > C/C++
  > Linker
    ...

Если затем дважды щелкнуть C/C++, он откроется и покажет разделы, специфичные для компилятора C / C ++:

Configuration Properties
    General
    Debugging
    VC Directories
  V C/C++
      General     <<<<<
      Optimization
      Preprocessor
      ...
  > Linker
    ...

Если вы нажмете на слово `General, которое я выделил, то вы попадете в раздел / вкладку General, о котором я говорил.

Аналогично, двойной щелчок по слову Linker откроет этот раздел, и под ним вы найдете разделы Linker General и Input.

Дайте мне знать, если это все еще не ясно, и я постараюсь уточнить.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...