Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

Форум на CrossPlatform.RU _ Qt Общие вопросы _ Ошибки в библиотеке glaux.lib при построении

Автор: Natalia 30.5.2010, 16:34

Доброго времени суток!
У меня при построении возникают ошибки следующего вида:
C:/Qt/2010.02.1/MyProjects/Example/GLAUX.lib:-1: error: In function `tkInitWindowAW@8': D:\nt\private\wind:27: undefined reference to `_imp__GetStockObject@4'
Ошибок много, компоновщик ругается на GLAUX.lib. Я использую версию 1998г. На мои попытки использовать другие версии вылетает ошибка: GLAUX.lib: file not recognized: File format not recognized. Header лежит в папке C:\Qt\2010.02.1\mingw\include\GL. В файлах проекта прописан #include <gl/glaux.h>. В qmake файле glaux.lib подключен. Что я не так делаю?

Автор: Litkevich Yuriy 30.5.2010, 18:04

покажи свой pro-файл

Автор: DEADHUNT 30.5.2010, 20:02

Цитата(Natalia @ 30.5.2010, 17:34) *
Ошибок много, компоновщик ругается на GLAUX.lib.

linker ругается не на GLAUX.lib, а на то что ещё какой-то либы нехватает.

Автор: Natalia 31.5.2010, 12:30

Добрый день!
Вот мой pro файл:
# -------------------------------------------------
# Project created by QtCreator 2010-05-30T01:22:52
# -------------------------------------------------
QT += opengl
LIBS += glut32.lib \
glut.lib \
GLAUX.lib \
opengl32.lib \
glu32.lib
TARGET = Snake
TEMPLATE = app
SOURCES += main.cpp \
mainwindow.cpp
HEADERS += mainwindow.h \
../Apples.h \
../Snake.h \
../Field.h \
../GameManager.h \
../GameStatus.h \
../GameState.h \
../Constants.h
FORMS += mainwindow.ui
DEFINES -= UNICODE

Автор: Litkevich Yuriy 31.5.2010, 12:33

Natalia указанные библиотеки собраны Студией, а приложение собираешь с помощью MinGW?

Автор: Natalia 31.5.2010, 19:05

Цитата(Litkevich Yuriy @ 31.5.2010, 12:33) *
Natalia указанные библиотеки собраны Студией, а приложение собираешь с помощью MinGW?


Ну да, собираю в Qt Creator. А что Вы этим хотите сказать?

Автор: Litkevich Yuriy 31.5.2010, 19:27

нужно, в большенстве случаев, чтобы все части были собраны одним компилятором и сторонние библиотеки и целевое приложение их использующее.


П.С. Qt Creator не компилятор, а всего лишь морда лица

Автор: Natalia 31.5.2010, 19:52

Ок, значит мне нужно синхронизировать Qt и Visual Studio. У меня есть 2005 и 2008. Не подскажете, как лучше это сделать, или хотя бы где про это можно почитать? Спасибо.

Автор: Litkevich Yuriy 31.5.2010, 20:12

Цитата(Гость_Natalia_* @ 31.5.2010, 23:52) *
Ок, значит мне нужно синхронизировать Qt и Visual Studio
не знаю ,что под этим подразумевается.
Нужно сделать библиотеки (GLAUX.lib, ...) понятными для MinGW. Например пересобрав их с помощью MinGW.
Ещё вариант, воспользоваться инструментом reimp для преобразования lib-файлов в a-файлы. (он из https://sourceforge.net/projects/mingw/files/MinGW%20Utilities/mingw-utils/mingw-utils-0.4-1/mingw-utils-0.4-1-mingw32-bin.tar.lzma/download)
Выглядит процедура так:
reimp -d libname.lib
dlltool -k --input-def libname.def --dllname libname.dll --output-lib libname.a
Резервную копию и dll'ок и lib'ок стоит сделать, могут пригодится

П.С.
Библиотеки в pro-файле лучше всего указывать так:
LIBS += -lglut3 \
             -lglut \
...
т.е. чёрточка, маленькая эль, имя библиотеки без расширения. qmake определит сам какое расширение, это будет переносимо с платформы на платформу.

Автор: Natalia 31.5.2010, 22:11

Большое спасибо за помощь. Я скачала MinGw utils. Разархивировала в папку C:\MinGW\mingw32\bin. Запускаю в консоли reimp -d. Вылетает ошибка:
reimp: glaux.lib: invalid or corrupt import library. Так со всеми библиотеками, которые я пытаюсь преобразовать. Не подскажите, в чем дело?

Автор: Natalia 31.5.2010, 22:27

Разобралась. Надо было скачать другую версию mingw-util-0.3. Еще раз спасибо за помощь.

Автор: Danila_Bagrofff 11.7.2011, 16:45

Цитата(Natalia @ 31.5.2010, 23:11) *
Большое спасибо за помощь. Я скачала MinGw utils. Разархивировала в папку C:\MinGW\mingw32\bin. Запускаю в консоли reimp -d. Вылетает ошибка:
reimp: glaux.lib: invalid or corrupt import library. Так со всеми библиотеками, которые я пытаюсь преобразовать. Не подскажите, в чем дело?


используйте reimp из 0.3 версии utils.

Форум Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)