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

инициализация SDL - C++

Восстановить пароль Регистрация
 
hamster28
0 / 0 / 0
Регистрация: 25.07.2012
Сообщений: 41
07.06.2013, 11:32     инициализация SDL #1
подключил
C++
1
#include "SDL.h"
- проверил, запустилось.
добавил первую строку из статьи про работу сдл
C++
1
SDL_Init(SDL_INIT_VIDEO);
вылетает ошибка линковщика

error LNK2028: unresolved token (0A000647) "extern "C" int __cdecl SDL_Init(unsigned int)" (?SDL_Init@@$$J0YAHI@Z) referenced in function "private: void __clrcall new_visual::Form1::trackBarGain_Scroll(class System::Object ^,class System::EventArgs ^)"
и

error LNK2019: unresolved external symbol "extern "C" int __cdecl SDL_Init(unsigned int)" (?SDL_Init@@$$J0YAHI@Z) referenced in function "private: void __clrcall new_visual::Form1::trackBarGain_Scroll(class System::Object ^,class System::EventArgs ^)"

пишу на с++/cli. но эт вроде не важно.
попробовал создать пустое консольное приложение
error LNK2019: unresolved external symbol _SDL_Init referenced in function
что я не сделал? или не так сделал?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.06.2013, 11:32     инициализация SDL
Посмотрите здесь:

Документация по SDL C++
C++ Странность С++ и SDL
Как вывести текст на экран, используя библиотеку SDL TTF для SDL 2? C++
C++ Установка SDL 2
C++ SDL C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
anmartex
...
 Аватар для anmartex
1700 / 1193 / 494
Регистрация: 12.02.2013
Сообщений: 1,978
07.06.2013, 14:10     инициализация SDL #2
hamster28, а вы в свойствах проекта сборщику укажите библиотеку и будет вам счастье.
hamster28
0 / 0 / 0
Регистрация: 25.07.2012
Сообщений: 41
07.06.2013, 16:35  [ТС]     инициализация SDL #3
anmartex, сорри, а что это за свойство?? в компановщике?

Добавлено через 29 минут
в Additional Dependencies дописал sdl2.lib
но ничего не произошло.. видимо не туда
anmartex
...
 Аватар для anmartex
1700 / 1193 / 494
Регистрация: 12.02.2013
Сообщений: 1,978
07.06.2013, 16:43     инициализация SDL #4
Загляните сюда, здесь всё расписано.

Добавлено через 1 минуту
Цитата Сообщение от hamster28 Посмотреть сообщение
в Additional Dependencies дописал sdl2.lib
Там же вроде SDL.lib и SDLmain.lib должны быть?

Добавлено через 1 минуту
Хотя да, если вы вторую версию используете, то тогда всё верно. Ещё загляните сюда.
hamster28
0 / 0 / 0
Регистрация: 25.07.2012
Сообщений: 41
10.06.2013, 15:09  [ТС]     инициализация SDL #5
anmartex,
спасибо за ссылки, помогли
но вот другая затырка...
если не менять в свойствах c/c++ / cj\ommon language runtime support (там прописано clr:: pure)
то вылезает ошибка
error C3389: __declspec(dllexport) cannot be used with /clr: pure or /clr:safe
если поменять на просто clr
то выйдет
error LNK2022: metadata operation failed (8013118D) : Несовместимые сведения о макетах в повторяющихся типах (std.basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >): (0x02000063).
что с этим делать?
hamster28
0 / 0 / 0
Регистрация: 25.07.2012
Сообщений: 41
11.06.2013, 15:49  [ТС]     инициализация SDL #6
anmartex,
блин, все проделал сначала, в предыдущем варианте допустил какую-то ошибку и пошел по ложному пути..
библиотека подключена, но при вызове
C++
1
 SDL_Init( SDL_INIT_EVERYTHING );
вновь выпадают ошибки
error LNK2028: unresolved token (0A000643) "extern "C" int __cdecl SDL_Init(unsigned int)" (?SDL_Init@@$$J0YAHI@Z) referenced in function "int __clrcall SDL_main(cli::array<class System::String ^ >^)" (?SDL_main@@$$FYMHP$01AP$AAVString@System@@@Z)
и
error LNK2019: unresolved external symbol "extern "C" int __cdecl SDL_Init(unsigned int)" (?SDL_Init@@$$J0YAHI@Z) referenced in function "int __clrcall SDL_main(cli::array<class System::String ^ >^)" (?SDL_main@@$$FYMHP$01AP$AAVString@System@@@Z)
все подключено, как на сайтах, что вы скинули.
anmartex
...
 Аватар для anmartex
1700 / 1193 / 494
Регистрация: 12.02.2013
Сообщений: 1,978
11.06.2013, 19:05     инициализация SDL #7
hamster28, проблема в линковке - это факт. Но вот последняя и единственная студия в которой я работал - это Visual Studio 6.0. У меня и Windows-то только на работе. Поэтому более детально исследовать вашу проблему не имею возможности.

C
1
2
3
4
5
6
7
8
9
10
#include <SDL/SDL.h>
 
int main()
{
   SDL_Init(SDL_INIT_VIDEO);
 
   SDL_Quit();
 
   return 0;
}
инициализация SDL

Видите, в первом случае линковщик тоже ругается, но после того как я подключаю библиотеку сборка проходит успешно.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
10.07.2013, 10:38     инициализация SDL
Еще ссылки по теме:

SDL mouse C++
Оптимизация SDL C++
Подключение SDL.h к проекту C++

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

Или воспользуйтесь поиском по форуму:
hamster28
0 / 0 / 0
Регистрация: 25.07.2012
Сообщений: 41
10.07.2013, 10:38  [ТС]     инициализация SDL #8
anmartex, поморочался на винде, подключил
теперь перешел на линукс, решил вновь обратиться к твоей помощи.

вставил в файл .pro
C++
1
2
LIBS += -L /usr/tmp/sdl/x86_64/lib64 -lSDL -lSDLmain
INCLUDEPATH += /usr/include/sdl64/SDL
создал мейн
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <sdl64/SDL/SDL.h>
 
#undef main
 
SDL_Surface * screen;
 
int main(int argc, char ** argv)
{
    if (SDL_Init(SDL_INIT_EVERYTHING) == -1)
        return 1;
    screen = SDL_SetVideoMode(640,480,32,SDL_SWSURFACE);
    if (screen == NULL)
        return 1;
 
    SDL_Quit();
 
    return 0;
}
а мне вылезают ошибки
In function `SDL_SYS_CreateThread': undefined reference to `pthread_create'

Добавлено через 18 минут
добавил еще
-lpthread
стало меньше ошибок

In function `SDL_LoadObject': undefined reference to `dlopen'
In function `SDL_LoadFunction': undefined reference to `dlsym'

Добавлено через 7 минут
все, решено
еще нужно было добавить
-ldl
хотя я не понял, что это за либы последние я подключил....
Yandex
Объявления
10.07.2013, 10:38     инициализация SDL
Ответ Создать тему
Опции темы

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