Форум программистов, компьютерный форум CyberForum.ru

Ошибка с библиотекой fltk (Ссылка на неразрешенный внешний символ) - C++

Восстановить пароль Регистрация
 
 
Рейтинг: Рейтинг темы: голосов - 10, средняя оценка - 4.90
viktorius
2 / 2 / 2
Регистрация: 24.02.2013
Сообщений: 105
04.03.2014, 17:03     Ошибка с библиотекой fltk (Ссылка на неразрешенный внешний символ) #1
Изучаю программирование с графикой. У меня проблема выдает следующее сообщения ошибок компиляции

Код
1>main.obj : error LNK2019: ссылка на неразрешенный внешний символ "public: static int __cdecl Fl::run(void)" (?run@Fl@@SAHXZ) в функции _main
1>main.obj : error LNK2019: ссылка на неразрешенный внешний символ "public: void __thiscall Fl_Window::show(int,char * *)" (?show@Fl_Window@@QAEXHPAPAD@Z) в функции _main
1>main.obj : error LNK2019: ссылка на неразрешенный внешний символ "public: void __thiscall Fl_Group::end(void)" (?end@Fl_Group@@QAEXXZ) в функции _main
1>main.obj : error LNK2019: ссылка на неразрешенный внешний символ "enum Fl_Labeltype __cdecl fl_define_FL_SHADOW_LABEL(void)" (?fl_define_FL_SHADOW_LABEL@@YA?AW4Fl_Labeltype@@XZ) в функции _main
1>main.obj : error LNK2019: ссылка на неразрешенный внешний символ "public: __thiscall Fl_Box::Fl_Box(int,int,int,int,char const *)" (??0Fl_Box@@QAE@HHHHPBD@Z) в функции _main
1>main.obj : error LNK2019: ссылка на неразрешенный внешний символ "public: __thiscall Fl_Window::Fl_Window(int,int,char const *)" (??0Fl_Window@@QAE@HHPBD@Z) в функции _main
1>C:\Программирование\Си++ практик\Form 1\Debug\Form 1.exe : fatal error LNK1120: 6 неразрешенных внешних элементов
вот код программы который должен компилироваться
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <Fl.H>
#include <Fl_Window.H>
#include <Fl_Box.H>
#include <iostream>
 
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();
}
предварительно в параметрах VS указал расположение h и lib файлов библиотеки. У меня VS 2008 и fltk 1.3.2

Подскажите в чем проблема?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.03.2014, 17:03     Ошибка с библиотекой fltk (Ссылка на неразрешенный внешний символ)
Посмотрите здесь:

C++ Ошибка - ссылка на неразрешенный внешний символ
Ошибка 1 error LNK2019: ссылка на неразрешенный внешний символ C++
C++ Ошибка линковки: ссылка на неразрешенный внешний символ
Ошибка error LNK2019: ссылка на неразрешенный внешний символ C++
Ошибка линковщика LNK2019: ссылка на неразрешенный внешний символ C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
THE--MASTER
Заблокирован
04.03.2014, 17:06     Ошибка с библиотекой fltk (Ссылка на неразрешенный внешний символ) #2
Цитата Сообщение от viktorius Посмотреть сообщение
предварительно в параметрах VS указал расположение h и lib файлов библиотеки. У меня VS 2008 и fltk 1.3.2
Подскажите в чем проблема?
ошибка в том, что помимо того, что нужно указать где LIB файлы, их ещё надо подключить к проекту, либо добавив в сам проект необходимые файлы, либо использовать директиву:
C++
1
#pragma comment (lib,"fltk.lib")
viktorius
2 / 2 / 2
Регистрация: 24.02.2013
Сообщений: 105
04.03.2014, 17:35  [ТС]     Ошибка с библиотекой fltk (Ссылка на неразрешенный внешний символ) #3
указал файл вот так
C++
1
#pragma comment (lib,"README.lib")
но опять тоже самое.
и еще у меня вопрос может сам fltk нужно компилировать? я просто разархивировал архив.
THE--MASTER
Заблокирован
04.03.2014, 18:09     Ошибка с библиотекой fltk (Ссылка на неразрешенный внешний символ) #4
Цитата Сообщение от viktorius Посмотреть сообщение
#pragma comment (lib,"README.lib")
и что это за народное творчество ?
Тебе надо указать библиотеку, о местонахождение которой знает твой компилятор посредствам добавления путей в свойствах проекта и в которой находятся реализации вот этих функций:
Цитата Сообщение от viktorius Посмотреть сообщение
2
1>main.obj : error LNK2019: ссылка на неразрешенный внешний символ "public: static int __cdecl Fl::run(void)" (?run@Fl@@SAHXZ) в функции _main
1>main.obj : error LNK2019: ссылка на неразрешенный внешний символ "public: void __thiscall Fl_Window::show(int,char * *)" (?show@Fl_Window@@QAEXHPAPAD@Z) в функции _main
1>main.obj : error LNK2019: ссылка на неразрешенный внешний символ "public: void __thiscall Fl_Group::end(void)" (?end@Fl_Group@@QAEXXZ) в функции _main
1>main.obj : error LNK2019: ссылка на неразрешенный внешний символ "enum Fl_Labeltype __cdecl fl_define_FL_SHADOW_LABEL(void)" (?fl_define_FL_SHADOW_LABEL@@YA?AW4Fl_Labeltype@@XZ) в функции _main
1>main.obj : error LNK2019: ссылка на неразрешенный внешний символ "public: __thiscall Fl_Box::Fl_Box(int,int,int,int,char const *)" (??0Fl_Box@@QAE@HHHHPBD@Z) в функции _main
1>main.obj : error LNK2019: ссылка на неразрешенный внешний символ "public: __thiscall Fl_Window::Fl_Window(int,int,char const *)" (??0Fl_Window@@QAE@HHPBD@Z) в функции _main
1>C:\Программирование\Си++ практик\Form 1\Debug\Form 1.exe : fatal error LNK1120: 6 неразрешенных внешних элементов
А что за README.lib ? :-)))

Цитата Сообщение от viktorius Посмотреть сообщение
и еще у меня вопрос может сам fltk нужно компилировать? я просто разархивировал архив.
А что за библиотека это вообще? Что в архиве? Вполне возможно, что её надо компилировать, чтоб получить на выходе LIB файл, который тебе и надо указать в #pragma
viktorius
2 / 2 / 2
Регистрация: 24.02.2013
Сообщений: 105
04.03.2014, 18:42  [ТС]     Ошибка с библиотекой fltk (Ссылка на неразрешенный внешний символ) #5
это библиотека рекомендуемая в книге Страуструпа для изучения графического интерфейса, по сути я хочу научиться писать программы с графическим интерфейсом, я в этом новичек, может что то другое для начала посоветуете? Хотелось бы и с примерами и задачами для самостоятельного решения.

