[Solved] Playing dwarf fortress

I have a linux version of df that I've played on another linux distro. However, on arch, I'm having problems with the libpng1.6 package. I get a window  saying
Not found: data/art/Phoebus/16x16.png
How can I downgrade from libpng 1.6 to 1.5? I've tried downloading the lib32-libpng15 package from aur, and installing that, but I still get the same result. So, I also tried removing the lib32-libpng package, but I'm getting dependency problems:
spark: ~/df/df_linux : sudo pacman -R lib32-libpng
[sudo] password for adam:
checking dependencies...
error: failed to prepare transaction (could not satisfy dependencies)
:: lib32-cairo: requires lib32-libpng
:: lib32-gdk-pixbuf2: requires lib32-libpng
:: lib32-libcups: requires lib32-libpng
:: lib32-qt4: requires lib32-libpng
:: lib32-sdl_image: requires lib32-libpng
What is the recommended way forward here? Or is it even worth it? I could transfer this back to another OS to play to get around this problem.
TIA.
Last edited by kabads (2013-05-25 21:27:02)

Well see, dwarf fortress is a bunch of binary code basically and the multimedia layer of that binary code tried to dynamically load a bunch of old libpng library versions at runtime. You can find out as much using strace. Now, simply tricking it to load a recent version of libpng wouldn't do the trick because the binary stuff was built with the old headers so that it doesn't know how the new API actually looks. If there is any API mismatch at all in relevant calls, it wouldn't work anymore. Since libpng changed the major version (1.5 -> 1.6), we know it wasn't meant to be compatible.
The only proper thing to do from that point was to rebuild the code that uses libpng. I've done just that. Repo here: https://github.com/svenstaro/dwarf_fortress_unfuck

