Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.89/9: Рейтинг темы: голосов - 9, средняя оценка - 4.89
darwolf
0 / 0 / 0
Регистрация: 13.02.2018
Сообщений: 12
1

1>GLAUX.lib(tk.obj) : error LNK2019: ссылка на неразрешенный внешний символ _sscanf в функции _GetRegistrySysColors@8

15.02.2018, 23:38. Просмотров 1877. Ответов 14

не комприлируется код текустурирования, при попытке компиляции, вылезает такая ошибка:
1>GLAUX.lib(tk.obj) : error LNK2019: ссылка на неразрешенный внешний символ _sscanf в функции _GetRegistrySysColors@8
вот весь код
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
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
#include <GLUT/GLUT.H>
#include <stdlib.h>
#include <cmath>
#include <iostream>
#include <GLAUX/GLAUX.H>
#include <GL/GL.H>
#include <GLU/GLU.H>
 
 
//#pragma comment(lib,"GLAUX.LIB")
 
static int left = 0, right = 0, up = 0, down = 0;
 
#define PI 3.14159265  
 
void display(void) {
    glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
 
    GLUquadricObj *quadObj;
    quadObj = gluNewQuadric();
 
    gluQuadricTexture(quadObj, GL_TRUE);
    glColor3f(1, 0, 0);
    //gluSphere(quadObj, 1, 100, 10);
    glutSolidSphere(2, 30, 30);
 
    glPushMatrix();
    glRotatef((GLfloat)left, 0.0, 0.0, 1.0);
    glRotatef((GLfloat)right, 0.0, 0.0, 1.0);
    glRotatef((GLfloat)up, 0.0, 1.0, 0.0);
    glRotatef((GLfloat)down, 0.0, 1.0, .0);
    glColor3f(1.0, 0.5, 0.0);
    glutWireSphere(2.0, 30, 40);
 
    gluDeleteQuadric(quadObj);
 
    glPopMatrix();
 
 
    glutSwapBuffers();
}
 
void init(void) {
 
    glColor3f(1, 1, 1);
 
    unsigned int textures[3];
    AUX_RGBImageRec *texture1;
    texture1 = auxDIBImageLoadA("eath1.dib");
    glGenTextures(1, &textures[0]);
    glBindTexture(GL_TEXTURE_2D, textures[0]);
    texture1 = auxDIBImageLoadA("eath.dib");
    glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR);
        glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR);
    glTexImage2D(GL_TEXTURE_2D, 0, 3, texture1->sizeX, texture1->sizeY, 0, GL_RGB, GL_UNSIGNED_BYTE, texture1->data);
    glEnable(GL_TEXTURE_2D);
 
 
    glClearColor(0.0, 0.0, 0.0, 0.0);
    glShadeModel(GL_FLAT);
}
 
void reshape(int w, int h) {
    glMatrixMode(GL_PROJECTION);
    gluPerspective(10.0, w / (GLfloat)h, 3.0, 90.0);
    glMatrixMode(GL_MODELVIEW);
    gluLookAt(50.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0);
}
 
int ch=9;
 
//приближение, удаление, закрытие проекта
 
void processSpecialKeys(int button, int x, int y) {
    switch (button) {
    case GLUT_KEY_UP:
        if (ch > 0) {
            glTranslated(5, 0, 0);
            ch--;
 
        }
        glutPostRedisplay();
        break;
    case GLUT_KEY_DOWN:
        if (ch < 9) {
            glTranslated(-5, 0, 0);
            ch++;
        }
        glutPostRedisplay();
        break;
    case GLUT_KEY_END:
        exit(0);
        break;
    default:
        break;
    }
}
 
// кручение сферы
 
void pushbutton(unsigned char button, int x, int y) {
 
    switch (button) {
    case 'a':
        left = (left + 10) % 360;
        glutPostRedisplay();
        break;
    case'd':
        right = (right - 10) % 360;
        glutPostRedisplay();
        break;
    case 'w':
        up = (up + 10) % 360;
        glutPostRedisplay();
        break;
    case's':
        down = (down - 10) % 360;
        glutPostRedisplay();
        break;
    default:
        break;
    }
}
 
 
//обработка левой кнопки мыши  сюда код для вычисления широты и долготы
 
void mouseButton(int button, int state, int x, int y) {
    
    switch (button) {
    case GLUT_LEFT_BUTTON:
        if (state == GLUT_DOWN) {
                                         //вычисляющая функция
        }
        break;
    }
}
 
 
 
 
int main(int argc, char **argv) {
 
    setlocale(LC_ALL, "Russian");
    std::cout << sin(PI/2);
    glutInit(&argc, argv);
 
    glutInitDisplayMode(GLUT_DOUBLE | GLUT_DEPTH | GLUT_RGBA);
 
    glutInitWindowSize(800, 600);
    glutInitWindowPosition(10, 10);
    glutCreateWindow("Eath");
    init();
    glutDisplayFunc(display);
    glutReshapeFunc(reshape);
 
 
    glutKeyboardFunc(pushbutton);
    glutSpecialFunc(processSpecialKeys);
 
 
    //glutMouseFunc(mouseButton);              //вычисление долготы и широты
 
    glEnable(GL_DEPTH_TEST);
    glutMainLoop();
    return 0;
}
не компилится вот эта часть:
C++
1
2
3
4
5
6
7
8
9
10
unsigned int textures[3];
    AUX_RGBImageRec *texture1;
    texture1 = auxDIBImageLoadA("eath1.dib");
    glGenTextures(1, &textures[0]);
    glBindTexture(GL_TEXTURE_2D, textures[0]);
    texture1 = auxDIBImageLoadA("eath.dib");
    glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR);
    glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR);
    glTexImage2D(GL_TEXTURE_2D, 0, 3, texture1->sizeX, texture1->sizeY, 0, GL_RGB, GL_UNSIGNED_BYTE, texture1->data);
    glEnable(GL_TEXTURE_2D);
помогите пожалуйста

Добавлено через 2 минуты
0
Лучшие ответы (1)
QA
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.02.2018, 23:38
Ответы с готовыми решениями:

Error LNK2019: ссылка на неразрешенный внешний символ _main в функции ___tmainCRTStartup MSVCRTD.lib
Пожалуйста помогите найти ошибку. template&lt;class T&gt; class Stack { private: T* ss; int top;...

Error LNK2019: ссылка на неразрешенный внешний символ _URLDownloadToFileW@20 в функции _WinMain@16
Ошибка при добавлении этой строчки в проект URLDownloadToFile(0,...

Error LNK2019: ссылка на неразрешенный внешний символ _main в функции ___tmainCRTStartup
Error LNK2019: ссылка на неразрешенный внешний символ _main в функции ___tmainCRTStartup ...

Error LNK2019: ссылка на неразрешенный внешний символ _main в функции ___tmainCRTStartup
Компилятор выдает две ошибки 1)error LNK2019: ссылка на неразрешенный внешний символ _main в...

Ошибка линковщика(error LNK2019: ссылка на неразрешенный внешний символ _main в функции ___tmainCRTStartup)
#include &lt;iostream&gt; using namespace std; void rotor(int *a,int k,int len) { // Создаем и...

14
1Вирт1
184 / 192 / 48
Регистрация: 25.08.2011
Сообщений: 793
Завершенные тесты: 5
16.02.2018, 00:01 2
пути к либам прописаны?
0
darwolf
0 / 0 / 0
Регистрация: 13.02.2018
Сообщений: 12
16.02.2018, 00:04  [ТС] 3
да, так как весь остальной код компилится, если этот:
C++
1
2
3
4
5
6
7
8
9
10
unsigned int textures[3];
    AUX_RGBImageRec *texture1;
    texture1 = auxDIBImageLoadA("eath1.dib");
    glGenTextures(1, &textures[0]);
    glBindTexture(GL_TEXTURE_2D, textures[0]);
    texture1 = auxDIBImageLoadA("eath.dib");
    glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR);
    glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR);
    glTexImage2D(GL_TEXTURE_2D, 0, 3, texture1->sizeX, texture1->sizeY, 0, GL_RGB, GL_UNSIGNED_BYTE, texture1->data);
    glEnable(GL_TEXTURE_2D);
