#c #static-libraries #visual-studio-2010
#c #статические библиотеки #visual-studio-2010
Вопрос:
Это структура проекта:
main.c
libexample.lib
libexample.h
main.c:
#include "libexample.h"
int main(void){ return example(); }
example.h
int example(void);
example.lib содержит реализацию следующим образом int example(void){return 4;}
если я открою свойства проекта и перейду к вводу, я могу добавить зависимость, назвав файл библиотеки.
$(ProjectDir)libexample.lib
Есть ли способ добавить все файлы в каталог lib, не называя их?
Все, о чем я могу думать, это редактирование файла msbuild для поиска файлов * .lib и добавления их в список перед компиляцией.
Интересно, есть ли встроенный способ сделать это.
Ответ №1:
Используйте подстановочные знаки внутри вашего makefile, но я думаю, что это не очень хорошая практика.
$(ProjectDir)lib*.lib
Комментарии:
1. Это хорошая практика, но
*.lib
ее следует использовать, как предложил Йоханнес.2. Приятно — я не думал об использовании там подстановочных знаков. 🙂 Я глеб, которого я спросил перед редактированием buildscript. Забавно, как я почти ответил на это, задавая вопрос 🙂
3. Я не был уверен, потому что я не знаю buildscript systeme из vs, но я использовал его в makefiles, поэтому
4. На самом деле это не отвечало на вопрос о том, существует ли встроенный способ сделать это, поскольку OP уже предположил, что он может редактировать сценарий msbuild. Метод подстановочных знаков не работает в свойствах VS project.
5. Я только что протестировал его, он работает в VS2010-Express. Он встроен достаточно для моей цели. Если я «взломал» это свойство, я, возможно, в конечном итоге перегрузил сборку, ввел сгенерированный список и вызвал buildtask. Возможно, я плохо сформулировал свой вопрос, но ответ — это именно то, что я хотел.