Russian Qt Forum
Ноябрь 22, 2024, 18:55 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: Помогите!!! Подключение FLTK к VS 6.0  (Прочитано 18332 раз)
Stajor
Гость
« : Июль 08, 2005, 10:56 »

Вобщем проблема такова - дали мне библиотеку FLTK, и озадачили подключить ее к VS 6.0... Сделал как написано в инструкции: "The first is to use VC++ project files under the "vusualc" directory. Just open (or duble-click) the "fltk.dsw" file to get the whole shedbang."... Сделал... И в итоге я ничего не получил. Пытался и подключать директории через Tools->Option, и что только ни делал, при попытки компиляции простого "Hello Word" ругается что не найдены хедеры, а при компиляции демо проекта, говорит что нужен fltkd.lib.
Как мне эту либу подцепить??? Помогите.

Пробовал также качнуть MinGW c www.mingw.org, но там скачка не доступна. В инете нашел, правда ни все, файлы для сборки, но тоже ничего не вышло, половина оказалась кривыми, один даже не распокавался :lol:

Подскажите, как мне выкрутиться из этой с итуации с наименьшими потерями.
Записан
Rainbow
Гость
« Ответ #1 : Июль 08, 2005, 11:51 »

Ругается на отсуствие хедеров: самый простой способ прописать путь к хедерам в системную переменную INCLUDE.

Нужен fltkd.lib: аналогично п.1 только переменная LIB

Возможно есть специфические настройки. Выход один - читать доки. Там все написано. Как говрится в одно анекдоте "учите матчасть товарищ курсант".
Записан
Stajor
Гость
« Ответ #2 : Июль 08, 2005, 12:05 »

С путями все делал как положено, по правилам как учили... Ругается как раз таки на то, что подобные хедеры не найдены.

А вот в документации на FLTK присутствует только один абзац по подключению либы "The first is to use VC++ project files under the "vusualc" directory. Just open (or duble-click) the "fltk.dsw" file to get the whole shedbang.", и это все, что описано в мануале по подключению, большего мне найти не удалось, даже на сайте разработчиков этой либы.
Записан
Rainbow
Гость
« Ответ #3 : Июль 11, 2005, 15:19 »

А такие файлы вообще существуют?
Записан
mks
Гость
« Ответ #4 : Август 14, 2005, 20:18 »

Здравствуйте!
У меня тоже возникли проблемы при подключении FLTK к VC 6, но
другого плана, может кто подскажет.
Версия FLTK 1.1.6
Как написано в доке открыл fltk.dsw, открылась куча демо проэктов.
Все они без проблем компилятся и запускаются.
Потом захотел написать свой, взял из доки Hello.cxx , создал новый
проэкт Win32 App, подключил этот файл туда, предварительно
прописав все пути к *.h; *.lib;*.cxx файлам. Компиляция проходит
нормально, но при линковке вылетает след. сообщение:
Код:

--------------------Configuration: FLTK_PROBE - Win32 Release--------------------
Linking...
hello.obj : error LNK2001: unresolved external symbol "public: virtual void __thiscall Fl_Widget::resize(int,int,int,int)" (?resize@Fl_Widget@@UAEXHHHH@Z)
hello.obj : error LNK2001: unresolved external symbol "public: virtual int __thiscall Fl_Box::handle(int)" (?handle@Fl_Box@@UAEHH@Z)
hello.obj : error LNK2001: unresolved external symbol "protected: virtual void __thiscall Fl_Box::draw(void)" (?draw@Fl_Box@@MAEXXZ)
hello.obj : error LNK2001: unresolved external symbol "public: static int __cdecl Fl::run(void)" (?run@Fl@@SAHXZ)
hello.obj : error LNK2001: unresolved external symbol "public: void __thiscall Fl_Window::show(int,char * *)" (?show@Fl_Window@@QAEXHPAPAD@Z)
hello.obj : error LNK2001: unresolved external symbol "public: void __thiscall Fl_Group::end(void)" (?end@Fl_Group@@QAEXXZ)
hello.obj : error LNK2001: unresolved external symbol "enum Fl_Labeltype  __cdecl fl_define_FL_SHADOW_LABEL(void)" (?fl_define_FL_SHADOW_LABEL@@YA?AW4Fl_Labeltype@@XZ)
hello.obj : error LNK2001: unresolved external symbol "protected: __thiscall Fl_Widget::Fl_Widget(int,int,int,int,char const *)" (??0Fl_Widget@@IAE@HHHHPBD@Z)
hello.obj : error LNK2001: unresolved external symbol "public: __thiscall Fl_Window::Fl_Window(int,int,char const *)" (??0Fl_Window@@QAE@HHPBD@Z)
hello.obj : error LNK2001: unresolved external symbol "public: virtual __thiscall Fl_Widget::~Fl_Widget(void)" (??1Fl_Widget@@UAE@XZ)
LIBC.lib(wincrt0.obj) : error LNK2001: unresolved external symbol _WinMain@16
Release/FLTK_PROBE.exe : fatal error LNK1120: 11 unresolved externals
Error executing link.exe.

FLTK_PROBE.exe - 12 error(s), 0 warning(s)

Ниже привожу текст Hello.cxx
Код:

#include <FL/Fl.H>
#include <FL/Fl_Window.H>
#include <FL/Fl_Box.H>

int main(int argc, char **argv) {
  Fl_Window *window = new Fl_Window(300,180);
  Fl_Box *box = new Fl_Box(20,40,260,100,"Hello, World!");
  box->box(FL_UP_BOX);
  box->labelsize(36);
  box->labelfont(FL_BOLD+FL_ITALIC);
  box->labeltype(FL_SHADOW_LABEL);
  window->end();
  window->show(argc, argv);
  return Fl::run();
}

Что делать ? Грустный
Заранее спасибо за любую помощ.
Записан
Rainbow
Гость
« Ответ #5 : Август 15, 2005, 17:30 »

А lib'ки кто должен подключать?
Записан
mks
Гость
« Ответ #6 : Август 20, 2005, 14:01 »

Цитировать
А lib'ки кто должен подключать?

Да это я забыл.  :oops:
Но проблема осталась.
Подключил в Project->setings FLTK.LIB, но все равно
вылетает сообщение:
Код:

--------------------Configuration: FLTK_PROBE - Win32 Release--------------------
Linking...
MSVCRT.lib(MSVCRT.dll) : error LNK2005: _free already defined in LIBC.lib(free.obj)
MSVCRT.lib(MSVCRT.dll) : error LNK2005: _tolower already defined in LIBC.lib(tolower.obj)
MSVCRT.lib(MSVCRT.dll) : error LNK2005: _realloc already defined in LIBC.lib(realloc.obj)
MSVCRT.lib(MSVCRT.dll) : error LNK2005: _malloc already defined in LIBC.lib(malloc.obj)
MSVCRT.lib(MSVCRT.dll) : error LNK2005: _exit already defined in LIBC.lib(crt0dat.obj)
MSVCRT.lib(MSVCRT.dll) : error LNK2005: _memmove already defined in LIBC.lib(memmove.obj)
LINK : warning LNK4098: defaultlib "MSVCRT" conflicts with use of other libs; use /NODEFAULTLIB:library
fltk.lib(Fl_x.obj) : error LNK2001: unresolved external symbol ___WSAFDIsSet@8
fltk.lib(Fl_x.obj) : error LNK2001: unresolved external symbol _select@20
fltk.lib(Fl_x.obj) : error LNK2001: unresolved external symbol __imp___TrackMouseEvent@4
Release/FLTK_PROBE.exe : fatal error LNK1120: 3 unresolved externals
Error executing link.exe.

FLTK_PROBE.exe - 10 error(s), 1 warning(s)

Получается FLTK конфликтует с другой библиотекой.
Что тут можно сделать ?

P.S.
Я в програмировании новичок, просьба не
бить ногами за глупые вопросы. Если не тяжело и
есть время хотелось бы узнать что это за defaultlib "MSVCRT" и
почему они конфликтуют ?
Записан
Rainbow
Гость
« Ответ #7 : Август 24, 2005, 16:40 »

Отключить.
Есть в настройках проекта такая фишка "Ingore standard library" или что то подобное.
Записан
mks
Гость
« Ответ #8 : Октябрь 11, 2005, 13:19 »

Цитировать
Отключить.
Есть в настройках проекта такая фишка "Ingore standard library" или что то подобное.

Есть такая опция IGNORE ALL DEFAULT LIBRARIES.
Включение этой опции приводит к еще большему кол-ву
ошибок линковщика.  Грустный
Еще предложения есть ?
Записан
Rainbow
Гость
« Ответ #9 : Октябрь 12, 2005, 15:41 »

Не то нашел. Можно отключить лишь ту которую укажеш.
А все не надо.
Записан
mks
Гость
« Ответ #10 : Октябрь 13, 2005, 12:52 »

Веселый  Я это сделал!!!
Нужно было дописать в Project Options: "/nodefaultlib:libc.lib"
Но после этого осталась одна ошибка:

unresolved external symbol __imp___TrackMouseEvent@4

Как ни странно лекарство от нее я нашел в документации к
другой библиотеке, а именно FOX-toolkit.  Улыбающийся
Еще раз всем большое спасибо.
P.S.
Нужно дополнительно подключить comctl32.lib
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.168 секунд. Запросов: 22.