закоментировать, тоесть у меня появляется две сферы, красная, и оранжевая, но у меня не получается текстурировать их(загрузить текстуру)
0
nd2
3100 / 2594 / 1134
Регистрация: 29.01.2016
Сообщений: 8,690
16.02.2018, 00:53 4
Цитата Сообщение от darwolf Посмотреть сообщение
C++
1
//#pragma comment(lib,"GLAUX.LIB")
Зачем закомментировал? По другому указал либу?
0
16.02.2018, 00:53
darwolf
0 / 0 / 0
Регистрация: 13.02.2018
Сообщений: 12
16.02.2018, 01:05  [ТС] 5
по разному пытался, сначала прагмой, потом её закоментил, и подключил в компеляторе
не помогло, вылетала та-же ошибка
0
nd2
3100 / 2594 / 1134
Регистрация: 29.01.2016
Сообщений: 8,690
16.02.2018, 01:12 6
Такая ошибка бывает и в таком случае: библиотека собрана Си-компилятором, используется в программе, собираемой С++ компилятором. В этом случае, в хедере библиотеки, прототипы функций должны быть обрамлены extern "C" {}, иначе, компоновщик не будет находить их реализации.
0
darwolf
0 / 0 / 0
Регистрация: 13.02.2018
Сообщений: 12
16.02.2018, 01:20  [ТС] 7
щас попробую

Добавлено через 1 минуту
C++
1
extern "C" AUX_RGBImageRec * APIENTRY auxDIBImageLoadA(LPCSTR);
так?

Добавлено через 3 минуты
так-же попробовал такую запись:
C++
1
2
3
extern "C" {
#include <GLAUX/GLAUX.H>
}
та-же ошибка

Добавлено через 34 секунды
пробовал раздельно
0
nd2
3100 / 2594 / 1134
Регистрация: 29.01.2016
Сообщений: 8,690
16.02.2018, 01:21 8
Цитата Сообщение от darwolf Посмотреть сообщение
так-же попробовал такую запись:
Значит другая причина.
0
darwolf
0 / 0 / 0
Регистрация: 13.02.2018
Сообщений: 12
16.02.2018, 01:23  [ТС] 9
не сработало=(

есть еще идеи?

Добавлено через 44 секунды
есть ли онлайн коомпилятор, на котором можно попробовать данный код?
0
nd2
3100 / 2594 / 1134
Регистрация: 29.01.2016
Сообщений: 8,690
16.02.2018, 01:25 10
darwolf, среда у тебя какая?
0
darwolf
0 / 0 / 0
Регистрация: 13.02.2018
Сообщений: 12
16.02.2018, 01:26  [ТС] 11
visual studio 2017 последняя обновленная версия язык с++
0
nd2
3100 / 2594 / 1134
Регистрация: 29.01.2016
Сообщений: 8,690
16.02.2018, 01:43 12
Лучший ответ Сообщение было отмечено darwolf как решение

Решение

Компоновщик реализацию _sscanf не видит. Эту тему почитай: https://stackoverflow.com/questions/...al-studio-2015
1
darwolf
0 / 0 / 0
Регистрация: 13.02.2018
Сообщений: 12
16.02.2018, 01:56  [ТС] 13
воу, ты лучший

Добавлено через 12 секунд
спасибо большое, задача решена

Добавлено через 46 секунд
но появилась новая, не запихивается текстура, буду продолжать гуглить, если есть идеи почему , напиши(или надо новую тему создать?)

Добавлено через 42 секунды
пишет что texture1 =NULL ptr
но я вроде даю ей значение
0
nd2
3100 / 2594 / 1134
Регистрация: 29.01.2016
Сообщений: 8,690
16.02.2018, 01:58 14
Цитата Сообщение от darwolf Посмотреть сообщение
не запихивается текстура,
Про текстуры лучше спрашивать в разделах, где графику программируют (OpenGL, Программирование графики).
0
darwolf
0 / 0 / 0
Регистрация: 13.02.2018
Сообщений: 12
16.02.2018, 01:59  [ТС] 15
спасибо большое, ооооочень долго с этим парился
удачи тебе!!!
0
16.02.2018, 01:59
Answers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
16.02.2018, 01:59

error LNK2019: ссылка на неразрешенный внешний символ
Доброго времени суток. При написании курсового проекта в Microsoft Visual Studio 2010 возникла...

Error LNK2019: ссылка на неразрешенный внешний символ
Вот код #include &lt;iostream&gt; using namespace std; template &lt;class Type&gt; class Array {...

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


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

Или воспользуйтесь поиском по форуму:
15
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.