zerojay / RetroPie-Extra

A collection of unofficial scripts for adding more emulators/ports/games to RetroPie.
MIT License
309 stars 101 forks source link

OpenXCOM Install error #288

Closed justnibio closed 3 years ago

justnibio commented 6 years ago

Retropie 4.4 on Raspberry pi 3 b+

This is the log:

Log started at: Sun 20 May 08:23:15 UTC 2018

RetroPie-Setup version: 4.4 (cda9ffcb) System: Linux retropie 4.14.30-v7+ #1102 SMP Mon Mar 26 16:45:49 BST 2018 armv7l GNU/Linux

= = = = = = = = = = = = = = = = = = = = = Installing dependencies for 'openxcom' : OpenXCOM - Open Source X-COM Engine = = = = = = = = = = = = = = = = = = = = =

Did not find needed package(s): libyaml-cpp-dev. I am trying to install them now. Hit:1 http://archive.raspberrypi.org/debian stretch InRelease Hit:2 http://raspbian.raspberrypi.org/raspbian stretch InRelease Reading package lists... Reading package lists... Building dependency tree... Reading state information... The following packages were automatically installed and are no longer required: libwayland-cursor0 libwayland-egl1-mesa Use 'sudo apt autoremove' to remove them. The following additional packages will be installed: libboost-dev libyaml-cpp0.5v5 Suggested packages: libboost-doc The following NEW packages will be installed: libboost-dev libyaml-cpp-dev libyaml-cpp0.5v5 0 upgraded, 3 newly installed, 0 to remove and 17 not upgraded. Need to get 297 kB of archives. After this operation, 1,473 kB of additional disk space will be used. Get:1 http://raspbian.mirrors.lucidnetworks.net/raspbian stretch/main armhf libboost-dev armhf 1.62.0.1+b4 [3,920 B] Get:2 http://raspbian.mirrors.lucidnetworks.net/raspbian stretch/main armhf libyaml-cpp0.5v5 armhf 0.5.2-4 [124 kB] Get:3 http://raspbian.mirrors.lucidnetworks.net/raspbian stretch/main armhf libyaml-cpp-dev armhf 0.5.2-4 [170 kB] Fetched 297 kB in 2s (124 kB/s) Selecting previously unselected package libboost-dev:armhf. (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 123515 files and directories currently installed.) Preparing to unpack .../libboost-dev_1.62.0.1+b4_armhf.deb ... Unpacking libboost-dev:armhf (1.62.0.1+b4) ... Selecting previously unselected package libyaml-cpp0.5v5:armhf. Preparing to unpack .../libyaml-cpp0.5v5_0.5.2-4_armhf.deb ... Unpacking libyaml-cpp0.5v5:armhf (0.5.2-4) ... Selecting previously unselected package libyaml-cpp-dev. Preparing to unpack .../libyaml-cpp-dev_0.5.2-4_armhf.deb ... Unpacking libyaml-cpp-dev (0.5.2-4) ... Processing triggers for libc-bin (2.24-11+deb9u3) ... Setting up libyaml-cpp0.5v5:armhf (0.5.2-4) ... Setting up libboost-dev:armhf (1.62.0.1+b4) ... Setting up libyaml-cpp-dev (0.5.2-4) ... Processing triggers for libc-bin (2.24-11+deb9u3) ... Successfully installed package(s): libyaml-cpp-dev. /home/pi/RetroPie-Setup/tmp/build/openxcom /home/pi

= = = = = = = = = = = = = = = = = = = = = Getting sources for 'openxcom' : OpenXCOM - Open Source X-COM Engine = = = = = = = = = = = = = = = = = = = = =

git clone --recursive --depth 1 "https://github.com/SupSuper/OpenXCOM.git" "/home/pi/RetroPie-Setup/tmp/build/openxcom/openxcom" Cloning into '/home/pi/RetroPie-Setup/tmp/build/openxcom/openxcom'... /home/pi /home/pi/RetroPie-Setup/tmp/build/openxcom /home/pi

= = = = = = = = = = = = = = = = = = = = = Building 'openxcom' : OpenXCOM - Open Source X-COM Engine = = = = = = = = = = = = = = = = = = = = =

-- The C compiler identification is GNU 6.3.0 -- The CXX compiler identification is GNU 6.3.0 -- Check for working C compiler: /usr/bin/cc -- Check for working C compiler: /usr/bin/cc -- works -- Detecting C compiler ABI info -- Detecting C compiler ABI info - done -- Detecting C compile features -- Detecting C compile features - done -- Check for working CXX compiler: /usr/bin/c++ -- Check for working CXX compiler: /usr/bin/c++ -- works -- Detecting CXX compiler ABI info -- Detecting CXX compiler ABI info - done -- Detecting CXX compile features -- Detecting CXX compile features - done -- Looking for pthread.h -- Looking for pthread.h - found -- Looking for pthread_create -- Looking for pthread_create - not found -- Looking for pthread_create in pthreads -- Looking for pthread_create in pthreads - not found -- Looking for pthread_create in pthread -- Looking for pthread_create in pthread - found -- Found Threads: TRUE
-- Found PkgConfig: /usr/bin/pkg-config (found version "0.29") CMake Error at cmake/modules/FindYaml_cpp.cmake:29 (message): YAML-CPP 0.5.2 is known broken - please use either 0.5.1 or 0.5.3+ Call Stack (most recent call first): CMakeLists.txt:61 (find_package)