Similar Messages

  • Trying to run Dwarf Fortress on Arch64

    I got it to run by installing a bunch of lib32 packages. It runs fine in text mode but crashes in graphical mode with the following errors:
    (dwarfort.exe:30070): Gtk-WARNING **: /usr/lib/gtk-2.0/2.10.0/engines/libclearlooks.so: wrong ELF class: ELFCLASS64
    Gtk-Message: Failed to load module "canberra-gtk-module": /usr/lib/gtk-2.0/modules/libcanberra-gtk-module.so: wrong ELF class: ELFCLASS64
    Gtk-Message: Failed to load module "gnomebreakpad": /usr/lib/gtk-2.0/modules/libgnomebreakpad.so: wrong ELF class: ELFCLASS64
    /usr/lib/gio/modules/libgvfsdbus.so: wrong ELF class: ELFCLASS64
    Now, every time I got errors like this before I corrected it by installing the corresponding lib32 package. The main problem here appears to be libclearlooks, but I can't find a lib32 version of it to install. The closest thing I could find was lib32-gtk-aurora-engine in the AUR so I installed it but it didn't fix the problem.
    What do I need to install to play Dwarf Fortress?

    DWilliams wrote:Until bin32-dwarffortress is updated, does anyone know how to make it run? I installed lib32-gtk-engines from the AUR as suggested but nothing appears to have changed.
    I ran into the same thing today. Solved it by uninstaling dwarffortress, completely deleting the /opt/df_linux folder (caution this will remove savegames), then reinstalling.
    By the way, diffs against the dwarffortress package for 64bit support are at http://pastebin.org/327652.
    (And a bit of self promotion - an updated version of dwarf therapist is at http://aur.archlinux.org/packages.php?ID=38062 . A friend of mine who is totally into df swears by it Unfortunately it doesn't support 0.31.6 yet, only 0.31.5. )
    Edit: dwarftherapist-hg now supports 0.31.06
    Last edited by schuay (2010-06-13 14:56:21)

  • Dwarf Fortress libpng12.so.0 error [SOLVED]

    Can't open dwarf fortress... any ideas?
    [ben@ArchInspiron ~]$ dwarffortress
    ./dwarfort.exe: error while loading shared libraries: libpng12.so.0: cannot open shared object file: No such file or directory
    Thanks
    Last edited by TheRealHoboBen (2010-02-27 17:51:45)

    wonder wrote:
    dhave wrote:
    wonder wrote:ok, let me reformulate. from where is that dwarf package? if is from aur and can be compiled, recompile it,  if is a blob(binary) install libpng12 from aur.
    @wonder: This comment helped me solve a very annoying problem with VMware Workstation, which would no longer launch because it needed libpng12, not libpng14. Thanks very much! Here's a question, though: is it O.K. for libpng14 (as installed from [EXTRA]) and libpng12 (as installed from the AUR) to co-exist?
    yes since libpng12 only provides to so name and nothing more.
    O.K., that's great. Thanks again for your help.

  • Dwarf Fortress Wine Issue

    It's been a while since I brought this up, but I'm still having this issue.
    Basically the issue comes down to some glib conflict with dwarf-fortress that I have had a good deal of trouble tracking down.
    Here's the error trace:
    (dwarfort.exe:10401): Gtk-WARNING **: /usr/lib/gtk-2.0/2.10.0/engines/libxfce.so: wrong ELF class: ELFCLASS64
    /usr/lib/gio/modules/libgiogconf.so: wrong ELF class: ELFCLASS64
    Failed to load module: /usr/lib/gio/modules/libgiogconf.so
    /usr/lib/gio/modules/libgioremote-volume-monitor.so: wrong ELF class: ELFCLASS64
    Failed to load module: /usr/lib/gio/modules/libgioremote-volume-monitor.so
    /usr/lib/gio/modules/libgvfsdbus.so: wrong ELF class: ELFCLASS64
    Failed to load module: /usr/lib/gio/modules/libgvfsdbus.so
    (dwarfort.exe:10401): Gtk-WARNING **: Error loading theme icon 'gtk-dialog-question' for stock: Unable to load image-loading module: /usr/lib/gtk-2.0/2.10.0/loaders/svg_loader.so: /usr/lib/gtk-2.0/2.10.0/loaders/svg_loader.so: wrong ELF class: ELFCLASS64
    (dwarfort.exe:10401): GLib-GObject-WARNING **: instance with invalid (NULL) class pointer
    (dwarfort.exe:10401): GLib-GObject-CRITICAL **: g_signal_handlers_destroy: assertion `G_TYPE_CHECK_INSTANCE (instance)' failed
    (dwarfort.exe:10401): GLib-GObject-WARNING **: instance with invalid (NULL) class pointer
    (dwarfort.exe:10401): GLib-GObject-CRITICAL **: g_signal_handlers_destroy: assertion `G_TYPE_CHECK_INSTANCE (instance)' failed
    (dwarfort.exe:10401): Gtk-WARNING **: Error loading theme icon 'gtk-dialog-info' for stock: Unable to load image-loading module: /usr/lib/gtk-2.0/2.10.0/loaders/svg_loader.so: /usr/lib/gtk-2.0/2.10.0/loaders/svg_loader.so: wrong ELF class: ELFCLASS64
    (dwarfort.exe:10401): GLib-GObject-WARNING **: instance of invalid non-instantiatable type `<invalid>'
    (dwarfort.exe:10401): GLib-GObject-CRITICAL **: g_signal_handlers_destroy: assertion `G_TYPE_CHECK_INSTANCE (instance)' failed
    (dwarfort.exe:10401): GLib-GObject-WARNING **: instance of invalid non-instantiatable type `<invalid>'
    (dwarfort.exe:10401): GLib-GObject-CRITICAL **: g_signal_handlers_destroy: assertion `G_TYPE_CHECK_INSTANCE (instance)' failed
    Using OpenGL output path with client-side arrays
    Ideal catalog size: 252x248
    In order to fix a separate PANGO32 problem, at least partially, I implemented the hack found here in case anyone is having trouble on this account. This does not seem to fix every issue with GTK, as you can read above. Does anyone know what might or does fix this issue?

    I'm not sure if there's a specific reason you're running through Wine, but you could always get one of the test releases from here. There's a native Linux version, among other fixes.
    Last edited by urist (2009-02-23 02:04:25)

  • How to get the right graphics card on my macbook in order to play team fortress 2??!!

    does anybody know how to get a NVIDIA GeForce 8 or higher, ATI X1600 or higher, or Intel HD 3000 graphics card on a macbook, (mac OS X, version 10.5.8 with a 2.4 GHz intel core 2 duo, chipset model - GMA: X3100??? I desperately need to play team fortress 2 on my macbook!!

    alfie123lewis wrote:
    does anybody know how to get a NVIDIA GeForce 8 or higher, ATI X1600 or higher, or Intel HD 3000 graphics card on a macbook, (mac OS X, version 10.5.8 with a 2.4 GHz intel core 2 duo, chipset model - GMA: X3100??? I desperately need to play team fortress 2 on my macbook!!
    Buy a new one?
    Seriously, you can't upgrade a video card on a laptop, unless your a electronics whiz or something.
    The Intel HD 3000 is a integrated graphics, meaning the CPU does the graphics and isn't all that great because GPU's are more powerful than CPU's apparently.
    http://www.cbscores.com/index.php?sort=ogl&order=desc
    http://www.videocardbenchmark.net/high_end_gpus.html
    The most powerful vidoe cards are in desktop machines which you can exchange, and for less money Windows tower is a better 3D gaming platform as it comes with Windows when you buy the comptuer (a $300 savings) most games are on Windows because of the less expensive and open hardware.
    However!  If your into 3D gaming and need a Mac laptop, then you'll need a
    2.2 Ghz 15" MacBook Pro with 1GB Radeon 6750M video card or
    2.2 Ghz 17" Macbook Pro with 1GB Radeon 6750M video card.
    (2.3Ghz is fine too, not all that much faster really)
    This Radeon 6750M is THREE times faster than the pitiful Intel HD 3000. 
    The object being is you buy as much video card performance up front as you can, and play all the latest games at over 50 fps on max settings!
    Then over time as new games come out and demand more hardware, you trim down the graphics in the game itself to keep the frame rate up.
    Eventually though, you'll have to buy a new MacBook Pro, because you can't (reasonably) change the video card in laptops like you can with a desktop like a Windows PC tower or a MacPro.
    The iMac you can't do squat with neither. Which is a shame actually.

  • Dwarf Fortress Wine Problem

    I am having trouble with wine and I am worried that it is symptomatic of some larger issue.
    Whenever I try to run dwarf-fortress, from term or wine-explorer, I get an "Error creating OpenGL window" dialog.  I have yet to try other apps. I just wondered if others had encountered something similar.

    Hmm. One last issue along this vain. I tried out the aur package and am having trouble. I run Arch64, so I am well aware of the dreaded ELFCLASS64 error. I got this because I did not have lib32-(sdl or sdl_image) installed but once it got running I got all sorts of ELF errors thrown by pango as well some others below:
    I get the following repeated a number of times.
    (dwarfort.exe:14665): Pango-WARNING **: /usr/lib/pango/1.6.0/modules/pango-basic-fc.so: wrong ELF class: ELFCLASS64
    Then a dialog box with open boxes for text, which is probably what this error is all about.
    I assumed that this was the fullscreen? yes or no? dialog. I pressed the "NO" button, marked with red circle, and got the following error.
    (dwarfort.exe:14673): GLib-GObject-WARNING **: instance of invalid non-instantiatable type `<invalid>'
    (dwarfort.exe:14673): GLib-GObject-CRITICAL **: g_signal_handlers_destroy: assertion `G_TYPE_CHECK_INSTANCE (instance)' failed
    (dwarfort.exe:14673): GLib-GObject-WARNING **: instance of invalid non-instantiatable type `<invalid>'
    (dwarfort.exe:14673): GLib-GObject-CRITICAL **: g_signal_handlers_destroy: assertion `G_TYPE_CHECK_INSTANCE (instance)' failed
    I'm not quite sure what to make of this.
    I made sure that I have lib32-pango and pango for 64 installed, so I have no idea why this would cause problems. And I just don't know what to make of glib errors. I installed lib32-glib just in case, but got the same error.
    Any thoughts?
    Last edited by syntaxvorlon (2009-01-06 02:56:52)

  • HT201272 Can I play Team Fortress 2 on the iPad?

    Can I play team fortress 2 on the iPad?

    I guess so, yes!
    Probably should've checked if it was actually possible to play the game on the iPad prior to actually trying to install it?!
    As you can prob tell, I'm not exactly experienced at all this!

  • [Solved] Playing movie on external monitor gives me a blue screen

    Nevermind.  I found the xvattr package in the AUR.
    I've tried this on both VLC and Mplayer and everytime the movie starts I see blue instead.  On the built in monitor for my laptop the DVD is viewable.  To get tv-out I use this command:
    xrandr --output VGA-0 --mode 1024x768
    I thought that this might have to do with the standard that is set so I tried to change it with the advice on the wiki (for ATi drivers):
    xrandr --output VGA-0 --set tv_standard ntsc
    But it gives me this:
    X Error of failed request: BadName (named color or font does not exist)
    Major opcode of failed request: 150 (RANDR)
    Minor opcode of failed request: 11 (RRQueryOutputProperty)
    Serial number of failed request: 27
    Current serial number in output stream: 27
    How do I get DVD's to play on an external monitor?
    Last edited by Gen2ly (2010-07-09 00:18:14)

    So I have the exact same issue (never a problem with my G4 12" Powerbook).
    I found this in an Apple support document:
    "When you are finished using your MacBook Pro, MacBook, or PowerBook G4 in closed-lid mode, the internal display will not come on when you open the lid until you have disconnected the external display. If you want the internal display to enable again, remove the external display connector, put the computer to sleep, and then open the lid. This will toggle the computer to come out of closed-lid mode and once again provide power and a video signal to the internal display."
    I'm not sure how you put the MBP to sleep in closed lid mode if you have already removed the external display....
    I am going to try putting the MPB to sleep, THEN removing the external display, then re-waking..... We'll see
    The article is at:
    http://docs.info.apple.com/article.html?artnum=300562
    Good luck!

  • [SOLVED] Playing sound simultaniously from wine and other applications

    I'm using Pulseaudio with the following packages installed:
    ~> pacman -Q | grep 'alsa\|pulse'
    alsa-lib 1.0.27.2-1
    alsa-plugins 1.0.27-2
    alsa-utils 1.0.27.2-1
    lib32-alsa-lib 1.0.27.2-1
    lib32-libpulse 5.0-1
    libpulse 5.0-1
    pulseaudio 5.0-1
    pulseaudio-alsa 2-2
    When running a wine application sound works, unless a linux application is playing sound. If that is the case, no sound is playing from the wine app until sound from the linux application stops (for example by pausing smplayer).
    Is there any way to make sound work simultaneously from wine and native applications?
    Other information that may be relevant:
    Architecture - x86_64
    Desktop - KDE
    Wine application - BabasChess
    Last edited by CarbonFixer (2014-04-16 16:14:10)

    V1del wrote:Install lib32-alsa-plugins and set wine to use the default resp (System Standard) card in winecfg pulsemixers should show an [alsa-plugin] wine stream
    Thanks
    Was missing that package.

  • [Solved] Playing mp3...

    Hi,
    Let me give you a little background so it doesn't look like I am a complete retard beyond salvation... I am a slightly above average Windows user, and never used linux before. I wanted to learn to use linux and figured if I want to learn linux properly, I should go with something like arch, instead of something like Ubuntu, where most things are done for you automatically. Anyhow, I finally managed to dual boot arch with Windows 7 successfully after 3 days of struggle, and installed KDE.
    Here is my question. In Windows, when I click on an mp3 file, the default player that I've set will open up and the song starts playing. I can use this player to control; ie: pause, stop, restart, etc. When I fired up Dolphin and clicked on an mp3 file in arch, the music started automatically, but nothing really opened up. Mplayer Media Player showed up briefly the task bar, but it was gone before the music ended. I tried clicking on it, but nothing happened.
    I googled Mplayer Media Player, and learned that it is command-input based, and it doesn't have a GUI. Fair enough. I learned that I can hit esc key to stop and the space bar to pause. Empowered with this knowledge, I clicked on the mp3 file again to test it. When I hit the esc key, nothing happened. The music kept playing. The same with the space bar. I even opened up the terminal and tried again in the unlikely chance that it might help. Again, no go. I tried clicking on another mp3 file to see what happens. In Windows, the song currently playing stops and the new one starts. In arch, however, the new one began to play on top of the old one. Again, I couldn't figure out how to stop the songs, switch between the songs, etc.
    Obviously, there has to be a way to control mp3 playback, and I really didn't want to resort to posting here to find out how to play mp3 properly, and let everyone know how stupid I am..... Any insight would be greatly appreciated. I tried searching the forum, but most people seem to have problem with their computers not making sound, instead of the problem stopping the sound....
    Thanks in advance.
    Luke
    Last edited by lukelee83 (2012-10-07 01:46:09)

    Standalone mplayer is not really user-friendly, there are multiplie mp3 players for KDE available in the repos. For playing singe files you can use dragon player (part of kdemultimedia), if you want a full media player with playlist management you have juk, amarok, clementine...

  • [SOLVED] Play music via SSH

    I cannot imagine this is that hard of a problem, but I apparently cannot find the right combination of words to get what I need out of google or the forum search.
    So I have a mac mini that I have an external hard drive connected to.  This external hard drive holds my music collection.  I connect to the mini via SSH.  I just need a music player on my arch laptop that lets me play my music over the ssh connection.
    Thanks in advance.
    Last edited by flowheat (2009-02-16 00:36:44)

    Additional suggestions are;
    using edna: http://edna.sourceforge.net/
    using a network sound server: http://wiki.squeak.org/squeak/1676
    Piping both trough SSH is a technicality (lookup ssh forwarding or ssh vpn's). If that is really what must be done?
    Why would an additional open port be a problem? That's what you will get anyway with VLC, Icecast, mpd, edna... if it's filtered and you must go trough SSH then you also have your anwser. My personal suggestion is edna btw, great little script.
    Last edited by anrxc (2009-02-16 02:50:26)

  • [SOLVED] Playing m4a [MPEG4 AAC] files

    I am having trouble playing an m4a file.  Quod libet say it does not know what to do with them and totem tells me I need to install MPEG4 AAC demuxer plugin.
    I have faad2 and gstreamer0.10-faad installed.  Are these not the right gstreamer components?
    Last edited by Allan (2007-07-07 09:08:55)

    I figured this out finally.  I just had to reinstall gstreamer0.10- good and bad.  Resulted from deleting files to fix the clash described on this post:
    http://bbs.archlinux.org/viewtopic.php?id=34680

  • [SOLVED] TF2 (Team Fortress 2) glitchy during gameplay

    Check out this awesome glitchy video
    Any ideas on why this is happening?
    Thanks! I don't think I got it installed in time for the penguin :-(
    EDIT, because I forgot to list information:
    Video card:
    05:00.0 VGA compatible controller: Advanced Micro Devices [AMD] nee ATI RV710 [Radeon HD 4350]
    Video Driver:
    xf86-video-ati
    Desktop:
    XFCE4
    If you would like to know anything else, let me know!
    Last edited by uberscientist (2013-03-02 03:59:26)

    Dear god... I just spent the last hour trying to install the catalyst-legacy driver.
    I need to write a full tutorial sometime maybe, but this is important:
    pacman -Rns $(pacman -Qsq xf86-video)
    #will remove every open source video driver installed
    We don't want to follow the wiki because it's outdated, instead of installing the "catalyst" package, we want to use "catalyst-hook" (or catalyst-daemon I suppose).
    This is because of licensing issues with AMD or something?
    Then we run this to make the xorg.conf contain ATI stuff:
    sudo aticonfig --initial
    So, I was able to reboot and everything seemed to load fine, however when I try to start TF2 I now get:
    And I got rid of that by installing lib32-catalyst-utils, whew!
    TF2 is working fine now!
    Last edited by uberscientist (2013-03-02 03:07:36)

  • [Solved] Play on linux, wine problem

    I cant make wine to work on Arch linux. I user Ubuntu before and it was working fine. I really like arch but i found myself fixing the problems all the time. It is annoying. Please help me fix this:
    I use wine 1.1.7 + winetricks 20081201-1 and playonlinux 3.2.1-1. I have installed gecko, directx9c and copied some dll-s from ubuntu instalation. But i cant make Call Of Duty 2 to work. It just starts, and then crashes... Any ideas?
    This is what it says:
    ALSA lib pcm_dmix.c:1008:(snd_pcm_dmix_open) unable to open slave
    err:module:load_builtin_dll failed to load .so lib for builtin L"opengl32.dll": libXdamage.so.1: wrong ELF class: ELFCLASS64
    err:d3d:InitAdapters Can't load opengl32.dll!
    err:d3d:WineDirect3DCreate Direct3D9 is not available without opengl
    err:d3d:WineDirect3DCreate Direct3D9 is not available without opengl
    wine: Unhandled page fault on read access to 0x00000014 at address 0x42f434 (thread 0009), starting debugger...
    err:seh:setup_exception_record stack overflow 240 bytes in thread 0018 eip 7ef94a51 esp 00241240 stack 0x240000-0x241000-0x340000
    I copied opengl32.dll from ubuntu installation myself. And it is there, in system32 on fake windows instalation
    Why wine cant find it?
    Last edited by ammon (2008-12-19 13:33:29)

    I have removed both wine and playonlinux, and recompiled it all over from aur, latest versions. I have instaled libxdamage and lib32-libxdamage
    And still...
    wine CoD2SP_s.exe
    err:d3d:WineD3D_CreateFakeGLContext Can't find a suitable iPixelFormat
    err:d3d:InitAdapters Failed to get a gl context for default adapter
    err:d3d:WineDirect3DCreate Direct3D9 is not available without opengl
    err:d3d:WineDirect3DCreate Direct3D9 is not available without opengl
    wine: Unhandled page fault on read access to 0x00000014 at address 0x42f434 (thread 0009), starting debugger...
    err:seh:setup_exception_record stack overflow 240 bytes in thread 0018 eip 7ef920c1 esp 00241240 stack 0x240000-0x241000-0x340000
    Is trouble with OpenGL?
    Should I install libgl-dri? It conflicts with nvidia-utils package. That means nvidia-utils contains OpengGL libs, right?

  • Manually allocating processor core usage?

    Hi all,
    So I'm not sure if I'm posting this in the right seciton, but here it goes. So my logic board is broken and Activity Moniter shows that kernel_task (the os itself) is using between 500-600% CPU usage (I have 8 cores so this is about 63-75% CPU capacity)
    For reasons I won't get into, I can't fix my computer for about a month. However, there are some higher-performance things I still would like to do. For example, play Dwarf Fortress. Now Dwarf Fortress is not multithreaded, so in theory, if the crazy-high kernel_task usage is restricted to 6 cores, and I can somehow guarentee that 1 core is mostly dedicated to Dwarf Fortress, then I could still play it to a degree. (It's possible that slowdown due thrashing and multi-core issues makes this impossible, but I'm not sure).
    Is there some way I can run the program giving it precedence to one of the cores? Or on the other side, restrict kernel_task to the first 6 cores? I'm pretty sure the program itself has no mechanism for this, so it would have to be something from the mac side. I thought maybe virtualizing a machine and dedicating the cores to that machine might work, but the overhead might make the whole thing slower. I'm a technical user, so any suggestions are welcome.

    kernel_task does not randomly use 600% CPU.  Something is definitely wrong here.
    I don't know that you can assign a "nice" value to kernel_task to de-prioritize its CPU usage.  Some processes you can, but I don't think you can with kernel_task.  Better to find out why it's burning CPU.

Maybe you are looking for

  • Syncing ical on the iphone

    I get it that the data on my ical on my mac sync's up with iphone, but if that data is online (like for a company with people changing it during the day) if I'm out and about can I update the iphone with changes people have made since my last dock an

  • HELP!!: Two server application instances could work in the same port?

    Hi everybody!!! i have two server application instances over the same JVM and both of them need to get requests from the same port, how can i get this?? I`m not interested on using RMI, and i wouldn`t like to use sockets, because i have already using

  • I know how to copy a page

    i can not put it here

  • How to design a registration page

    Hi, I want to design a registration page for oracle EBS R12. Can you guide me to step by step docs for that? Thanks

  • Unexpected error in stored procedure

    Howdy group... I have a stored procedure in Oracle; p_BILL_TO_ADDRESS1 IN CONT_ADDRESS.ADDRESS1%TYPE Default NULL, --VC(50) With a condition; IF p_BILL_TO_ADDRESS1 is NULL THEN Raise_Application_Error(-20100,'BILL TO Address cannot be a NULL Value');