Package Details: openxcom-extended-git 6.9.7_r11408.74a61e2f6-1

Git Clone URL: https://aur.archlinux.org/openxcom-extended-git.git (read-only, click to copy)
Package Base: openxcom-extended-git
Description: An extended version of the open-source reimplementation of X-COM (OXCE) (git-version)
Upstream URL: https://openxcom.org/forum/index.php/topic,5251.0.html
Licenses: GPL3
Conflicts: openxcom
Provides: openxcom, openxcom-git
Submitter: WorMzy
Maintainer: WorMzy
Last Packager: WorMzy
Votes: 4
Popularity: 0.192566
First Submitted: 2019-07-01 20:13 (UTC)
Last Updated: 2021-03-01 17:44 (UTC)

Latest Comments

TimRachul commented on 2023-12-10 23:31 (UTC)

Thanks for the fast reply WorMzy! Good to know.

And all good, just wanted to report this. Can wait with newer builds / fixing itself :)

WorMzy commented on 2023-12-10 18:44 (UTC) (edited on 2023-12-10 18:45 (UTC) by WorMzy)

Unfortunately this will happen from time to time -- this package builds the bleeding-edge development version, and build bustage will happen occasionally. This particular breakage was introduced three hours ago, in this commit: https://github.com/MeridianOXC/OpenXcom/commit/4daad8595c50ca4cb070ecd8cab8518e1588259a

Looks like there's been a couple of commits since, one of which (~25m ago) is called "Fix conforming to C++ std", although this doesn't seem to address this error.

If you can't wait for the devs to fix up the code (ideally you should report it, although the repo doesn't have issues enabled AFAICS), try adding the suggested fix yourself by adding this to the end of the prepare() function: sed -i '/#include <memory>/a#include <utility>' openxcom-extended/src/Engine/CrossPlatform.h.

No guarantees the game will still run as expected though. If you need a stable build, maybe switch to https://aur.archlinux.org/packages/openxcom-extended instead.

TimRachul commented on 2023-12-10 17:31 (UTC) (edited on 2023-12-10 17:32 (UTC) by TimRachul)

I get this error when building the newest version and wanted to report it:

[ 6%] Building CXX object src/CMakeFiles/openxcom.dir/Basescape/ManufactureDependenciesTreeState.cpp.o In file included from /home/tim/.cache/paru/clone/openxcom-extended-git/src/openxcom-extended/src/Engine/Logger.h:22, from /home/tim/.cache/paru/clone/openxcom-extended-git/src/openxcom-extended/src/main.cpp:24: /home/tim/.cache/paru/clone/openxcom-extended-git/src/openxcom-extended/src/Engine/CrossPlatform.h: In member function ‘OpenXcom::RawData& OpenXcom::RawData::operator=(OpenXcom::RawData&&)’: /home/tim/.cache/paru/clone/openxcom-extended-git/src/openxcom-extended/src/Engine/CrossPlatform.h:64:30: error: ‘exchange’ is not a member of ‘std’ 64 | _data = std::exchange(d._data, std::unique_ptr<void, RawDataDeleteFun>{ nullptr, +{} }); | ^~ /home/tim/.cache/paru/clone/openxcom-extended-git/src/openxcom-extended/src/Engine/CrossPlatform.h:26:1: note: ‘std::exchange’ is defined in header ‘<utility>’; did you forget to ‘#include <utility>’? 25 | #include <memory> +++ |+#include <utility> 26 | /home/tim/.cache/paru/clone/openxcom-extended-git/src/openxcom-extended/src/Engine/CrossPlatform.h:65:30: error: ‘exchange’ is not a member of ‘std’ 65 | _size = std::exchange(d._size, 0u); | ^~ /home/tim/.cache/paru/clone/openxcom-extended-git/src/openxcom-extended/src/Engine/CrossPlatform.h:65:30: note: ‘std::exchange’ is defined in header ‘<utility>’; did you forget to ‘#include <utility>’? make[2]: *** [src/CMakeFiles/openxcom.dir/build.make:104: src/CMakeFiles/openxcom.dir/main.cpp.o] Error 1 make[2]: *** Waiting for unfinished jobs.... In file included from /home/tim/.cache/paru/clone/openxcom-extended-git/src/openxcom-extended/src/Basescape/CraftEquipmentState.cpp:26: /home/tim/.cache/paru/clone/openxcom-extended-git/src/openxcom-extended/src/Basescape/../Engine/CrossPlatform.h: In member function ‘OpenXcom::RawData& OpenXcom::RawData::operator=(OpenXcom::RawData&&)’: /home/tim/.cache/paru/clone/openxcom-extended-git/src/openxcom-extended/src/Basescape/../Engine/CrossPlatform.h:64:30: error: ‘exchange’ is not a member of ‘std’ 64 | _data = std::exchange(d._data, std::unique_ptr<void, RawDataDeleteFun>{ nullptr, +{} }); | ^~ /home/tim/.cache/paru/clone/openxcom-extended-git/src/openxcom-extended/src/Basescape/../Engine/CrossPlatform.h:26:1: note: ‘std::exchange’ is defined in header ‘<utility>’; did you forget to ‘#include <utility>’? 25 | #include <memory> +++ |+#include <utility> 26 | /home/tim/.cache/paru/clone/openxcom-extended-git/src/openxcom-extended/src/Basescape/../Engine/CrossPlatform.h:65:30: error: ‘exchange’ is not a member of ‘std’ 65 | _size = std::exchange(d._size, 0u); | ^~ /home/tim/.cache/paru/clone/openxcom-extended-git/src/openxcom-extended/src/Basescape/../Engine/CrossPlatform.h:65:30: note: ‘std::exchange’ is defined in header ‘<utility>’; did you forget to ‘#include <utility>’? make[2]: *** [src/CMakeFiles/openxcom.dir/build.make:230: src/CMakeFiles/openxcom.dir/Basescape/CraftEquipmentState.cpp.o] Error 1 make[1]: *** [CMakeFiles/Makefile2:142: src/CMakeFiles/openxcom.dir/all] Error 2 make: *** [Makefile:156: all] Error 2 ==> ERROR: A failure occurred in build(). Aborting... error: failed to build 'openxcom-extended-git-6.9.7_r11408.74a61e2f6-1': error: packages failed to build: openxcom-extended-git-6.9.7_r11408.74a61e2f6-1

Was building fine before, not sure if that is just an error in the upstream code, which i should report as a issue? (I'm a beginner)

Version info: Fetching devel info... ==> Making package: openxcom-extended-git 6.9.7_r11408.74a61e2f6-1 (Sun 10 Dec 2023 06:26:43 PM CET)