Zainstalowałem Dwarf Fortress na moim Linux VPS, aby używać go z dfterm. Działa z systemem Ubuntu 10.04 Server x86-32. Jestem całkiem pewien, że mam wszystkie zależności:
Zainstalowałem:
- ncurses
- ncursesw
- libsdl
- libsdl-image
- libgtk
- libglu
- libopenal1
Musiałem wyłączyć dźwięk, bo inaczej natychmiast się zepsuje i ustawiłem tryb wyświetlania na tekst. Nie wprowadziłem żadnych innych zmian w konfiguracji.
Jednak nawet zanim zbliży się do dfterm, nie będzie działać poprawnie. Wyświetla tylko pusty ekran. Co może być tego przyczyną? Czy brakuje mi zależności? Czy jest coś jeszcze, co powinienem zmienić w konfiguracji?
Biorąc pod uwagę, że jest to serwer, istnieje duża szansa, że jeśli istnieje zależność brakuje, to coś, deweloperów poszedł „Oczywiście, każdy ma , że ” i nie przeszkadzało do listy.
Inne aplikacje ncurses (vim, irssi używają go, myślę?) Działają dobrze.
Odpowiedzi:
Byłem w stanie odtworzyć segfaulting, uruchamiając df na zwykłej instalacji Ubuntu z wyłączonym X-em.
Podejrzewam, że problem polega na tym, że ta gra oczekuje, że będzie mieć działający sterownik GL. I do tego potrzebujesz działającego X. Ale VPS nie ma X!
Zamiast tego użyj Xvfb, który jest „fałszywym” wirtualnym X. Będziesz musiał zainstalować xvfb i dowolne zależności (prawdopodobnie xorg-server-core i kilka innych rzeczy, które mogą nie zostać zainstalowane na Ubuntu Server).
Uruchom fałszywego serwera Xserver w następujący sposób:
Następnie upewnij się, że twoja zmienna DISPLAY jest na nią wskazana:
Musiałem także wyłączyć dźwięk i uruchomić w trybie TEKST, ale działało to w ten sposób, bez X-ów. Mam nadzieję, że to zadziała dla ciebie.
źródło
Czy widziałeś ten artykuł DFTerm na DF Wiki? Wymienia niektóre zależności, których najwyraźniej nie wymieniono powyżej ...
źródło
Możesz spróbować
ldd
sprawdzić, czy brakuje współdzielonego obiektu.Na przykład coś takiego:
Brakuje wszystkiego, co ldd określa jako „nie znaleziono”.
Powinieneś także spróbować przejrzeć wszystkie pliki * .so (z ldd), jeśli istnieją w folderze gry. Możesz znaleźć pliki * .so za pomocą tego polecenia:
find . -iname '*.so' -type f
źródło
Musisz edytować swój plik init.txt. Poszukaj ustawienia
[PRINT_MODE:2D]
i zmień je na[PRINT_MODE:TEXT]
Prawdopodobnie też chcesz się zmienić
[SOUND:NO]
.Będziesz działać tylko w rozmiarze 80x24, chyba że biegniesz wewnątrz ekranu lub tmux.
źródło