Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.54/76: Рейтинг темы: голосов - 76, средняя оценка - 4.54
0 / 0 / 0
Регистрация: 22.12.2012
Сообщений: 13
1

error LNK2019: ссылка на неразрешенный внешний символ

16.12.2013, 15:33. Показов 15267. Ответов 28
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Доброго времени суток. При написании курсового проекта в Microsoft Visual Studio 2010 возникла проблема. Насколько я понял, что-то не так с текстурами. Используются библиотеки ILU.lib ILUT.lib DevIL.lib. Вот фрагмент кода:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
 class ClassTexture
{
    public:
        
        ClassTexture()
        {
            ilInit();
            iluInit();
        }
        
        void LoadTexture(ILenum FileType, char * filename, TextureImage * texture)
        {
            ilLoad(FileType, (const wchar_t *)filename);
            
            texture -> width = ilGetInteger(IL_IMAGE_WIDTH);
            texture -> height = ilGetInteger(IL_IMAGE_HEIGHT);
            texture -> bpp = ilGetInteger(IL_IMAGE_BYTES_PER_PIXEL);
            
            texture -> imageData = ilGetData();
            
            ilEnable(IL_CONV_PAL);
            
            unsigned int type = ilGetInteger(IL_IMAGE_FORMAT);
            
            glGenTextures(1, &texture -> texID);
            glBindTexture(GL_TEXTURE_2D, texture -> texID);
            
            gluBuild2DMipmaps(GL_TEXTURE_2D, texture -> bpp, texture -> width,
            texture -> height, type, GL_UNSIGNED_BYTE, texture -> imageData);
            
            glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR_MIPMAP_NEAREST);
            glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR);
        }
        
} *Texture;
При компиляции возникают такие ошибки:
1>Kursach_1.2.obj : error LNK2019: ссылка на неразрешенный внешний символ __imp__iluInit@0 в функции "public: __thiscall ClassTexture::ClassTexture(void)" (??0ClassTexture@@QAE@XZ)
1>Kursach_1.2.obj : error LNK2019: ссылка на неразрешенный внешний символ __imp__ilInit@0 в функции "public: __thiscall ClassTexture::ClassTexture(void)" (??0ClassTexture@@QAE@XZ)
1>Kursach_1.2.obj : error LNK2019: ссылка на неразрешенный внешний символ __imp__ilEnable@4 в функции "public: void __thiscall ClassTexture::LoadTexture(unsigned int,char *,struct TextureImage *)" (?LoadTexture@ClassTexture@@QAEXIPADPAUTextureImage@@@Z)
1>Kursach_1.2.obj : error LNK2019: ссылка на неразрешенный внешний символ __imp__ilGetData@0 в функции "public: void __thiscall ClassTexture::LoadTexture(unsigned int,char *,struct TextureImage *)" (?LoadTexture@ClassTexture@@QAEXIPADPAUTextureImage@@@Z)
1>Kursach_1.2.obj : error LNK2019: ссылка на неразрешенный внешний символ __imp__ilGetInteger@4 в функции "public: void __thiscall ClassTexture::LoadTexture(unsigned int,char *,struct TextureImage *)" (?LoadTexture@ClassTexture@@QAEXIPADPAUTextureImage@@@Z)
1>Kursach_1.2.obj : error LNK2019: ссылка на неразрешенный внешний символ __imp__ilLoad@8 в функции "public: void __thiscall ClassTexture::LoadTexture(unsigned int,char *,struct TextureImage *)" (?LoadTexture@ClassTexture@@QAEXIPADPAUTextureImage@@@Z)
1>c:\users\documents\visual studio 2010\Projects\Kursach_1.2\Kursach_1.2.exe : fatal error LNK1120: 6 неразрешенных внешних элементов
1>


Подскажите, пожалуйста, как можно избавиться от этих ошибок.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
16.12.2013, 15:33
Ответы с готовыми решениями:

Error LNK2019: ссылка на неразрешенный внешний символ
Здравствуйте! Начал осваивать язык С++. В общем суть: Как выправить код(+руки)?Если не трудно,...

error LNK2019: ссылка на неразрешенный внешний символ
Всем привет. Вопрос легкий, но что-то я застопорился. Делал задачки с книги Джесса Либерти, и на...

Error LNK2019: ссылка на неразрешенный внешний символ
Всем доброго времени суток. Помогите пожалуйста разобраться с проблемой. Честно просматривал форму,...

Error LNK2019: ссылка на неразрешенный внешний символ
Здравствуйте, пишу небольшую консольную игру для саморазвития. Вроде бы не успел толком начать, но...

28
0 / 0 / 0
Регистрация: 22.12.2012
Сообщений: 13
17.12.2013, 16:33  [ТС] 21
Author24 — интернет-сервис помощи студентам
Папка проекта из Visual Studio:
Вложения
Тип файла: zip Mark_Kursach_1.2.zip (3.13 Мб, 5 просмотров)
0
5498 / 4893 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
17.12.2013, 16:59 22
Такие ошибки бывают и когда библиотека чем-нибудь не подходит. Ошибки по функциям какой-то одной библиотеки (из трёх)?
0
:)
Эксперт С++
4773 / 3267 / 497
Регистрация: 19.02.2013
Сообщений: 9,046
17.12.2013, 17:00 23
UrsusHorribilis, Вы уверены, что у Вас DevIL.lib, а не DevIL.dll ?
Какие библиотеки (и откуда) Вы устанавливали дополнительно для проекта?
0
0 / 0 / 0
Регистрация: 22.12.2012
Сообщений: 13
17.12.2013, 17:15  [ТС] 24
Цитата Сообщение от Tulosba Посмотреть сообщение
Вы уверены, что у Вас DevIL.lib, а не DevIL.dll ?
Да, уверен.

Цитата Сообщение от Tulosba Посмотреть сообщение
Какие библиотеки (и откуда) Вы устанавливали дополнительно для проекта?
Используются библиотеки ILU.lib ILUT.lib и DevIL.lib. Они были переданы мне вместе с исходниками.

Добавлено через 1 минуту
Цитата Сообщение от alsav22 Посмотреть сообщение
Такие ошибки бывают и когда библиотека чем-нибудь не подходит. Ошибки по функциям какой-то одной библиотеки (из трёх)?
Нет, ошибки по функциям из всех трёх библиотек.
0
:)
Эксперт С++
4773 / 3267 / 497
Регистрация: 19.02.2013
Сообщений: 9,046
17.12.2013, 17:16 25
Цитата Сообщение от UrsusHorribilis Посмотреть сообщение
Они были переданы мне вместе с исходниками.
А в архивах я их что-то не обнаружил.
1
5498 / 4893 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
17.12.2013, 17:42 26
Скачал библиотеку: DevIL-SDK-x86-1.7.8. Вот такой код у меня (10 студия, конфигурация проекта Win32, библиотеки через свойства проекта подключены) без ошибок компилируется:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
#include <iostream>
#include <Windows.h>
#include <ctime>
#include <cmath>
#include "il.h"
#include "ilu.h"
#include "ilut.h"
 
enum TexType {SPACECRAFT, ASTEROID, SIGHT};
 
typedef struct TextureImage
{
    GLubyte *imageData;
    GLuint bpp;
    GLuint width,height;
    GLuint texID;
    
} TextureImage;
 
class ClassTexture
{
    public:
        
        ClassTexture()
        {
            ilInit();
            iluInit();
        }
        
        void LoadTexture(ILenum FileType, char * filename, TextureImage * texture)
        {
            ilLoad(FileType, (const wchar_t *)filename);
            
            texture -> width = ilGetInteger(IL_IMAGE_WIDTH);
            texture -> height = ilGetInteger(IL_IMAGE_HEIGHT);
            texture -> bpp = ilGetInteger(IL_IMAGE_BYTES_PER_PIXEL);
            
            texture -> imageData = ilGetData();
            
            ilEnable(IL_CONV_PAL);
            
            unsigned int type = ilGetInteger(IL_IMAGE_FORMAT);
            
            glGenTextures(1, &texture -> texID);
            glBindTexture(GL_TEXTURE_2D, texture -> texID);
            
            gluBuild2DMipmaps(GL_TEXTURE_2D, texture -> bpp, texture -> width,
            texture -> height, type, GL_UNSIGNED_BYTE, texture -> imageData);
            
            glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR_MIPMAP_NEAREST);
            glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR);
        }
        
} *Texture;
 
 
int main()
{
    
 
}
Добавлено через 1 минуту
Разрядность библиотеки, у вас, с разрядностью проекта совпадает?

Добавлено через 11 минут
Ваш проект тоже скомпилировался.
0
5498 / 4893 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
17.12.2013, 18:10 27
Вот ваш проект (работающий) вместе с библиотеками (только заменил glaux.lib на glut32.lib).
Вложения
Тип файла: rar Mark_Kursach_1.2.part01.rar (4.77 Мб, 14 просмотров)
Тип файла: rar Mark_Kursach_1.2.part02.rar (4.77 Мб, 8 просмотров)
Тип файла: rar Mark_Kursach_1.2.part03.rar (2.66 Мб, 9 просмотров)
0
5498 / 4893 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
18.12.2013, 18:33 28
Цитата Сообщение от UrsusHorribilis
При запуске на моём компе, выявляются те же ошибки, однако на другом компе всё работают, но не отображаются текстуры.
Я в чудеса в программировании не верю. Среды у нас одинаковые. Проект пробовал в XP, там всё компилируется и запускается. Сейчас скачал выложенный архив и попробовал в 10-й студии (Express), в Win 7(х64). Тоже всё компилируется и запускается (скрин). Почему у вас могут быть те же ошибки, что и в первом посте, совершенно непонятно. Все нужные либы и dll находятся в папках проекта. Пути, в свойствах проекта, прописаны, относительно папки проекта. Почему и отчего не отображаются текстуры на другом компе - это уже другая тема, которая меня мало интересует.
Миниатюры
error LNK2019: ссылка на неразрешенный внешний символ  
1
0 / 0 / 0
Регистрация: 22.12.2012
Сообщений: 13
18.12.2013, 19:06  [ТС] 29
Ясно. Спасибо за помощь. Буду разбираться с текстурами.
0
18.12.2013, 19:06
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
18.12.2013, 19:06
Помогаю со студенческими работами здесь

error LNK2019: ссылка на неразрешенный внешний символ
есть исходник .cpp ---------------------------------------------------------------------...

Error LNK2019: ссылка на неразрешенный внешний символ
умелые люди помогите исправить ошибку, сегодня надо сдать класс, подправил и упростил код unrar'a...

Error LNK2019: ссылка на неразрешенный внешний символ
пишу программу типа клавиатурного тренажера,она еще не закончена,но уже возникла проблема ...

error LNK2019: ссылка на неразрешенный внешний символ
только-только начал изучать c++.написал программу. компиляция прошла успешно, а при отладке выдаёт...


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

Или воспользуйтесь поиском по форуму:
29
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru