Install sfml on 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

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

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

Читайте также:  Не определяются диски при установке windows

Источник

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.

Источник

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.

Читайте также:  Свойства компьютера для windows 10

Источник

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:

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:

Источник

1.3 SFML и Linux

От переводчика: данная статья является третьей в цикле переводов официального руководства по библиотеке SFML. Прошлую статью можно найти тут. Данный цикл статей ставит своей целью предоставить людям, не знающим язык оригинала, возможность ознакомится с этой библиотекой. SFML — это простая и кроссплатформенная мультимедиа библиотека. SFML обеспечивает простой интерфейс для разработки игр и прочих мультимедийных приложений. Оригинальную статью можно найти тут. Начнем.

Читайте также:  Реанимационный диск для windows

1. Приступая к работе

  1. Рисование 2D объектов
  2. Спрайты и текстуры
  3. Текст и шрифты
  4. Формы
  5. Проектирование ваших собственных объектов с помощью массивов вершин
  6. Позиция, вращение, масштаб: преобразование объектов
  7. Добавление специальных эффектов с шейдерами
  8. Контроль 2D камеры и вида

5. Модуль Audio

  1. Проигрывание звуков и музыки
  2. Запись аудио
  3. Пользовательские потоки аудио
  4. Спатиализация: звуки в 3D

6. Модуль Network

  1. Коммуникация с использованием сокетов
  2. Использование и расширение пакетов
  3. Веб-запросы с помощью HTTP
  4. Передача файлов с помощью FTP

Вступление

Эта статья — первая, которую вам следует прочитать, если вы используете SFML на Linux. В ней будет рассказано, как настроить ваш проект.

Установка SFML

Существуют разные подходы к установке SFML на Linux:

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

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

Третий вариант требует больше работы: нужно удовлетворить все зависимости SFML. Убедитесь, что CMake установлен и выполните несколько команд. Результатом этого станет пакет, адаптированный для вашей системы. Если вы хотите пойти по этому пути, прочитайте статью о самостоятельной сборке SFML.

Наконец, второй вариант — отличный выбор для быстрой установки, если SFML не доступен в качестве официального пакета. Скачать SDK можно со страницы загрузки. Распакуйте его и скопируйте файлы в нужное место: либо в отдельный путь в вашей личной директории (например, /home/me/sfml), либо в стандартную директорию (например, /usr/local).

Компиляция программы, использующей SFML

В этой статье мы не будем говорить об интегрированных средах разработки, таких как Code::Blocks или Eclipse. Мы рассмотрим команды, необходимые для компиляции и компоновки в исполняемый файл, использующий SFML. Написание Makefile или настройка проекта в среде IDE выходит за рамки данной статьи. По данным темам достаточно материалов в интернете.

Если вы используете Code::Blocks, вы можете использовать статью о настройке Code::Blocks для ОС Windows; большая часть указаний должна подойти и для Linux. Вы можете не указывать компилятору и компоновщику где искать заголовочные файлы и библиотеки, если вы установили SFML по стандартному пути.

Создайте файл с исходным кодом. В этой статье мы назовем его «main.cpp». Поместите следующий код в файл main.cpp:

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

В случае, если SFML установлен по нестандартному пути, вам необходимо сообщить компилятору, где найти заголовочные файлы SFML (файлы с расширением .hpp):

Тут — директория, в которую вы скопировали SFML. Например /home/me/sfml.

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

Если вы установили SFML по нестандартному пути, вам необходимо сообщить компоновщику, где найти библиотеки SFML (файлы с расширением .so).

Теперь мы можем запустить собранную программу:

Если SFML установлен по нестандартному пути, вам необходимо сообщить динамическому компоновщику, где найти библиотеки SFML, определив переменную окружения LD_LIBRARY_PATH:

Запустите программу, и, если все было сделано правильно, вы должны увидеть это:

Источник

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