กำลังติดตั้งเกม SDL ใน Ubuntu


0

ฉันกำลังพยายามติดตั้ง 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

ฉันเพิ่มการแก้ไขสำหรับข้อผิดพลาด SDL_net แต่นี่เป็นอีกครั้ง: sudo apt ติดตั้ง libsdl1.2-dev libsdl-net1.2-dev libsdl-mixer1.2-dev libxml2-dev
SurvivalMachine

ในที่สุดก็ตกลงใช้งานได้ขอบคุณตัน! จะไม่สามารถทำได้โดยปราศจากความช่วยเหลือของคุณ!
สูงสุด

@SurvivalMachine คุณควรโพสต์ความคิดเห็นนั้นเป็นคำตอบ
GabrielaGarcia

@GabrielaGarcia ฉันได้เพิ่มคำสั่งลงในคำตอบก่อนโพสต์ความคิดเห็น
SurvivalMachine

@SurvivalMachine ขออภัยที่รบกวน คำถามนี้อยู่ระหว่างการตรวจสอบและฉันไม่ได้สังเกตว่าคุณได้โพสต์คำตอบแล้ว +1
GabrielaGarcia

คำตอบ:


2

ขั้นตอนนี้ผิด

sudo make src

แต่คุณควรเข้าสู่ src และทำการสร้าง:

cd src
make

ในการรับการขึ้นต่อกันที่ถูกต้องให้รันคำสั่งเหล่านี้:

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

ดูเหมือนว่าจะได้รับการกำหนดค่าให้คอมไพล์เป็นแอปพลิเคชันแบบ 32 บิตดังนั้นการคอมไพล์ในระบบที่ทันสมัยแก้ไข Makefile และลบออก-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();

ฉันเคยลองมาก่อน แต่ฉันได้รับ: make: *** ไม่ได้ระบุเป้าหมายและไม่พบ makefile หยุด.
สูงสุด

ฉันเพิ่งดาวน์โหลดมาและไดเรกทอรี src มี Makefile คุณต้องเรียกใช้ make จากไดเรกทอรีอื่น
SurvivalMachine

@Max คุณดาวน์โหลด 2pong-src-1.0.1a.tar.gz แล้วหรือยัง
SurvivalMachine

ฉันแตกไฟล์ tar.gz ลงบนเดสก์ท็อปของฉันแล้วรัน: ubuntu @ ubuntu: ~ / Desktop / 2Pong-Linux / src $ make ถูกต้องหรือไม่
สูงสุด

@ Max หากคุณเรียกใช้lsในไดเรกทอรีและดู Makefile แสดงว่าเป็นไดเรกทอรีที่ถูกต้อง
SurvivalMachine
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.