Установка sfml c linux

Графическая библиотека SFML в Linux: как ее установить и использовать

В операционной системе Linux, нередко, используется так называемая консоль. Это когда черный экран, командная строка и… все. Но, консоль бывает удобна, как правило, для обслуживания самой операционной системы, тогда как пользовательские приложения обычно используют графический интерфейс (так называемый GUI — Grafic User Interface). Для его реализации необходима, соответственно, та или иная графическая библиотека.

Вообще, в настоящее время графических библиотек просто масса – и больших и малых, и простых и многофункциональных, и т.д. Мы в этой не будем даже пытаться рассмотреть их все, а сосредоточимся на известной библиотеке SFML. Написано о ней достаточно, например, в Википедии.

По умолчанию, эта библиотека не является установленной в Linux (например, Ubuntu). Кроме того, не установлены и зависимости, требуемые для ее полноценной установки и работы.

Устанавливаем зависимости

Для установки зависимостей, равно как и для установки самой библиотеки, можно использовать команды apt-get , aptitude .

Настоятельно рекомендуется использовать именно aptitude , так как именно она позволяет установить зависимости корректно и без ошибок. Тогда как apt-get иногда не приводит к нужному результату.

Для того, чтобы установить зависимости, следует выполнить следующие команды:

  • # sfml-window
  • aptitude install libx11-dev -y
  • aptitude install libxcb1-dev -y
  • aptitude install libx11-xcb-dev -y
  • aptitude install libxcb-randr0-dev -y
  • aptitude install libxcb-image0-dev -y
  • aptitude install libxrandr-dev -y
  • aptitude install libgl1-mesa-dev -y
  • aptitude install libudev-dev -y
  • aptitude install libxrandr-dev -y
  • # sfml-graphics
  • aptitude install libfreetype6-dev -y
  • aptitude install libjpeg-dev -y
  • # sfml-audio
  • aptitude install libopenal-dev -y
  • aptitude install libflac-dev -y
  • aptitude install libvorbis-dev -y

Например, в Ubuntu 16.04 LTS установка проходит без каких-либо проблем.

Устанавливаем библиотеку SFML (в Ubuntu, Debian)

Устанавливать библиотеку SFML на Linux можно по-разному:

Лучше всего выбрать первый способ, если есть возможность. Для этого используем команду

  • sudo aptitude install libsfml-dev

Как компилировать программу с библиотекой SFML

Пример программного кода

Рассмотрим простейший пример:

// Подключаем заголовок модуля Graphics, а он автоматически подключает заголовок модуля Window

  1. #include
  2. int main()
  3. <
  4. // создаём окно
  5. sf::RenderWindow app(sf::VideoMode(800, 600, 32), «Hello World — SFML»);

  1. // основной цикл
  2. while (app.isOpen())
  3. <
  4. // проверяем события (нажатие кнопки, закрытие окна и т.д.)
  5. sf::Event event;
  6. while (app.pollEvent(event))
  7. <
  8. // если событие «закрытие окна»:
  9. if (event.type == sf::Event::Closed)
  10. // закрываем окно
  11. app.close();
  12. >

  1. // очищаем экран и заливаем его синим цветом
  2. app.clear(sf::Color(0,0,255));

  1. // отображаем на экран
  2. app.display();
  3. >

  1. return 0;
  2. >

1. Вначале следует создать объектный файл

Если все успешно, создастся файл main.o .

2. Сборка

Чтобы получить исполняемый файл, следует сделать сборку, т.е. связать скомпилированный файл с библиотекой SFML. SFML состоит из пяти модулей: system , window , graphics , audio и network и библиотек для каждого из них. Что бы собрать приложение с библиотекой SFML, нужно должны добавить опцию » -lsfml-xxx » к команде компоновки. Например, » -lsfml-graphics » для модуля graphics (префикс « lib » и расширение » .so » библиотеки должны быть опущены).

  • g++ main.o -o sfml-app -lsfml-graphics -lsfml-window -lsfml-system
Читайте также:  Drivers t50 epson windows 10

Если все будет нормально скомпилировано и собрано, то, будучи запущенной, эта программа выводит окно, залитое синим цветом, как на рисунке:

Запуск программы может производиться либо из консоли ( ./sfml-app ), либо путем двойного клика мыши на имени файла sfml-app в менеджере файлов.