Добавлено через 2 минуты
в архиве много разных файлов, смысл их мне не понятен.
DrOffset
6423 / 3797 / 878
Регистрация: 30.01.2014
Сообщений: 6,585
04.03.2014, 19:42     Ошибка с библиотекой fltk (Ссылка на неразрешенный внешний символ) #6
viktorius, вот мануал
В архие должен быть файл sln для студии.
Потом получившийся lib нужно подключать к твоему проекту как советовали выше.
viktorius
2 / 2 / 2
Регистрация: 24.02.2013
Сообщений: 105
05.03.2014, 08:58  [ТС]     Ошибка с библиотекой fltk (Ссылка на неразрешенный внешний символ) #7
При компиляции fltk 1.3.0 на vs2008 только 3 успешно 76 с ошибками, в чем может быть проблема?
DrOffset
6423 / 3797 / 878
Регистрация: 30.01.2014
Сообщений: 6,585
05.03.2014, 09:27     Ошибка с библиотекой fltk (Ссылка на неразрешенный внешний символ) #8
viktorius, зависит от того что за ошибки. у меня студии 2008 нет, проверить не могу... можешь скинуть весь лог в файл и прикрепить к посту?
viktorius
2 / 2 / 2
Регистрация: 24.02.2013
Сообщений: 105
05.03.2014, 10:23  [ТС]     Ошибка с библиотекой fltk (Ссылка на неразрешенный внешний символ) #9
вот файл [cut]
THE--MASTER
Заблокирован
05.03.2014, 10:51     Ошибка с библиотекой fltk (Ссылка на неразрешенный внешний символ) #10
да давай уже весь проект сюда, со всеми библиотеками
viktorius
2 / 2 / 2
Регистрация: 24.02.2013
Сообщений: 105
05.03.2014, 10:58  [ТС]     Ошибка с библиотекой fltk (Ссылка на неразрешенный внешний символ) #11
проекта еще нет есть библиотека fltk которая не компилируется вот файл с ошибкой
Вложения
Тип файла: rar Новый текстовый документ.rar (5.7 Кб, 4 просмотров)
THE--MASTER
Заблокирован
05.03.2014, 11:27     Ошибка с библиотекой fltk (Ссылка на неразрешенный внешний символ) #12
ну тебе ж дохрена раз пишут, что какие то файлы не может найти:
9>c:\Программирование\Си++ практик\fltk-1.3.2\FL/Fl_Cairo.H(35) : fatal error C1083: Не удается открыть файл include: cairo-win32.h: No such file or directory
Найди эти файлы, если они у тебя лежат в этой папке, то добавь этот путь в пути проекта.
А лучше бросай это дело, что - то ерундой занимаешься.
Какая у тебя цель?
viktorius
2 / 2 / 2
Регистрация: 24.02.2013
Сообщений: 105
05.03.2014, 11:48  [ТС]     Ошибка с библиотекой fltk (Ссылка на неразрешенный внешний символ) #13
Общая цель продолжать изучать программирование С++, а конкретная научиться работать с графикой в среде windows (создавать формы, рисовать фигуры..., окна программ, кнопки интерфейса, работа с файлами, создать простенький проигрыватель, текстовый редактор..... и т.д.).
THE--MASTER
Заблокирован
05.03.2014, 11:54     Ошибка с библиотекой fltk (Ссылка на неразрешенный внешний символ) #14
Цитата Сообщение от viktorius Посмотреть сообщение
создавать формы, рисовать фигуры..., окна программ, кнопки интерфейса, работа с файлами, создать простенький проигрыватель, текстовый редактор..... и т.д.
Нуу.. А зачем же ты полез в какие - то дебри непонятных библиотек...
На старте не стоит использовать сторонние библиотеки... Пытаться как - то их изучить, тыж просто время в пустую потратишь... Делай всё сам. Лучшая книга по WinApi:
Создание эффективных Win32-приложений с учётом специфики 64-разрядной версии Windows
Советую, как освоишься в WinApi - изучай DirectX11 и на нём уже и делай графику....
А если же тебе достаточно простенькой не 3D графики и всяких окошечек, всё равно не советую использовать стандартный GDI из WinAPI, лучше сразу изучай GDI+
viktorius
2 / 2 / 2
Регистрация: 24.02.2013
Сообщений: 105
05.03.2014, 12:10  [ТС]     Ошибка с библиотекой fltk (Ссылка на неразрешенный внешний символ) #15
Да меня интересует 2d графика, а если конкретно для начала хочу научиться работать с окнами хотя бы потому оконное приложение выглядит намного лучше консольного.
Просто столько всяких технологий, некоторые возможно устарели и не используются. Как начинающему хочется как можно эффективнее использовать свое время, учту все советы и прочту книгу "Создание эффективных Win32-приложений с учётом специфики 64-разрядной версии Windows"
DrOffset
6423 / 3797 / 878
Регистрация: 30.01.2014
Сообщений: 6,585
05.03.2014, 13:38     Ошибка с библиотекой fltk (Ссылка на неразрешенный внешний символ) #16
THE--MASTER, Почему ж сразу ерундой? Человек учит язык по книге Страуструпа, там примеры на этой библиотеке. Ничего страшного, если он ее посмотрит. С WinAPI он еще успеет разобраться, если захочет.
THE--MASTER
Заблокирован
05.03.2014, 13:49     Ошибка с библиотекой fltk (Ссылка на неразрешенный внешний символ) #17
Цитата Сообщение от DrOffset Посмотреть сообщение
Почему ж сразу ерундой? Человек учит язык по книге Страуструпа, там примеры на этой библиотеке.
потому, что Страуструп - далеко не лучший автор учебников по С++, не смотря на авторство языка, он скорее как справочник подойдёт.... А если он пользуется ещё и какой - то левой библиотекой, которую надо ещё самому собирать - то это уж совсем не для новичка.
DrOffset
6423 / 3797 / 878
Регистрация: 30.01.2014
Сообщений: 6,585
05.03.2014, 13:59     Ошибка с библиотекой fltk (Ссылка на неразрешенный внешний символ) #18
Цитата Сообщение от THE--MASTER Посмотреть сообщение
потому, что Страуструп - далеко не лучший автор учебников по С++
Субъективно.
Цитата Сообщение от THE--MASTER Посмотреть сообщение
это уж совсем не для новичка.
WinAPI - тоже с полпинка не освоить. По крайней мере база должна быть, чтобы хотя бы понять что такое обратный вызов, эвент, очередь сообщений и т.п.
viktorius
2 / 2 / 2
Регистрация: 24.02.2013
Сообщений: 105
05.03.2014, 17:39  [ТС]     Ошибка с библиотекой fltk (Ссылка на неразрешенный внешний символ) #19
Цитата Сообщение от DrOffset Посмотреть сообщение
WinAPI - тоже с полпинка не освоить. По крайней мере база должна быть, чтобы хотя бы понять что такое обратный вызов, эвент, очередь сообщений и т.п.
А вы можете посоветовать литературу ?
У меня есть базовые знания (я прочитал «Как программировать на С++ Х. Дейтел»‚ «Самоучитель С++ А. Васильев»‚ «Объектно-ориентированное программирование в С++ Р. Лафоре» проделал задачи, разобрался что к чему), просто я не совсем представляю какие темы изучать дальше.

Добавлено через 4 минуты
Хочу освоить графику и научиться писать оконные программы, знаю что есть WinAPI MFC MDSN и что выбрать для начала? все сразу я все равно не освою.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
05.03.2014, 17:58     Ошибка с библиотекой fltk (Ссылка на неразрешенный внешний символ)
Еще ссылки по теме:

C++ Ошибка компоновщика: ссылка на неразрешенный внешний символ
Ошибка: ссылка на неразрешенный внешний символ C++
C++ Ошибка LNK2019: ссылка на неразрешенный внешний символ

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
DrOffset
6423 / 3797 / 878
Регистрация: 30.01.2014
Сообщений: 6,585
05.03.2014, 17:58     Ошибка с библиотекой fltk (Ссылка на неразрешенный внешний символ) #20
viktorius, ну после этих книг можно и win api изучать, в принципе. Хотя это конечно полезно и интересно, но нужно знать вот что:
1) одним лишь windows мир не ограничивается.
2) новые проекты на чистом win api писать вряд ли кто сейчас станет (я говорю о полноценных программных продуктах).

По поводу литературы, смотри какое направление тебе интереснее.
По общим моментам еще неплохо бы изучить классические алгоритмы, методы и принципы разработки ПО (архитектура), тестирование.
Вот я тут список составлял, может пригодится. Судя по тому, что ты прочел, тебе надо читать с 4го пункта и ниже.

Добавлено через 5 минут
Цитата Сообщение от viktorius Посмотреть сообщение
знаю что есть WinAPI
В принципе я тоже в свое время начинал с win api, но тогда особых альтернатив и не было. Сейчас куча всяких средств, поэтому не могу сказать, что совет начинать с win api так уж однозначен. MFC тоже уже устарел достаточно сильно.

Добавлено через 4 минуты
Я просто добавлю, чтобы меня не поняли превратно, что знать win api тому, кто пишет под windows нативные приложения в любом случае надо. Я говорил именно о построении графического интерфейса с использованием одних лишь возможностей win api.
Yandex
Объявления
05.03.2014, 17:58     Ошибка с библиотекой fltk (Ссылка на неразрешенный внешний символ)
Ответ Создать тему
Опции темы

Текущее время: 10:36. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru