Package Details: prboom-plus 2.6.66-3

Git Clone URL: https://aur.archlinux.org/prboom-plus.git (read-only, click to copy)
Package Base: prboom-plus
Description: An advanced, Vanilla-compatible Doom engine based on PrBoom
Upstream URL: https://github.com/coelckers/prboom-plus
Keywords: doom engine game port
Licenses: GPL2
Conflicts: prboom-plus-svn, prboom-plus-um
Submitter: None
Maintainer: alexbrinister
Last Packager: alexbrinister
Votes: 27
Popularity: 0.21
First Submitted: 2006-08-04 12:15 (UTC)
Last Updated: 2025-08-10 18:19 (UTC)

Dependencies (12)

Required by (1)

Sources (1)

Latest Comments

1 2 3 Next › Last »

alexbrinister commented on 2025-08-10 18:20 (UTC)

@gamezelda updated per your comment.

gamezelda commented on 2025-05-01 15:11 (UTC)

The package does not build due to both CMake 4 removing compatibility with old versions, and GCC 15 upgrading the default standard to C23.

It can be fixed by adding the following two flags to the cmake command:

cmake -DCMAKE_POLICY_VERSION_MINIMUM=3.10 -DCMAKE_C_STANDARD=17 ...

alexbrinister commented on 2024-10-05 13:24 (UTC)

updated. thank you, @xormatrix, for providing the fix.

guss0ar commented on 2024-09-27 20:57 (UTC) (edited on 2024-09-27 21:32 (UTC) by guss0ar)

@xormatrix Thanks! Didn't expect you to reply so fast! time to slay some demons >:)

xormatrix commented on 2024-09-24 01:37 (UTC)

@guss0ar Of course, no problem at all :) all you have to do is change a line in the PKGBUILD file, this is the file which defines and says how an AUR package is downloaded and built/compiled. You can actually view the PKGBUILD right in a browser on this page by looking under "Package Actions" -> "View PKGBUILD" (should be on the right side on a desktop).

Are you looking at the PKGBUILD now? Good. Anyways, in the build() function on line 43 we have a command that looks like this: cmake -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_BUILD_TYPE=Release ../. See it? This is the line/command that needs to be changed to look like:

cmake -Wno-dev -DCMAKE_C_FLAGS="-Wno-error=incompatible-pointer-types" -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_BUILD_TYPE=Release ../

You have a couple of alternatives for changing the line depending on your setup, if you're using an AUR helper such as yay or paru, you can do:

  • yay -S --editmenu prboom-plus - this opens a menu where you can edit the PKGBUILD. You can use yay -S --editmenu --save prboom-plus if you want to make the PKGBUILD be saved which I would recommend, so if you need to rebuild the package for some reason you don't have to edit it again. Note that I don't actually use yay myself, but from what I've read this should work.
  • paru --fm vim -S prboom-plus, this is what I did as I use paru. The --fm option takes a file manager as its argument (such as vim, mc, etc). You can find the PKGBUILD at ~/.cache/paru/clone/prboom-plus/PKGBUILD.

If you don't use or have an AUR helper you can do:

  1. git clone https://aur.archlinux.org/prboom-plus.git - to download the PKGBUILD into a new directory called prboom-plus.
  2. cd prboom-plus - change to the newly-downloaded directory.
  3. Edit the PKGBUILD file, find the line that starts with cmake and change it to what I showed above.
  4. makepkg -srci - build/create the package and also install it.

If you have any problems feel free to reach out again :) I would also recommend that you check out some useful resources such as:

Sorry for all the technical crap I wrote in my first comment by that way, that is intended for the maintainer/manager of the package but he hasn't been online in more than a year so we'll see what happens. I also flagged this package out-of-date, hope that helps.

guss0ar commented on 2024-09-24 00:08 (UTC) (edited on 2024-09-24 00:36 (UTC) by guss0ar)

@xormatrix i didn't understand, i am new to linux in general and the AUR. I don't know what to search for to use your solution, if you have the time, please help me! Thanks

PS: If possible, step-by-step

xormatrix commented on 2024-09-21 15:56 (UTC)

This package is now impossible to build due to the new errors in GCC 14 and Clang 16, namely, the new default of -Werror=incompatible-pointer-types (see https://gcc.gnu.org/gcc-14/porting_to.html and https://releases.llvm.org/16.0.0/tools/clang/docs/ReleaseNotes.html#potentially-breaking-changes), I suppose that other compilers will follow suit. Also, PrBoom+ has been discontinued (since Jun 23, 2023) and we can therefore not send any pull requests or issues to amend this issue.

To keep this package in a working state, the best solution (as far as I know) is to add -DCMAKE_C_FLAGS="-Wno-error=incompatible-pointer-types" as an option to the cmake line such that any and all incompatible pointer type errors are downgraded to warnings.

I would also recommend that you add -Wno-dev to suppress any CMakeLists.txt warnings. Given these changes, the final cmake line would look as follows:

cmake -Wno-dev -DCMAKE_C_FLAGS="-Wno-error=incompatible-pointer-types" -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_BUILD_TYPE=Release ../

zzgraph commented on 2022-02-03 10:40 (UTC)

@architector4 portmidi is optional dependency, I first removed portmidi (and as a result python-pygame) then prboom-plus built successfully, then I reinstalled those packages that I removed before.

architector4 commented on 2021-10-29 22:40 (UTC) (edited on 2021-10-29 22:44 (UTC) by architector4)

Does not seem to build? (the issue is exactly the same when compiling with GCC instead of Clang)

...
[100%] Linking CXX executable ../prboom-plus
/usr/bin/ld: CMakeFiles/prboom-plus.dir/MUSIC/portmidiplayer.c.o: undefined reference to symbol 'Pt_Time'
/usr/bin/ld: /usr/lib/libporttime.so.1: error adding symbols: DSO missing from command line
clang-12: error: linker command failed with exit code 1 (use -v to see invocation)
make[2]: *** [src/CMakeFiles/prboom-plus.dir/build.make:2064: prboom-plus] Error 1
make[1]: *** [CMakeFiles/Makefile2:215: src/CMakeFiles/prboom-plus.dir/all] Error 2
make: *** [Makefile:136: all] Error 2
==> ERROR: A failure occurred in build().
    Aborting...

caepom commented on 2021-06-13 19:02 (UTC)

@alexbrinister Yeah, that makes sense. No need to have two packages that install the same thing. Do you know how do we go about merging the packages?