Источник

SFML и Linux

Введение

Этот урок первый который вы должны прочитать если используете SFML на Linux. Здесь описано как установить SFML и скомпилировать проект который его использует.

Установка SFML

Есть несколько способов установить SFML на Linux:

  • Установка из репозитория вашего дистрибутива
  • Загрузить скомпилированный SDK и вручную скопировать файлы
  • Загрузить исходники, скомпилировать и установить

Первый способ предпочтительнее; если версия SFML которую вы хотите установить доступна в официальном репозитории , значит установите SFML используя ваш пакетный менеджер . К примеру, в Debian вы должны выполнить следующую команду:

Option 3 requires more work: you need to ensure all of SFML’s dependencies including their development headers are available, make sure CMake is installed, and manually execute some commands. This will result in a package which is tailored to your system.
If you want to go this way, there’s a dedicated tutorial on building SFML yourself.

Finally, option 2 is a good choice for quick installation if SFML is not available as an official package. Download the SDK from thedownload page, unpack it and copy the files to your preferred location: either a separate path in your personal folder (like/home/me/sfml), or a standard path (like /usr/local).

If you already had an older version of SFML installed, make sure that it won’t conflict with the new version!

Компиляция SFML программы

In this tutorial we’re not going to talk about IDEs such as Code::Blocks or Eclipse. We’ll focus on the commands required to compile and link an SFML executable. Writing a complete makefile or configuring a project in an IDE is beyond the scope of this tutorial — there are better dedicated tutorials for this.
If you’re using Code::Blocks, you may refer to the Code::Blocks tutorial for Windows; many things should be similar. You won’t have to set the compiler and linker search paths if you installed SFML to one of your system’s standard paths.

Источник

SFML and Linux

Introduction

This tutorial is the first one you should read if you’re using SFML on Linux. It will explain how to install SFML, and compile projects that use it.

Installing SFML

There are different approaches to the installation of SFML on Linux:

  • Install it directly from your distribution’s package repository
  • Get the source code, build it and install it
  • Download the precompiled SDK and manually copy the files

Option 1 is the preferred one; if the version of SFML that you want to install is available in the official repository, then install it using your package manager. For example, on Debian you would do:

Читайте также:  Превью psd проводнике windows

Option 2 requires more work: you need to ensure all of SFML’s dependencies including their development headers are available, make sure CMake is installed, and manually execute some commands. This will result in a package which is tailored to your system.
If you want to go this way, there’s a dedicated tutorial on building SFML yourself.

Finally, option 3 is a good choice for quick installation if SFML is not available as an official package. Download the SDK from the download page, unpack it and copy the files to your preferred location: either a separate path in your personal folder (like /home/me/sfml), or a standard path (like /usr/local).

If you already had an older version of SFML installed, make sure that it won’t conflict with the new version!

Compiling a SFML program

In this tutorial we’re not going to talk about IDEs such as Code::Blocks or Eclipse. We’ll focus on the commands required to compile and link an SFML executable. Writing a complete makefile or configuring a project in an IDE is beyond the scope of this tutorial — there are better dedicated tutorials for this.
If you’re using Code::Blocks, you may refer to the Code::Blocks tutorial for Windows; many things should be similar. You won’t have to set the compiler and linker search paths if you installed SFML to one of your system’s standard paths.

First, create a source file. For this tutorial we’ll name it «main.cpp». Put the following code inside the main.cpp file:

Now let’s compile it:

In case you installed SFML to a non-standard path, you’ll need to tell the compiler where to find the SFML headers (.hpp files):

Here, is the directory where you copied SFML, for example /home/me/sfml.

You must then link the compiled file to the SFML libraries in order to get the final executable. SFML is made of 5 modules (system, window, graphics, network and audio), and there’s one library for each of them.
To link an SFML library, you must add «-lsfml-xxx» to your command line, for example «-lsfml-graphics» for the graphics module (the «lib» prefix and the «.so» extension of the library file name must be omitted).

If you installed SFML to a non-standard path, you’ll need to tell the linker where to find the SFML libraries (.so files):

We are now ready to execute the compiled program:

If SFML is not installed in a standard path, you need to tell the dynamic linker where to find the SFML libraries first by specifying LD_LIBRARY_PATH:

