Suggestions for ports
-
@quicksilver That's weird, since the
pthread
library should be present on any modern Linux system. Clean up your build folder and re-try, but if you want to debug this further post thecmake
output as you invoke it, not the log files (they're not very useful). -
@mitu It failed again. Here is the output from the terminal: https://pastebin.com/eEpuaxXE
-
@quicksilver The
vcmi
repository has 2 sub-modules, which you're missing. Rungit submodule init git submodule update
from the source folder and re-run
cmake
. -
@mitu It still produces the same error. To be clear Im running those commands from the vcmi folder correct?
-
@quicksilver said in Suggestions for ports:
. To be clear Im running those commands from the vcmi folder correct?
Yes. What does
git submodule
says when you run it ? -
@mitu nothing.
edit: though I do have two VCMI folders. One is called vcmi-0.99+dfsg+git20190113.f06c8a87, and it was the original one. Early at one point I tried to run the install again and it said something about getting the latest updates that may not be in the repo so I did what it said and it seem it made another duplicate folder named vcmi but it has the same contents. When I run git submodule from vcmi-0.99+dfsg+git20190113.f06c8a87 it says "fatal: not a git repository (or any of the parent directories): .git"
-
@quicksilver Don't mix compilation of the
.deb
package with the install instructions given on the project's page. You either use the Debian packaging tools or compile from source directly. If you installed the needed build dependencies viaapt-source
, then clone the repository viagit
and follow the installation instructions. -
@mitu Thank you for your patience! I will start over completely. Is there a proper way to remove what I have so far or can I just delete the files using winscp?
-
Just delete the files, it should be enough.
-
@mitu its building now. Thank you for sticking with me here. After its finished, the last part on the build guide is about package building (see below). Do I follow the instructions for RPM package and debian? Or just the debian part?
Package building
RPM package
The first step is to prepare a RPM build environment. On Fedora systems you can follow this guide: http://fedoraproject.org/wiki/How_to_create_an_RPM_package#SPEC_file_overview-
Download the file rpm/vcmi.spec from any tagged VCMI release for which you wish to build a RPM package via the SVN Browser trac at this URL for example(which is for VCMI 0.9): http://sourceforge.net/apps/trac/vcmi/browser/tags/0.9/rpm/vcmi.spec
-
Copy the file to ~/rpmbuild/SPECS
-
Follow instructions in the vcmi.spec. You have to export the corresponding SVN tag, compress it to a g-zipped archive and copy it to ~/rpmbuild/SOURCES. Instructions are written as comments and you can copy/paste commands into terminal.
-
Go to ~/rpmbuild/SPECS and open terminal in this folder and type:
rpmbuild -ba vcmi.spec (this will build rpm and source rpm) -
Generated RPM is in folder ~/rpmbuild/RPMS
If you want to package the generated RPM above for different processor architectures and operating systems you can use the tool mock. Moreover, it is necessary to install mock-rpmfusion_free due to the packages ffmpeg-devel and ffmpeg-libs which aren't available in the standard RPM repositories(at least for Fedora). Go to ~/rpmbuild/SRPMS in terminal and type:
mock -r fedora-17-i386-rpmfusion_free path_to_source_RPM
mock -r fedora-17-x86_64-rpmfusion_free path_to_source_RPM
Available root environments and their names are listed in /etc/mock.Debian/Ubuntu
-
Install debhelper and devscripts packages
-
Run dpkg-buildpackage command from vcmi source directory
sudo apt-get install debhelper devscripts
cd /path/to/source
dpkg-buildpackage
To generate packages for different architectures see "-a" flag of dpkg-buildpackage commandDocumentation
To compile using Doxygen, the UseDoxygen CMake module must be installed. It can be fetched from: http://tobias.rautenkranz.ch/cmake/doxygen/Once UseDoxygen is installed, run:
cmake .
make doc
The built documentation will be available from ./doc -
-
And it ran out of memory :( I guess thats what I get for buying the pi 4 2gb version.
virtual memory exhausted: Cannot allocate memory make[2]: *** [lib/CMakeFiles/vcmi.dir/build.make:918: lib/CMakeFiles/vcmi.dir/registerTypes/RegisterTypes.cpp.o] Error 1 make[2]: *** Waiting for unfinished jobs.... make[1]: *** [CMakeFiles/Makefile2:163: lib/CMakeFiles/vcmi.dir/all] Error 2 make: *** [Makefile:163: all] Error 2
Edit: Im looking into increasing the swap file size. Im going to do some googling and will report back.
-
@quicksilver If you installed from source, there's no need for the packaging step.
-
Success! It works!
Performance is actually pretty good. I do have an issue that the sound isnt working but Ill see what I can do about that. @mitu I feel a bit like a kid jumping in the deep end of the pool but I learned a lot from this. So thank you!
Edit: sound is working now, just had to reboot apparently
-
@quicksilver
Can i got info how to install VCMI on my pi too ? plz :)
or its a crazy install ... -
@shavecat For someone who doesn't know quite what they are doing (like myself) it was a little difficult and I needed lots of help from mitu. Hopefully now that we know it works properly, maybe I can figure out how to make a script module for building vcmi without all the manual steps and a launching script so that it can be launched using runcommand through retropie. The biggest issue is that building from source maxed out the 2gb of memory that my pi 4 has, so I was forced to increase my file swap size to compensate. Pi 4 4gb models shouldn't have this issue.
-
So I think I'll hold off on anything further with vcmi. The performance is great, the game runs fullspeed. However I have already encountered a few issues. The AI is rather dumb, it will hire new heroes at a ridiculous rate but rarely gives them a decent army. Many AI castles were left completely undefended even though they had the ability to hire more units. There was also a weird visual glitch that occured on some of the battlefields like some of the background textures were missing. It looks like vcmi is still being developed but has been stuck on version 0.99x for about two years now. Hopefully if/when they release version 1.0 it will be indistinguishable from the original HMM3.
-
tpo1990 what about to make a script for this game doom2D
-
I'm curious to try building openmw (morrowind) or xash3d (halflife one). Before I attempt, has anyone already tried?
-
@quicksilver xash3d works fine for what the Pi3 can push. so i think youll be able to get it going, somehow
-
@retropi19 Thank you for reminding me of this alternative doom experience. From what I found, is that Doom 2D is a fan based DOS port. So you should be able to run the game with dosbox emulator in RetroPie.
Contributions to the project are always appreciated, so if you would like to support us with a donation you can do so here.
Hosting provided by Mythic-Beasts. See the Hosting Information page for more information.