Связывание библиотек (C ++) - PullRequest
1 голос
/ 14 сентября 2009

Использование MinGW через Eclipse для C / C ++ и попытка заставить GLUT (OpenGL Utility Toolkit) работать над этим, но я подозреваю, что это простая проблема.

Попытки построить результат в:

g ++ -LC: \ Documents and Settings \ C \ workspace \ GLUTtest \ Debug -LC: \ Tools \ MinGW \ include \ GL -LC: \ Tools \ MinGW \ include -oGLUTtest.exe main.o -lglut32.lib C: \ Tools \ MinGW \ bin .. \ lib \ gcc \ mingw32 \ 3.4.5 ........ \ mingw32 \ bin \ ld.exe: не удается найти -lglut32.lib

У меня есть glut32.lib в каталоге рабочего пространства, C: \ Documents and Settings \ C \ workspace \ GLUTtest. Вот параметры, которые дает eclipse:

-L "C: \ Documents and Settings \ C \ workspace \ GLUTtest" -L "C: \ Documents and Settings \ C \ workspace \ GLUTtest \ Debug" -L "C: \ Documents and Settings \ C \ workspace \ GLUTtest \ GL "-L" C: \ Tools \ MinGW \ include \ GL "-L" C: \ Tools \ MinGW \ include "

Есть идеи, почему она не берет библиотеку?

Ответы [ 3 ]

1 голос
/ 14 сентября 2009

Допустим, у вас есть библиотечный файл с именем libxxx.a, libxxx.so или xxx.lib. При связывании вы должны поставить параметр как -lxxx

И, во-вторых, иногда вам нужно указать путь к библиотеке с помощью (-L / path / to / lib / dir)

1 голос
/ 14 сентября 2009

Кажется, вы пытаетесь передать включаемые каталоги как каталоги ссылок. Найдите каталог, содержащий glut32.lib, и добавьте параметр link-directory (-L) в каталог, который вы найдете.

0 голосов
/ 14 сентября 2009

Вы передаете "C: \ Tools \ MinGW \ include \ GL -LC: \ Tools \ MinGW \ include" в качестве каталога ссылок (-L), который, по-видимому, является вашим путем включения. поэтому передайте ваш каталог include во включаемый путь, который появится с опцией -I, и просто проверьте, присутствует ли ваш путь ссылки в списке, указанном с опциями -L, если нет, то добавьте его в список, иначе он скажет неопределенные ссылки.

...