-- Configuring incomplete, errors occurred! See also "/home/pi/RetroPie-Setup/tmp/build/openxcom/openxcom/build/CMakeFiles/CMakeOutput.log". See also "/home/pi/RetroPie-Setup/tmp/build/openxcom/openxcom/build/CMakeFiles/CMakeError.log". make: *** No targets specified and no makefile found. Stop. /home/pi Could not successfully build openxcom - OpenXCOM - Open Source X-COM Engine (/home/pi/RetroPie-Setup/tmp/build/openxcom/openxcom/build/bin/openxcom not found).

zerojay commented 6 years ago

This looks more like an issue with Raspbian here as I don't control what version of YAML-CPP it has available. Might be possible to remove that check from the makefile and try again to see what it gives you.

symbios24 commented 6 years ago

I compiled Openxcom with make it works using this short instructions under taken from this page:

https://www.ufopaedia.org/index.php?title=Compiling_(OpenXcom)

apt-get install --no-install-recommends build-essential libboost-dev libsdl1.2-dev libsdl-mixer1.2-dev libsdl-image1.2-dev libsdl-gfx1.2-dev libyaml-cpp-dev xmlto

git clone https://github.com/SupSuper/OpenXcom.git

cd OpenXcom/src

make -f Makefile.simple

execute the game from OpenXcom/bin/openxcom

it flickers maybe it needs the xinit command i did not try that.can you give it a shot and add it to the ports?

sonicsheppard commented 5 years ago

I'm happy to try this method and report back, using xinit, if someone can give me exact instructions and terminal commands to get this installed and made for current Stretch RetroPie images.

I'm not a complete n00b, but I have limited experience with this kind of thing, so any detailed instructions would be appreciated. Very keen to get back into OpenXCom :).

Alternatively, is there no way to just update YAML-CPP in Raspian? I've tried to search for that info myself but haven't found anything that I could follow.

Thanks!

sonicsheppard commented 5 years ago

Hello.

Decided to havea crack at this today and happy to report it seems to work well. To confirm this is what I did:

1) Exit emulationstation 2) From terminal (/home/pi/), enter the following - as described above: apt-get install --no-install-recommends build-essential libboost-dev libsdl1.2-dev libsdl-mixer1.2-dev libsdl-image1.2-dev libsdl-gfx1.2-dev libyaml-cpp-dev xmlto git clone https://github.com/SupSuper/OpenXcom.git cd OpenXcom/src make -f Makefile.simple 3) Launching openxcom from OpenXcom/bin/ does result in flickering, but when using sudo xinit ./openxcom the port launched without flickering.

Was able to add in my mods, game data files and even previous save data files and everything looks to work well - Terror from the Deep also worked.

One question, can I remove the contents of /home/pi/OpenXcom - excluding the 'bin' folder, once it had been made? Or should I just leave everything there?

Thanks again everyone, glad to have this back up and running!

zerojay commented 5 years ago

I'll try to look into this when I can. Thanks for giving it a shot.

andy5macht commented 5 years ago

I wasn´t able to launch fofix with this description. Could you describe more precisely how to launch fofix with openxcom?

zerojay commented 3 years ago

Okay, so I believe that what is going on here is that maybe the glshim that we were using that worked previously doesn't work on Stretch/Buster or isn't needed anymore. I'll try to update this script today but I'll need you guys to test it as my Pi 3 is dead and I just have a Pi 4 right now.

zerojay commented 3 years ago

I've spent most of my day on this. Running make -f Makefile.simple results in a usable build, but doing the exact same thing from the retropie installation script results in an executable that crashes every time. No idea why.

zerojay commented 3 years ago

I suspect that what's happening here is that there's something that RetroPie is injecting, likely some CFLAGS, that are causing a bad compile because if I attempt to do it fully manually, I get a build that works, but it never works through the script even though I'm running the very same commands. I'm putting this rewrite of the script on ice in the unstable repo for now until I get a response back on how to potentially fix this from RetroPie.

zerojay commented 3 years ago

Okay, it looks like RetroPie's CFLAGS/CPPFLAGS are too aggressive for OpenXCOM. Seems to build okay with them removed. I will be updating the scriptmodule with this change shortly.