Как подключить sdl к visual studio 2019
Я не знаю, как связать библиотеки с Visual Studio 2019 (я использую Windows 10), как мне связать библиотеки?
Я предполагаю, что это так же, как в VS 2017 года.
Project/"your project name" Properties. /
На странице Конфигурация выберите Все конфигурации
Project/"your project name" Properties. /Configuration Properties/VC++ Directories/
На Включить каталоги добавьте путь к своему SDL включить папку
В Библиотечных каталогах добавьте путь к вашей папке lib SDL (lib/x86 или lib/x64)
Project/"your project name" Properties. /Configuration Properties /Linker/Input/
На Дополнительные зависимости добавьте (в следующем порядке):
SDL2.lib
SDL2main.lib
Затем скопируйте все файлы .dll из "вашей папки SDL"/lib/(x86 или x64) в проект Visual Studio папку отладки (папку отладки в том месте, где находится ваш файл .sln).
Как подключить SDL в Visual Studio ?
SDL 2. Как правильно прилинковать/подключить к Visual Studio?
Я пересмотрел много материалов по этой теме, но никакие из них мне не помогли. 1. Подключил.
Как внедрить графическую библиотеку SDL в Visual Studio 2012
Никогда не внедрял сторонних библиотек в Visual Studio. В инете поискал, но так ничего и не понял.
Прилинковать SDL 2.0.3 к Visual Studio 2010 Express
ребята делал все как написано тут версия сдл 2.0.3 но в конце выдает такое "sdltest.exe".
Решение
Как подключить библиотеку? (visual studio)
Где хранятся они в студии ? куда мне закинуть скаченные мною библеотечные файлы что бы я мог их.
Как подключить assembler в С++ (Visual Studio 2010)
Как подключить assembler в С++ (Visual Studio 2010) Возможно нужны какие-то библиотеки подскажите.
Как подключить библиотеку sdl2 к Visual Studio?
помогите пожалуйста проблема такая: хочу подключить библиотеку sdl2 к VS хидеры вроде.
Как подключить OpenGL к Visual studio 2013?
Сделал вот так: — Скачал с официального сайта GLUT. — Скопировал папку includes & lib в.
Как подключить pjsua к проекту Visual Studio?
Хочу подключить библиотеку pjsua к проекту Visual Studio, но за в С++ не особо разбираюсь и не.
Как подключить библиотеку GDlib к visual studio 2010
Здорова господа! Нужно подключить библиотеку Gdlib к C++, но я некак не найду где скачать саму.
Установка sdl2 на основные дистрибутивы
Здравствуй, Хабр. Недавно наткнулся на новый цикл статей по sdl2, но без процедуры установки. Вроде ничего сложного, но если интересно, то давайте вместе пройдемся по граблям, которые могут нас ожидать. Я проведу установку для xcode10 на macOS 10.14.5, code::blocks на Ubuntu 18.04 и Visual Studio 2019 Windows 10. Можно, конечно, было бы использовать clion. Одна ide на всех системах, но мне по какой-то причине не нравится их продукт. Ничего личного, просто кодинг.
Для проверки я буду использовать следующий код.
Ubuntu
Ставим code::blocks из магазина — здесь никаких неожиданностей. Далее создаем простенький файл mian.cpp для теста.
Если не собираетесь компилировать из терминала, то нужно указать target в настройках проекта.
Отлично. Далее нужно установить сам sdl2. Пишем в терминале
После установки дадим знать ide, что нужно использовать sdl2. Перейдем в в раздел «project»->«build options». Нас интересует вкладка «Linker settings». В окно «other linker options» добавим "-lSDL2".
Заменяем на наш код. Отлично, окно рисуется.
macOS
Для установки вы можете использовать установочный образ с Сайта. На данный момент последняя стабильная версия 2.0.9.
Скачиваем и копируем в каталог /Library/Frameworks. Для использования может потребоваться аутентификация.
Запускаем xcode и выбираем проект command line tool macOS. Даем имя проекту и выбираем язык C++.
Чтобы добавить поддержку sdl2, необходимо перейти в «настройки проекта»->«build phases»->«link binary with libraries» и добавить элемент. В открывшемся окне выбрать «add other»
Добавляем наш файл /Library/Frameworks/SDL2.framework и можем проверять.
В случае, если вы предпочитаете использовать brew, то помните, что он устанавливает только статические библиотеки. В таком случае нужно передать флаг -I/usr/local/include.
Все работает, поехали дальше.
Windows
Установите vs studio. Скачайте библиотеку. Распакуйте содержимое и расположите где вам больше нравится. Я очень редко использую windows, поэтому не знаю, где хранятся все остальные библиотеки.
Создаем проект с пустым cpp файлом, либо консольное приложение, как вам удобно.
Перейдите в «проект»->«свойства»->«C/C++»->«дополнительные каталоги включаемых файлов». Добавьте путь к распакованному каталогу, указав include. В моем случае вышло \\Mac\Home\Downloads\SDL2-2.0.9\include, т.к. у меня виртуальная машина.
После этого в разделе «компоновщик»->«общие»->«дополнительные каталоги библиотек» нужно указать путь к SDL2.dll, например \\Mac\Home\Downloads\SDL2-2.0.9\lib\x64.
Осталось немного, «компоновщик»->«ввод»->«дополнительные зависимости» мы дописываем то, что необходимо использовать, SDL2.lib, SDL2main.lib, SDL2test.lib. После этого необходимо собрать проект. Собрав, скопируйте файл SDL2.dll из каталога lib\x64 или lib\x32 и поместите рядом с исполняемым файлом. Теперь пробуем наш код. Еще один момент: т.к. в «дополнительные каталоги включаемых файлов» мы указали путь сразу до подключаемых заголовков, то
Поздравляю, мы успешно собрали приложения под основные платформы. Надеюсь, у вас не возникнет трудностей при установке.
1)First thing you need to do is download SDL 2 headers and binaries. You will find them on the SDL website, specifically on this page.
You'll want to download the Visual C++ development libraries.
Open the zip archive and there should be a folder called SDL2-2.something.something. Copy the contents of the folder and put it anywhere you'd like. I recommend putting it in a folder that you dedicate to holding all your development libraries for Visual C++. For these tutorials I'm putting them in a directory I created called C:\vclib
2)Start up Visual Studio and create a new empty C++ project.
Give your project/solution whatever name you'd like and place it where ever you'd like.
3)Go download the source for lesson 01 and extract the source file. Right click on the source files folder in your solution, and then add the source file you downloaded.
For the rest of this tutorial, we will be assuming you are building for Debug x64 so make sure your configuation is set to Debug x64. Because libraries are different per configuation, you will need to add SDL to every configuation you plan on using. So if you want to build for Release x64 or Debug x86, you will need to add SDL2 to each configuation.
5)Build your solution and you should get the following error:
Cannot open include file: 'SDL.h': No such file or directory
This means Visual C++ cannot find the SDL header files and you need to add the SDL include folder to the Visual C++ include directories.
Go to project properties:
unresolved external symbol SDL_GetError referenced in function SDL_main
The header file tells the compiler what the SDL functions are, not where to find them. The library file tells the compiler where they are and we need to tell it to use the SDL library file. Go to Configuration Properties -> Linker -> Additional Dependencies -> Edit.
SDL2.lib; SDL2main.lib;
cannot open file 'SDL2.lib'
While we did tell Visual C++ to use the SDL library files, we didn't tell it where to find it. Add the library directory like you did the include directory
Make sure to add the library that matches your build configuation. If your building for x64, make sure to use the x64 library.
The code execution cannot proceed because SDL2.dll was not found.
This is because your application needs SDL2.dll to run but can't find it. Windows uses environment variables to define where to look for dll files. To edit the PATH environment variable, go into Windows Settings and search for edit the system environment variables:
Restart Visual Studio so Visual C++ can get the updated path variable, start your program and it should run.
Now that you have SDL 2 compiling, it's time to go onto part 2 of the tutorial.
Здравствуй, Хабр. Недавно наткнулся на новый цикл статей по sdl2, но без процедуры установки. Вроде ничего сложного, но если интересно, то давайте вместе пройдемся по граблям, которые могут нас ожидать. Я проведу установку для xcode10 на macOS 10.14.5, code::blocks на Ubuntu 18.04 и Visual Studio 2019 Windows 10. Можно, конечно, было бы использовать clion. Одна ide на всех системах, но мне по какой-то причине не нравится их продукт. Ничего личного, просто кодинг.
Для проверки я буду использовать следующий код.
Ubuntu
Ставим code::blocks из магазина — здесь никаких неожиданностей. Далее создаем простенький файл mian.cpp для теста.
Если не собираетесь компилировать из терминала, то нужно указать target в настройках проекта.
Отлично. Далее нужно установить сам sdl2. Пишем в терминале
После установки дадим знать ide, что нужно использовать sdl2. Перейдем в в раздел «project»->«build options». Нас интересует вкладка «Linker settings». В окно «other linker options» добавим "-lSDL2".
Заменяем на наш код. Отлично, окно рисуется.
macOS
Для установки вы можете использовать установочный образ с Сайта. На данный момент последняя стабильная версия 2.0.9.
Скачиваем и копируем в каталог /Library/Frameworks. Для использования может потребоваться аутентификация.
Запускаем xcode и выбираем проект command line tool macOS. Даем имя проекту и выбираем язык C++.
Чтобы добавить поддержку sdl2, необходимо перейти в «настройки проекта»->«build phases»->«link binary with libraries» и добавить элемент. В открывшемся окне выбрать «add other»
Добавляем наш файл /Library/Frameworks/SDL2.framework и можем проверять.
В случае, если вы предпочитаете использовать brew, то помните, что он устанавливает только статические библиотеки. В таком случае нужно передать флаг -I/usr/local/include.
Все работает, поехали дальше.
Windows
Установите vs studio. Скачайте библиотеку. Распакуйте содержимое и расположите где вам больше нравится. Я очень редко использую windows, поэтому не знаю, где хранятся все остальные библиотеки.
Создаем проект с пустым cpp файлом, либо консольное приложение, как вам удобно.
Перейдите в «проект»->«свойства»->«C/C++»->«дополнительные каталоги включаемых файлов». Добавьте путь к распакованному каталогу, указав include. В моем случае вышло \\Mac\Home\Downloads\SDL2-2.0.9\include, т.к. у меня виртуальная машина.
После этого в разделе «компоновщик»->«общие»->«дополнительные каталоги библиотек» нужно указать путь к SDL2.dll, например \\Mac\Home\Downloads\SDL2-2.0.9\lib\x64.
Осталось немного, «компоновщик»->«ввод»->«дополнительные зависимости» мы дописываем то, что необходимо использовать, SDL2.lib, SDL2main.lib, SDL2test.lib. После этого необходимо собрать проект. Собрав, скопируйте файл SDL2.dll из каталога lib\x64 или lib\x32 и поместите рядом с исполняемым файлом. Теперь пробуем наш код. Еще один момент: т.к. в «дополнительные каталоги включаемых файлов» мы указали путь сразу до подключаемых заголовков, то
Поздравляю, мы успешно собрали приложения под основные платформы. Надеюсь, у вас не возникнет трудностей при установке.
Я продолжаю заброшенную серию переводов туториалов от Twinklebear, в оригинале доступных тут, с разрешения переводчика предыдущих уроков серии InvalidPointer. Первые два урока серии переводов в списке — за его авторством, 5 и 6 перевёл AndrewChe. Перевод отчасти вольный и может содержать незначительные поправки или дополнения от переводчика.
Список уроков:
Библиотеки-расширения SDL
До этого момента мы использовали только изображения в формате BMP, поскольку это единственный тип изображений, поддерживаемый основной библиотекой SDL 2, и это не очень-то удобно. К счастью, существует множество библиотек-расширений для SDL, добавляющих полезные возможности, например, SDL_image позволяет загружать многие типы изображений, SDL_ttf добавляет поддержку отрисовки текста с помощью шрифтов в формате TTF, SDL_net — низкоуровневую поддержку сети, а SDL_mixer — вывод многоканального аудио.
Установка расширения
В этом уроке мы будем использовать только SDL_image, однако процесс установки для остальных расширений не отличается, и, в целом, почти совпадает с таковым для установки самой SDL2.
- Windows (MinGW или Visual Studio): Поместите файлы расширения, загруженные со страницы проекта расширения, в папку с SDL2. Также, вам потребуется скопировать SDL2_image, zlib и другие файлы .dll (например, libpng) в папку с вашим исполняемым файлом (или в C:\Windows\system32 — прим. пер.), чтобы они загрузились при запуске приложения.
- Linux: Установите расширение с помощью вашего штатного менеджера пакетов, либо соберите из исходников. Если у вас Linux — скорее всего, вы уже знаете, как это сделать ©.
- Mac: скачайте .dmg с официального сайта и следуйте инструкциям в Readme.
Перед началом работы с расширением к использующим его файлам .c и .cpp необходимо подключить файл , или файл, соответствующий названию нужного расширения, после заголовочного файла самого SDL.
Инициализация SDL_image (не обязательно)
При первой загрузке изображения каждого типа SDL_image автоматически инициализирует необходимую для этого типа подсистему, однако, это вызовет небольшую задержку. Чтобы этого избежать, можно заранее проинициализировать необходимые подсистемы с помощью функции IMG_Init. IMG_Init возвращает битовую маску со списком всех успешно проинициализированных на данный момент подсистем, поэтому для проверки успешности вызова необходимо проверить, что биты для всех указанных для инициализации подсистем были установлены, например, применив маску к результату побитовым И. Для этого урока нам хватит только одной подсистемы PNG. Важно проводить эту операцию после SDL_Init.
Зададим размеры
В этом уроке мы рассмотрим, как загружать изображения с помощью SDL_image, как масштабировать текстуры при отрисовке и замостим фон плиткой более рациональным способом, нежели в предыдущем уроке — циклом, основывающемся на размерах окна и плиток.
Но для начала зададим константу для размера плиток, прямо под константами для размеров окна.
Загрузка изображений с помощью SDL_image
Указываем высоту и ширину для отрисовки
Если при отрисовке текстуры на рендерер указать размер прямоугольника, отличный от размера самой текстуры, SDL2 отмасштабирует её соответствующим образом. Однако, если масштабирование не требуется, то каждый раз определять исходный размер текстуры может быть неудобно, поэтому мы реализуем две версии функции renderTexture, одна из которых будет отрисовывать текстуру с масштабированием, а вторая — без.
Загрузка текстур
Поскольку основная цель этого урока — загрузка изображений PNG, мы воспользуемся новым набором изображений. Также, мы продемонстрируем сохранение прозрачности PNG при отрисовке изображения переднего плана (с прозрачным фоном) поверх замощёного плиткой фона.
Мы будем использовать вот эти картиночки:
Плитка для заполнения фона:
Изображение переднего плана (как на нём и написано, с прозрачным фоном, а так же снова со смайликами, нарушающими правила Хабра):
Замощение фона
Поскольку плитки стали заметно меньше, нам понадобится поставить больше четырёх штук, чтобы заполнить всё окно, и указывать позицию для каждой вручную будет довольно сложно. К счастью, можно заставить компьютер определять эти позиции самостоятельно.
Мы можем узнать, сколько нужно плиток в ширину, поделив ширину окна на размер плитки, и аналогично для высоты.
Отрисовка изображения переднего плана
Как и прежде, изображение переднего плана помещается в середине окна.
Осталось только отобразить результат на окне и подождать пару секунд, так же, как и во втором уроке.
Очистка
Освобождение ресурсов аналогично таковому в уроке 2 (и уже встречалось выше, при обработке ошибки загрузки изображения), за исключением добавившегося вызова IMG_Quit.
После успешной компиляции и запуска, если вы всё сделали правильно, окно будет выглядеть примерно так:
Добрый день и добро пожаловать. Это серия статей будет посвящена библиотеке SDL2. В них я дам базовые знания, необходимые для написания графических приложений с помощью этой библиотеки. SDL2 — низкоуровневая библиотека, написанная для получения "почти" прямого доступа ко всему оборудованию компьютера. Что это значит? Больше скорости работы, меньше памяти, но и требования по знаниям у нее чуть больше. Но ничего бояться не нужно. Самый большой ее плюс в том, что она кроссплатформена, хотите писать код с минимальным отличием, который будет работать как в Windows так и в Linux/Mac? Тогда вам сюда.
Сразу же скачаем библиотеку. Для пользователей windows все упаковано в архив и прикреплено к уроку. Распакуйте этот архив куда угодно. Я положил в корень диска С (С:\SDL2)
Открываем студию и создаем новый проект -> Пустой проект.
Создаем в нем любой .cpp файл. Это важный шаг.
Нажимаем правой кнопкой мыши (ПКМ) в обозревателе решений по проекту -> свойства.
Если все хорошо то видим такое окно:
Выбираем С/С++ -> Общие -> Дополнительные каталоги включаемых файлов
Находим папку SDL2 и заходим в папку Includes. Нажимаем ОК. В строке получится что-то вроде C:\SDL2\include;%(AdditionalIncludeDirectories)
Дальше идем в Компоновщик -> Общие -> Дополнительные файлы библиотек
Сюда уже вставляем папку SDL2\lib\x86 (можно и 64, но для наших приложений разницы, кроме как в объеме ОП, нет).
Компоновщик -> Ввод -> Дополнительные зависимости
Здесь необходимо нажать изменить и в Дополнительные зависимости прописать это:
Заходим в Компоновщик -> Система -> Подсистема
Выбираем (если не стоит) консоль.
А теперь последний штрих. Соберите проект как он есть. Это создаст ехе-файл.
Перейдите в папку "мои документы" и найдите свой проект (у меня мои документы/Visual studio 2015/projects/project1/debug) и помеcтите туда файл SDL2.DLL. Ваша программа НЕ БУДЕТ работать без этого файла.
Теперь небольшой код для проверки всего, что мы настроили:
Если в результате его выполнения вы увидели консоль и окно (Которое через 2 секунды закрылось), то вы все сделали правильно! До встречи на следующем уроке.
Setting up SDL 2 on Visual Studio 2019 Community
1)First thing you need to do is download SDL 2 headers and binaries. You will find them on the SDL website, specifically on this page.
You’ll want to download the Visual C++ development libraries.
Open the zip archive and there should be a folder called SDL2-2.something.something. Copy the contents of the folder and put it anywhere you’d like. I recommend putting it in a folder that you dedicate to holding all your development libraries for Visual C++. For these tutorials I’m putting them in a directory I created called C:\vclib
2)Start up Visual Studio and create a new empty C++ project.
Give your project/solution whatever name you’d like and place it where ever you’d like.
3)Go download the source for lesson 01 and extract the source file. Right click on the source files folder in your solution, and then add the source file you downloaded.
For the rest of this tutorial, we will be assuming you are building for Debug x64 so make sure your configuation is set to Debug x64. Because libraries are different per configuation, you will need to add SDL to every configuation you plan on using. So if you want to build for Release x64 or Debug x86, you will need to add SDL2 to each configuation.
5)Build your solution and you should get the following error:
Cannot open include file: ‘SDL.h’: No such file or directory
This means Visual C++ cannot find the SDL header files and you need to add the SDL include folder to the Visual C++ include directories.
Go to project properties:
unresolved external symbol SDL_GetError referenced in function SDL_main
SDL2.lib; SDL2main.lib;
cannot open file ‘SDL2.lib’
The code execution cannot proceed because SDL2.dll was not found.
Restart Visual Studio so Visual C++ can get the updated path variable, start your program and it should run.
Now that you have SDL 2 compiling, it’s time to go onto part 2 of the tutorial.
Как подключить sdl к visual studio
Сразу же скачаем библиотеку. Для пользователей windows все упаковано в архив и прикреплено к уроку. Распакуйте этот архив куда угодно. Я положил в корень диска С (С:SDL2)
Открываем студию и создаем новый проект -> Пустой проект.
Создаем в нем любой .cpp файл. Это важный шаг.
Нажимаем правой кнопкой мыши (ПКМ) в обозревателе решений по проекту -> свойства.
Если все хорошо то видим такое окно:
Выбираем С/С++ -> Общие -> Дополнительные каталоги включаемых файлов
Находим папку SDL2 и заходим в папку Includes. Нажимаем ОК. В строке получится что-то вроде C:SDL2include;%(AdditionalIncludeDirectories)
Дальше идем в Компоновщик -> Общие -> Дополнительные файлы библиотек
Сюда уже вставляем папку SDL2libx86 (можно и 64, но для наших приложений разницы, кроме как в объеме ОП, нет).
Компоновщик -> Ввод -> Дополнительные зависимости
Здесь необходимо нажать изменить и в Дополнительные зависимости прописать это:
Заходим в Компоновщик -> Система -> Подсистема
Выбираем (если не стоит) консоль.
А теперь последний штрих. Соберите проект как он есть. Это создаст ехе-файл.
Перейдите в папку "мои документы" и найдите свой проект (у меня мои документы/Visual studio 2015/projects/project1/debug) и помеcтите туда файл SDL2.DLL. Ваша программа НЕ БУДЕТ работать без этого файла.
Теперь небольшой код для проверки всего, что мы настроили:
Если в результате его выполнения вы увидели консоль и окно (Которое через 2 секунды закрылось), то вы все сделали правильно! До встречи на следующем уроке.
Ранее работал в SDL 1.2, всё прошло без происшествий. Но вот в очередной проект решил интегрировать SDL 2.0 после не долгой борьбы, я упёрся в ошибку
"error LNK1107: недопустимый или поврежденный файл: не удается прочитать по location"
Обновл. 13 Фев 2019 |
В качестве примера мы рассмотрим подключение библиотеки SDL к нашему проекту в Visual Studio 2017.
Шаг №1: Создаём папку для хранения библиотеки
Создаём папку Libs на диске C ( C:Libs ).
Шаг №2: Скачиваем и устанавливаем библиотеку
Шаг №3: Указываем путь к заголовочным файлам библиотеки
Открываем свой любой проект в Visual Studio или создаём новый, переходим в «Обозреватель решений» > кликаем правой кнопкой мыши (ПКМ) по названию нашего проекта > «Свойства»:
В «Свойствах конфигурации» открываем вкладку «С/С++» > «Общие» > «Дополнительные каталоги включаемых файлов» > нажимаем на стрелочку в конце > «Изменить»:
В появившемся окне кликаем на иконку с изображением папки, а затем на появившееся троеточие:
Заголовочные файлы находятся в папке include внутри нашей библиотеки, поэтому переходим в неё ( C:LibsSDL2-2.0.9include ) и нажимаем «Выбор папки», а затем «Ок»:
Шаг №4: Указываем путь к файлам с реализацией библиотеки
Переходим во вкладку «Компоновщик» > «Общие» > «Дополнительные каталоги библиотек» > стрелочку в конце > «Изменить»:
Опять же, нажимаем на иконку с папкой, а затем на появившееся троеточие. Нам нужно указать следующий путь: C:LibsSDL2-2.0.9libx86 . Будьте внимательны, в папке lib находятся две папки: x64 и x86. Даже если у вас Windows разрядности x64, указывать нужно папку x86. Дальше «Выбор папки», а затем «Ок»:
Затем переходим в «Компоновщик» > «Ввод» > «Дополнительные зависимости» > стрелочку вниз > «Изменить»:
В появившемся текстовом блоке вставляем:
Затем переходим в «Компоновщик» > «Система» > «Подсистема» > стрелочку вниз > выбираем «Консоль (/SUBSYSTEM:CONSOLE)» > «Применить» > «Ок»:
Шаг №5: Копируем dll-ку в папку с проектом
Переходим в папку x86 ( C:LibsSDL2-2.0.9libx86 ), копируем SDL2.dll и вставляем в папку с нашим проектом в Visual Studio. Чтобы просмотреть папку вашего проекта в Visual Studio 2017 – нажмите ПКМ по названию вашего проекта > «Открыть содержащую папку»:
Затем вставляем скопированный файл (SDL2.dll) в папку с проектом (где находится рабочий файл .cpp):
Шаг №6: Тестируем
Теперь, чтобы проверить, всё ли верно мы сделали – копируем и запускаем следующий код:
Читайте также: