it-swarm-id.com

Bagaimana saya bisa menjalankan Dwarf Fortress dalam mode teks (ncurses) di VPS Linux saya?

Saya menginstal Dwarf Fortress di VPS Linux saya untuk digunakan dengan dfterm. Ini menjalankan Ubuntu 10.04 Server x86-32. Saya cukup yakin saya memiliki semua dependensi:

Saya telah menginstal:

  • ncurses
  • ncursesw
  • libsdl
  • libsdl-image
  • libgtk
  • libglu
  • libopenal1

Saya harus mematikan suara atau akan langsung segfault, dan saya mengatur mode tampilan ke teks. Saya tidak membuat perubahan lain pada konfigurasi.

Namun, bahkan sebelum saya mendekati dfterm, itu tidak akan berjalan dengan baik. Ini hanya menampilkan layar kosong. Apa yang menyebabkan ini? Apakah ada ketergantungan yang saya lewatkan? Apakah ada hal lain yang harus saya ubah di konfigurasi?

Mengingat bahwa itu adalah server, ada kemungkinan bagus bahwa jika ada ketergantungan yang hilang, itu adalah sesuatu yang para devs tanyakan, "Tentu saja, semua orang memiliki it" dan tidak mau repot-repot mendaftar.

Aplikasi ncurses lainnya (vim, irssi menggunakannya, saya pikir?) Berfungsi dengan baik.

14
Macha

Saya dapat membuat ulang segfaulting dengan menjalankan df pada instalasi Ubuntu biasa dengan X dimatikan.

...
(Dwarf_Fortress:5346): Gdk-CRITICAL **: gdk_window_new: assertion `GDK_IS_WINDOW (parent)' failed
Segmentation fault

Saya menduga masalahnya adalah bahwa game ini mengharapkan driver GL yang berfungsi tersedia. Dan untuk itu Anda perlu menjalankan X. Tetapi VPS tidak memiliki X!

Sebagai gantinya, gunakan Xvfb, yang merupakan X "virtual" virtual. Anda harus menginstal xvfb dan dependensi apa pun yang diinginkan (mungkin xorg-server-core dan banyak hal lain yang mungkin tidak diinstal pada Ubuntu Server).

Mulai xserver palsu seperti ini:

 $ Xvfb :1 -screen 0 1024x768x16 &

Kemudian pastikan variabel DISPLAY Anda diarahkan ke sana:

$ export DISPLAY=:1
$ ./df

Saya juga perlu menonaktifkan suara dan menjalankan dalam mode TEXT, tetapi bekerja dengan cara ini, tanpa X berjalan. Saya harap ini berhasil untuk Anda.

10
Bryce

Pernahkah Anda melihat artikel DFTerm ini di DF Wiki? Ini mencantumkan beberapa dependensi yang sepertinya tidak Anda sebutkan di atas ....

1
Rob Cowell

Anda dapat mencoba menggunakan ldd untuk melihat apakah ada objek bersama yang hilang.

Misalnya, sesuatu seperti:

ldd /usr/local/bin/df

Segala sesuatu yang daftar ldd sebagai "tidak ditemukan" hilang.

Anda juga harus mencoba melihat semua file * .so (dengan ldd) jika ada di folder game. Anda dapat menemukan file * .so dengan menggunakan perintah ini: find . -iname '*.so' -type f

1
LassePoulsen

Anda perlu mengedit init.txt Anda. Cari pengaturan untuk [PRINT_MODE:2D] dan ubah ke [PRINT_MODE:TEXT]

Anda mungkin ingin mengubah ke [SOUND:NO] juga.

Anda hanya akan berjalan pada 80x24 kecuali Anda menjalankan bagian dalam layar atau tmux.

1
slacy