У меня есть небольшой проект для создания курса в моем университете, который требует использования библиотек Crypto ++. Требование заключается в том, что мы не включаем весь исходный код / двоичные файлы Crypto ++, а связываем его из внешнего каталога. (Например, C: \ cryptopp). Это потому, что рецензент свяжет свой собственный каталог с оценками моего кода.
Теперь я действительно плохо умею создавать Makefile и не совсем понимаю их содержание.
Я использую MinGW на Windows 7.
Поэтому мой главный вопрос: что мне нужно написать в Makefile, чтобы использовать Crypto ++ в моем проекте из внешней папки?
Предположим, у вас есть следующий make-файл:
unit.exe: unit.o
g++ unit.o -o unit.exe
unit.o: unit.cc unit.h
g++ -c unit.cc -o unit.o
Чтобы изменить его для использования внешней библиотеки, вы должны использовать GCC -я а также -L опции:
unit.exe: unit.o
g++ unit.o -o unit.exe -L /c/cryptopp -l ws2_32 -l cryptopp
unit.o: unit.cc unit.h
g++ -I /c/cryptopp -c unit.cc -o unit.o
Часто make-файл содержит переменную, которая передается компилятору, и переменная, которая передается компоновщику, например CFLAGS и LDFLAGS. Если это так, то может быть проще добавить опции «-I» и «L» в переменные компилятора и компоновщика.
Смотрите также Вот для способа составить CryptoPP.
Других решений пока нет …