Установка игры SDL в Ubuntu

Я пытаюсь установить 2Pong на Ubuntu для того, чтобы сделать эксперимент, но я не могу выяснить, как получить ее выполнение. Я установил все требования и следовал инструкциям в файле README, но после многих поисков я все еще не могу найти решение.

Я также пытался следовать инструкциям SDL на их веб-сайте, но без успеха.

Состояния README:

Требования:

  • SDL
  • SDL_Net
  • SDL_Mixer
  • iconv
  • zlib
  • libxml2

Компиляция:

  • CD src
  • сделать

Я установил все, но когда я пытаюсь выполниться:

sudo make src

Я добираюсь:

make: Nothing to be done for 'src'.

Файлы в папке: 2Pong, src (папка), README и conf.xml.

Ссылка на игру:

http://twopong.sourceforge.net/

Править: Моя ошибка после реализации фиксации SurvivalMachine:

In file included from net.cpp:1:0:
net.h:5:10: fatal error: SDL/SDL_net.h: No such file or directory
 #include <SDL/SDL_net.h>
          ^~~~~~~~~~~~~~~
compilation terminated.
Makefile:52: recipe for target 'net.o' failed
make: *** [net.o] Error 1
0
задан 26 May 2019 в 20:29

1 ответ

Этот шаг является неверным:

sudo make src

Вместо этого необходимо войти в src и работать, сделайте:

cd src
make

Для получения корректных зависимостей выполните эти команды:

sudo apt install libsdl1.2-dev libsdl-net1.2-dev libsdl-mixer1.2-dev libxml2-dev

Похоже, что это настроено для компиляции как 32-разрядное приложение, таким образом, для компиляции в современных системах редактируют Make-файл и удаляют -march=i486 -mcpu=i686 от CFLAGS и CXXFLAGS.

Существует также некоторый код, который не компилирует без модификаций. Откройте defs.h и найдите эти строки:

rectangle defines::UpperBound();
rectangle defines::LowerBound();
rectangle defines::RightBound();
rectangle defines::LeftBound();

Удалить defines:: таким образом, это похоже на это:

rectangle UpperBound();
rectangle LowerBound();
rectangle RightBound();
rectangle LeftBound();
2
ответ дан 26 May 2019 в 20:29

Другие вопросы по тегам:

Похожие вопросы: