Hard Light Productions Forums
Modding, Mission Design, and Coding => FS2 Open Coding - The Source Code Project (SCP) => Cross-Platform Development => Topic started by: kkmic on March 20, 2010, 04:00:16 am
-
Several days ago I managed to install the -current Slackware x64 on my machine and I thought I should give FSO a go (since OpenGL support was broken on my old installation).
The result? Nothing less than :mad: and :hopping:!
First, the 3.6.12 SVN failed to build. Miserably, I'd say. The same problem as Armchair Commander reported in this port (http://www.hard-light.net/forums/index.php?topic=68405.0).
Per Iss Mneur's instructions, I modified the code/pngutils/pngutils.cpp by adding the code below after the last #include present in the SVN version:
#ifndef png_infopp_NULL
#define png_infopp_NULL NULL
#endif
#ifndef png_voidp_NULL
#define png_voidp_NULL NULL
#endif
Then the thing managed to build itself.
Since the problem is having a too NEW package installed (probably the latest version available?) I have to ask this: Why is the SCP basing the code on an older version of a certain library? I know that sometimes newer does not necessarily means better, but having the 1.4.1 libpng present by default in my Slackware installation makes me pretty confident that the 1.4 version does it's job well.
You are welcome to prove me wrong, of course.
Second, after building the binary with --enable-debug and --enable-inferno, it crashes if I load any mod - even if I load only the mediavps (it works if I start the game without any mod selected).
Log below:
Look here (http://scp.pastebin.com/U1CJPbps) for the log since including it in the post exceeds the maximum allowed characters.
Since the log contains a lot of these:
BMPMAN: Found EFF (exp20.eff) with 64 frames at 30 fps.
DDS ERROR: Couldn't open 'exp20_0000' -- DDS is compressed but compression support is not enabled
WARNING: "EFF: No frame images were found. EFF, exp20.eff, is invalid." at bmpman.cpp:934
WARNING: "Weapon explosion 'exp20' does not have an LOD0 anim!" at weapons.cpp:180
I assume it might be related to the modifications I made earlier to the code - I'm not a coder but I suppose I disabled the required compression support by modifying pngutils.cpp.
What should I do?
- Downgrade libpng to 1.2 - affects my entire system
- Wait for the SCP to upgrade the code - might happen later than sooner
- Beg around for someone to provide a compatible binary - maybe i'll get lucky
- Set up a special build environment just for one application - what?
- Get the pre-compiled binary offered on the announcement page - it's not my flavor
Any other suggestions?
-
Don't ask me about anything else, but
DDS ERROR: Couldn't open 'exp20_0000' -- DDS is compressed but compression support is not enabled
should mean that there are problems with the GPU and/or its drivers, since it doesn't seem to be able to figure out what to do with compressed DDS textures.
-
I have to ask this: Why is the SCP basing the code on an older version of a certain library?
It's probably based on the versions that were out when the code was written. Is there some other way to do it?
-
PNG support development began during a time when 1.4.0 was just stabilizing, so 1.2.x was the way to go. We haven't yet taken the time to verify the changes made fully work with the PNG test suite, in fact the user reported that after applying those changes there were some issues in the main hall with some animations. So, officially libpng 1.4.x is not supported yet. We have not modified the build tools to check for specifically 1.2.x yet but hopefully we can just get 1.4.x support and not worry about it. Can you not install both versions of libpng? The .so should be a different version and the two should be installable concurrently.