В качестве общего ответа на этот вопрос, чтобы заставить любой SDK работать, вам нужно сделать три вещи:
#include
соответствующие заголовки в вашем исходном коде, чтобы компилятор мог проверить, что вы использовали правильные функции, а компоновщик знал, на какие символы вы ссылаетесь.
- Сообщите компилятору, где находятся ваши заголовочные файлы. Вы можете сделать это с помощью gcc, используя
gcc -I/path/to/header/dir
.
- Сообщите компоновщику, где находятся библиотеки, которые должны быть скомпилированы, и включите их. Опять же, используя gcc, вы делаете это с помощью
gcc -L/path/to/library/dir
и указываете gcc (ну, ld) связать конкретную библиотеку с помощью gcc -lnamewithoutlibprefix
(нижний регистр l).
В качестве примера для библиотеки, которую я часто использую, MPIR для дерева /opt я мог бы скомпилировать так:
gcc -I/opt/include -L/opt/lib -lmpir myprog.c -o myprog
Это всего лишь пример, и он очень специфичен для Linux. По правде говоря, MPIR установлен в /usr, и мне этого делать не нужно, я просто ковыряюсь здесь в качестве примера.
Для Windows см. cl /I и параметры LINK.EXE.
Конечно, вы можете автоматизировать этот процесс в различных средах разработки. Visual Studio, например, сгенерирует для вас правильные командные строки, если вы заполните правильные диалоговые окна. Поэтому я верю, что Eclipse сможет это сделать, и я знаю, что Dev/C++ тоже сможет.
person
Community
schedule
21.03.2010