Ah, I had a feeling we'll have issues after the recent updates, lol. Thanks, @Crandel, will push the patch soon!
Search Criteria
Package Details: vcmi 1.6.5-2
Package Actions
Git Clone URL: | https://aur.archlinux.org/vcmi.git (read-only, click to copy) |
---|---|
Package Base: | vcmi |
Description: | Open-source engine for Heroes of Might and Magic III |
Upstream URL: | http://vcmi.eu |
Keywords: | homm homm3 vcmi |
Licenses: | GPL-2.0-or-later AND CC-BY-SA-4.0 |
Conflicts: | vcmi |
Provides: | vcmi |
Submitter: | Raziel23 |
Maintainer: | Gigas002 |
Last Packager: | Gigas002 |
Votes: | 51 |
Popularity: | 0.68 |
First Submitted: | 2013-03-12 14:11 (UTC) |
Last Updated: | 2025-02-10 14:36 (UTC) |
Dependencies (20)
- boost-libs
- ffmpeg (ffmpeg-nvcodec-11-1-gitAUR, ffmpeg-cudaAUR, ffmpeg-decklinkAUR, ffmpeg-amd-fullAUR, ffmpeg-ffplayoutAUR, ffmpeg-gitAUR, ffmpeg-amd-full-gitAUR, ffmpeg-fullAUR, ffmpeg-full-gitAUR, ffmpeg-libfdk_aacAUR, ffmpeg-headlessAUR, ffmpeg-obsAUR)
- fuzzyliteAUR (fuzzylite-gitAUR)
- hicolor-icon-theme (hicolor-icon-theme-gitAUR)
- libxkbcommon-x11 (libxkbcommon-x11-gitAUR)
- luajit (luajit-2.1-lua52-gitAUR, luajit-gitAUR, luajit-openrestyAUR)
- onetbb
- qt6-base (qt6-base-gitAUR, qt6-base-noguiAUR, qt6-base-headlessAUR)
- sdl2_image
- sdl2_mixer
- sdl2_ttf
- boost (boost-gitAUR) (make)
- ccache (ccache-gitAUR) (make)
- cmake (cmake-gitAUR) (make)
- git (git-gitAUR, git-glAUR) (make)
- minizip (minizip-gitAUR) (make)
- qt6-tools (make)
- innoextract (innoextract-gitAUR) (optional) – required by vcmibuilder
- unshield (unshield-gitAUR) (optional) – required by vcmibuilder
- unzip (unzip-natspecAUR, unzip-zstdAUR) (optional) – required by vcmibuilder
Required by (1)
Sources (1)
Gigas002 commented on 2025-02-10 14:31 (UTC)
Crandel commented on 2025-02-10 09:36 (UTC)
If build failed with error
[ 86%] Building CXX object client/CMakeFiles/vcmiclientcommon.dir/render/CDefFile.cpp.o
In file included from /data/linux/bb/vcmi/src/vcmi-1.6.5/client/media/CMusicHandler.cpp:25:
/usr/include/SDL2/SDL_mixer.h:269:16: error: using typedef-name ‘using Mix_Music = struct _Mix_Music’ after ‘struct’
269 | typedef struct Mix_Music Mix_Music;
| ^~~~~~~~~
In file included from /data/linux/bb/vcmi/src/vcmi-1.6.5/client/media/CMusicHandler.cpp:11:
/data/linux/bb/vcmi/src/vcmi-1.6.5/client/media/CMusicHandler.h:18:7: note: ‘using Mix_Music = struct _Mix_Music’ has a previous declaration here
18 | using Mix_Music = struct _Mix_Music;
| ^~~~~~~~~
/usr/include/SDL2/SDL_mixer.h:269:26: error: conflicting declaration ‘typedef int Mix_Music’
269 | typedef struct Mix_Music Mix_Music;
| ^~~~~~~~~
/data/linux/bb/vcmi/src/vcmi-1.6.5/client/media/CMusicHandler.h:18:7: note: previous declaration as ‘using Mix_Music = struct _Mix_Music’
18 | using Mix_Music = struct _Mix_Music;
| ^~~~~~~~~
[ 86%] Building CXX object client/CMakeFiles/vcmiclientcommon.dir/render/Canvas.cpp.o
[ 87%] Building CXX object client/CMakeFiles/vcmiclientcommon.dir/render/CanvasImage.cpp.o
[ 87%] Building CXX object client/CMakeFiles/vcmiclientcommon.dir/render/ColorFilter.cpp.o
[ 87%] Building CXX object client/CMakeFiles/vcmiclientcommon.dir/render/Colors.cpp.o
make[2]: *** [client/CMakeFiles/vcmiclientcommon.dir/build.make:1248: client/CMakeFiles/vcmiclientcommon.dir/media/CMusicHandler.cpp.o] Error 1
make[2]: *** Waiting for unfinished jobs....
make[1]: *** [CMakeFiles/Makefile2:1248: client/CMakeFiles/vcmiclientcommon.dir/all] Error 2
here is the fix, until upstream will publish new version
mirandir commented on 2025-02-01 13:27 (UTC)
FYI, you'll need -DENABLE_INNOEXTRACT=ON to install Heroes Chronicles [https://github.com/vcmi/vcmi/blob/develop/docs/players/Heroes_Chronicles.md] With -DENABLE_INNOEXTRACT=OFF, VCMI segfaults when importing GOG files.
michaldybczak commented on 2025-01-06 12:15 (UTC) (edited on 2025-01-06 12:16 (UTC) by michaldybczak)
Build error, something with the font: [ 88%] Building CXX object client/CMakeFiles/vcmiclientcommon.dir/renderSDL/CTrueTypeFont.cpp.o
In file included from /home/michaldybczak/.build/vcmi/src/vcmi-1.6.2/client/renderSDL/CTrueTypeFont.cpp:23:
/usr/include/SDL2/SDL_ttf.h:165:16: error: using typedef-name ‘using TTF_Font = struct _TTF_Font’ after ‘struct’
165 | typedef struct TTF_Font TTF_Font;
| ^
~
In file included from /home/michaldybczak/.build/vcmi/src/vcmi-1.6.2/client/renderSDL/CTrueTypeFont.cpp:11:
/home/michaldybczak/.build/vcmi/src/vcmi-1.6.2/client/renderSDL/CTrueTypeFont.h:20:7: note: ‘using TTF_Font = struct _TTF_Font’ has a previous declaration here
20 | using TTF_Font = struct _TTF_Font;
| ^~
/usr/include/SDL2/SDL_ttf.h:165:25: error: conflicting declaration ‘typedef int TTF_Font’
165 | typedef struct TTF_Font TTF_Font;
| ^~
/home/michaldybczak/.build/vcmi/src/vcmi-1.6.2/client/renderSDL/CTrueTypeFont.h:20:7: note: previous declaration as ‘using TTF_Font = struct _TTF_Font’
20 | using TTF_Font = struct _TTF_Font;
| ^~
make[2]: *** [client/CMakeFiles/vcmiclientcommon.dir/build.make:1472: client/CMakeFiles/vcmiclientcommon.dir/renderSDL/CTrueTypeFont.cpp.o] Error 1
make[2]: *** Waiting for the unfinished tasks....
make[1]: *** [CMakeFiles/Makefile2:1248: client/CMakeFiles/vcmiclientcommon.dir/all] Error 2
make: *** [Makefile:156: all] Error 2
==> ERROR: Error in build().
Aborting...
By the way, what type of markings (code?) I have to use to make the output not be clamped together, like others did below?
Crandel commented on 2025-01-06 09:28 (UTC)
If you do not want to wait for the fix from devs here is a dirty working solution
Gigas002 commented on 2025-01-06 07:28 (UTC)
@Crandel I think sdl2_ttf update caused this to happen. Similar issue is open in upstream: https://github.com/vcmi/vcmi/issues/5207
Crandel commented on 2025-01-06 06:57 (UTC)
Somehow it was not working for both gcc and clang with the same error
In file included from /data/linux/bb/vcmi/src/vcmi-1.6.2/client/renderSDL/CTrueTypeFont.cpp:23:
/usr/include/SDL2/SDL_ttf.h:165:16: error: type alias 'TTF_Font' cannot be referenced with a struct specifier
165 | typedef struct TTF_Font TTF_Font;
| ^
/data/linux/bb/vcmi/src/vcmi-1.6.2/client/renderSDL/CTrueTypeFont.h:20:7: note: declared here
20 | using TTF_Font = struct _TTF_Font;
| ^
[ 91%] Building CXX object client/CMakeFiles/vcmiclientcommon.dir/globalLobby/GlobalLobbyServerSetup.cpp.o
1 error generated.
make[2]: *** [client/CMakeFiles/vcmiclientcommon.dir/build.make:1472: client/CMakeFiles/vcmiclientcommon.dir/renderSDL/CTrueTypeFont.cpp.o] Error 1
make[2]: *** Waiting for unfinished jobs....
make[1]: *** [CMakeFiles/Makefile2:1428: client/CMakeFiles/vcmiclientcommon.dir/all] Error 2
make: *** [Makefile:156: all] Error 2
==> ERROR: A failure occurred in build().
Aborting...
-> error making: vcmi-exit status 4
mk_root commented on 2024-09-29 04:50 (UTC) (edited on 2024-09-29 04:51 (UTC) by mk_root)
[ 98%] Building CXX object client/CMakeFiles/vcmiclient.dir/ServerRunner.cpp.o
/var/tmp/pamac-build-mk/vcmi/src/vcmi-1.5.7/client/ServerRunner.cpp:13:10: fatal error: boost/process/v1/child.hpp: No such file or directory
13 | #include <boost/process/v1/child.hpp>
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
make[2]: *** [client/CMakeFiles/vcmiclient.dir/build.make:2701: client/CMakeFiles/vcmiclient.dir/ServerRunner.cpp.o] Error 1
make[2]: *** Waiting for unfinished jobs....
make[1]: *** [CMakeFiles/Makefile2:951: client/CMakeFiles/vcmiclient.dir/all] Error 2
make: *** [Makefile:156: all] Error 2
==> ERROR: A failure occurred in build().
Aborting...
Looks like it similar to related bug https://github.com/vcmi/vcmi/issues/4561#issuecomment-2333877704
Version 1.5.7-2
Gigas002 commented on 2024-09-06 16:07 (UTC)
@Crandel Thank you for the contribution! I've tested the patch and everything seems to work for me. Added to a package until 1.6.x releases
Crandel commented on 2024-09-06 11:47 (UTC)
@Gigas002
there is a patch available in the comments of my issue https://github.com/vcmi/vcmi/issues/4561#issuecomment-2333877704
Pinned Comments
Gigas002 commented on 2024-05-29 15:08 (UTC)
PKGBUILD
tweaksIf you want to build with
clang
, add this part tocmake
flags:If you want to use bundled
fuzzylite
:If you want to use
innoextract
(system-wide installation won't work since vcmi has a temporary? fork ofinnoextract
for now):