If everything works, you should see this in a new window:

Источник

Установка sfml c linux

Инструкция работает для Ubuntu, но может частично работать и в других дистрибутивах Linux

Содержание

1. Редактор

Загрузите Visual Studio Code (deb-пакет) с адреса code.visualstudio.com.

  • откройте терминал и перейдите в каталог, в котором лежит deb-пакет
  • запустите команду dpkg -i code_*.deb и проверьте результат выполнения
  • если не хватает каких-либо зависимостей, установите их через apt-get install
Читайте также:  Mac os для mac book pro

2. Последняя версия G++

В первую очередь проверьте версию g++ командой g++ —version . Если у вас версия 7 или выше, всё в порядке. Вывод команды выглядит примерно так:

Если версия ниже 7.0, то надо обновить компилятор. Подключите PPA ubuntu-toolchain-r. Это можно сделать двумя командами:

Теперь надо установить новый компилятор:

После этого надо установить новый компилятор по умолчанию:

Снова проверьте версию G++. Поскольку он доступен под разными именами, надо проверить их все.

Если что-то не сходится, используйте команды:

3. Последняя версия CMake

Перед началом удалите существующую версию CMake, если CMake установлен: sudo apt-get remove cmake . Если CMake не был установлен, всё в порядке.

Далее потребуется собрать CMake вручную. Установите пакеты, необходимые для сборки:

Зайдите на страницу загрузки (cmake.org) и скачайте пакет “Unix/Linux Source” актуальной версии. Распакуйте загруженный архив, перейдите в каталог и выполните следующие команды:

Далее выполните команду checkinstall, чтобы создать DEB-пакет “cmake-custom” и установить его. Также вам нужно удалить системный пакет cmake перед началом установки.

Если скрипт завершился успешно, проверьте версию cmake в системе командой cmake —version :

4. Библиотека SFML

Рекомендуется использовать самую новую версию SFML. Для этого нужно скачать на sfml-dev.org архив с исходным кодом SFML и собрать его с помощью CMake.

5. Добавляем модуль FindSFML.cmake

  1. Перейдите в каталог /usr/local/share/cmake-3.9/Modules (либо /usr/share/cmake-3.9/Modules , если предыдущего не существует)
  2. Скопируйте в этот каталог файл FinSFML.cmake (для записи потребуются права администратора; возможно, будет удобнее скопировать командой sudo cp )

PS-Group

Материалы для курсов в Институте Программных Систем и в Волгатехе

Источник

Clion и SFML

Вступление

Привет, это статья посвящена установке и подключение библиотеки SFML к среде разработки Clion в Linux Ubuntu. Я не могу гарантировать что это способ заработает на других дистрибутивах linux, но то что это работает в Ubuntu гарантирую на 90 %.

Проблемы

Я заметил что у многих людей возникают трудности подключения sfml не только к Clion, но и к другим средам разработки отличных от Visual Studio. Это видно по количеству запросов на форуме и видеороликов на youtube. В частности это проблемы связанны с cmake.

Установка

Итак приступим. Для начала воспользуемся информацией с официального сайта sfml, по установке на Ubuntu.

Забыл упомянуть что способ который я описываю работает с sfml 2.5 и выше. Для начала открываем терминал и вставляем туда команду:

для установки sfml по стандартному пути.

Подключение

Открываем ваш clion и создаем новый c++ проект. После создание открываем файл — CmakeList.txt.

По умолчание ваш CmakeList.txt выглядит так.

Мы же изменим его вот так.

В строке find_package() мы находим sfml по стандартному пути. В строке target_link_libraries() мы подключаем библиотеки. Вы также можете подключить остальные библиотеки sfml, например: sfml-network.

Тогда это будет выглядеть так: target_link_libraries(ваш проект sfml-graphics sfml-audio sfml-network).

Запуск!

Все готов обновляем ваш CmakeList.txt. и можно запускать.
Вставляем в ваш файл с функцией main тестовый код с сайта sfml.

Заключение

И теперь вы можете работать с вашими sfml проектами в среде разработки clion.Или другой среды использующей build — систему cmake.

Для написание статья использовалась следующая информация: официальный сайт SFML.

Источник

Оцените статью