|Summary:||games/ufoai: "Wrong JPEG library version: library is 90, caller expects 80"|
|Product:||Ports & Packages||Reporter:||Peter Kien <peter.kien>|
|Component:||Individual Port(s)||Assignee:||Dmitry Marakasov <amdmi3>|
|Severity:||Affects Only Me||CC:||attila.kover, m.tsatsenko, peter.kien, storm16|
Description Peter Kien 2019-12-12 20:39:21 UTC
The program crashes during startup, complaining that we use the ... .. "Wrong JPEG library version: library is 90, caller expects 80"
Comment 1 attila.kover 2019-12-19 18:42:03 UTC
Same problem here under 12.1-RELEASE on an iMac 14,2, either with pkg and port install. OS: FreeBSD macbsd 12.1-RELEASE FreeBSD 12.1-RELEASE r354233 GENERIC amd64
Comment 2 storm16 2020-08-04 22:24:37 UTC
Spoke to the upstream developers on irc and was given the following advice: 14:06 < VulcanRidr> I have a question. I am trying to install ufoai 2.5_9 on FreeBSD 12.1p7. Game installs fine, but when I try to start it, it quits with the error, "Wrong JPEG library version: library is 90, caller expects 80" Is there a fix available for this? 14:11 < Soliton> the error means the game was built with version 80 but gets executed with version 90. 14:11 < Soliton> rebuild the game or install the older lib version. 14:12 < Soliton> (or run in a way that the older lib version is actually used.) 14:16 < VulcanRidr> So if I recompile from source, it will pick up the new version? 14:18 < Soliton> i have no clue how your os works but that sounds like a sane assumption. I have the source, will have a go at compiling and report my results.
Comment 4 storm16 2020-08-05 01:32:59 UTC
I believe the Makefile is geared toward linux, since it has thing like CC = gcc, CXX = g++, and so forth. Believe we need a FreeBSD-specific Makefile.
Comment 5 attila.kover 2020-08-05 16:43:22 UTC
(In reply to storm16 from comment #3) This is FreeBSD, not Linux. FreBSD make works with FreeBSD Makefile. If you got a Makefile with GNU syntax, then you need to use gmake instead of make.
Comment 6 attila.kover 2020-08-05 16:48:01 UTC
(In reply to storm16 from comment #4) The FreeBSD Makefiles are in /usr/ports/
Comment 7 attila.kover 2020-08-05 17:42:36 UTC
(In reply to storm16 from comment #3) Just compiled 2.6 from git source (had to disable ufo2map and testall at configure and slightly edit src/tools/radiant/radiant/exec.cpp) After launching the compiled ufo binary, it shows the splash screen and then it quits with the familiar error message: Music: track changed from to van_theme. executing autoexec.cfg "version" is "UFO: Alien Invasion 2.6-dev AMD64 Aug 5 2020 FreeBSD DEBUG" Wrong JPEG library version: library is 90, caller expects 80
Comment 8 m.tsatsenko 2020-08-05 21:41:23 UTC
So, at least we have something. Can you please post ldd output for the game binary?
Comment 9 Dmitry Marakasov 2020-08-05 22:33:17 UTC
Sorry, I forgot abouth this PR completely. The problem is trivial - it bundles its own version of jpeg. I'm testing the fix right now.
Comment 10 Dmitry Marakasov 2020-08-05 23:02:00 UTC
Created attachment 217041 [details] Patch - Fix detection of system jpeg by adding USES=localbase, this fixes crash on game start due to libraries conflict - Make sure that bundled (ancient and likely vulnerable) third party libraries are not used by removing most of them - Add missing depends - Portlint nits - Modernize options handling - Silence patching - Simplify radiant data installation - Fix absolute symlink
Comment 11 storm16 2020-08-06 01:20:50 UTC
(In reply to Dmitry Marakasov from comment #10) So download ufoai.patch, and patch -p1 /usr/ports/games/ufoai/Makefile < ufoai.patch make install clean Is this the right process? Because I think I missed a step. When I did it, it stopped and asked: ===> Applying distribution patches for ufoai-2.5_10 ===> Applying FreeBSD patches for ufoai-2.5_10 from /usr/ports/games/ufoai/files File to patch: What did I miss?
Comment 12 Dmitry Marakasov 2020-08-06 14:21:44 UTC
> What did I miss? There was an empty file left in files/ after patching. You need to either remove it or patch with -E.
Comment 13 commit-hook 2020-08-07 20:23:40 UTC
A commit references this bug: Author: amdmi3 Date: Fri Aug 7 20:22:47 UTC 2020 New revision: 544349 URL: https://svnweb.freebsd.org/changeset/ports/544349 Log: - Fix detection of system jpeg by adding USES=localbase, this fixes crash on game start due to libraries conflict - Fix build failure on 12.x i386 related to linking with OpenAL - Remove most bundled third party librarues ti ensure they are not used - Add missing depends - Portlint nits - Modernize options handling - Silence patching - Simplify radiant data installation - Fix absolute symlink PR: 242612 Reported by: firstname.lastname@example.org, email@example.com, firstname.lastname@example.org Approved by: maintainer timeout (email@example.com, 8 months) Changes: head/games/ufoai/Makefile head/games/ufoai/files/patch-src__libs__vorbis__config.h head/games/ufoai/pkg-plist