Package Details: golly 5.0-1

Git Clone URL: https://aur.archlinux.org/golly.git (read-only, click to copy)
Package Base: golly
Description: A simulator for Conway's Game of Life and other cellular automata
Upstream URL: http://golly.sourceforge.net/
Keywords: automata cell cellular conway game life simulator
Licenses: GPL-2.0-only
Submitter: None
Maintainer: Jake
Last Packager: Jake
Votes: 112
Popularity: 0.77
First Submitted: 2008-07-25 09:19 (UTC)
Last Updated: 2026-01-12 22:54 (UTC)

Dependencies (5)

Required by (0)

Sources (2)

Latest Comments

1 2 3 4 5 6 Next › Last »

tslil commented on 2026-08-05 10:03 (UTC)

thank you, that did the trick!

maksverver commented on 2026-08-05 08:48 (UTC)

@tslil: that's one option, another easy fix is to add -std=c++17 to CXXFLAGS in the PKGBUILD, at least until the next release:

--- a/PKGBUILD
+++ b/PKGBUILD
@@ -27,7 +27,7 @@ prepare() {

   cat >local-gtk.mk <<EOF
 GOLLYDIR=/usr/share/golly
-CXXFLAGS=${CXXFLAGS}
+CXXFLAGS=${CXXFLAGS} -std=c++17
 LDFLAGS=${LDFLAGS}
 EOF
 }

You can also do this on the commandline without modifying the PKGBUILD with: makepkg CXXFLAGS+=" -std=c++17"

tslil commented on 2026-08-04 18:44 (UTC)

here's the build error i see

../cmdline/bgolly.cpp:159:58: error: reference to ‘popcount’ is ambiguous
  159 |   { "",   "--popcount", "Popcount (benchmarking)", 'b', &popcount },
      |                                                          ^~~~~~~~
  • there are 2 candidates
In file included from /usr/include/c++/16/bits/stl_algobase.h:75,
                 from /usr/include/c++/16/vector:64,
                 from ../gollybase/lifealgo.h:22,
                 from ../gollybase/qlifealgo.h:9,
                 from ../cmdline/bgolly.cpp:4:
    • candidate 1: ‘template<class _Tp>  requires  __unsigned_integer<_Tp> constexpr int std::popcount(_Tp)’
      /usr/include/c++/16/bit:446:5:
        446 |     popcount(_Tp __x) noexcept
            |     ^~~~~~~~
    • candidate 2: ‘int popcount’
      ../cmdline/bgolly.cpp:129:29:
        129 | int render, autofit, quiet, popcount, progress ;
            |                             ^~~~~~~~
../cmdline/bgolly.cpp: In function ‘int main(int, char**)’:
../cmdline/bgolly.cpp:658:11: error: reference to ‘popcount’ is ambiguous
  658 |       if (popcount)
      |           ^~~~~~~~
  • there are 2 candidates
    • candidate 1: ‘template<class _Tp>  requires  __unsigned_integer<_Tp> constexpr int std::popcount(_Tp)’
      /usr/include/c++/16/bit:446:5:
        446 |     popcount(_Tp __x) noexcept
            |     ^~~~~~~~
    • candidate 2: ‘int popcount’
      ../cmdline/bgolly.cpp:129:29:
        129 | int render, autofit, quiet, popcount, progress ;
            |                             ^~~~~~~~

do you think we could include the header patch in this package for now @maksverver?

maksverver commented on 2026-07-02 20:18 (UTC)

@edtoml Can you post the full build log? The snippet you included only contains a warning which feels like it should not be fatal.

When building locally, I did notice a compiler error due to a conflict with std::bitcount. That can be fixed with this patch: https://pastebin.com/raw/CaXSgrQz (also fixed upstream, but not part of a release yet).

edtoml commented on 2026-07-02 15:51 (UTC) (edited on 2026-07-02 15:52 (UTC) by edtoml)

This no longer builds. I get the following error

ar rcu liblua.a lapi.o lcode.o lctype.o ldebug.o ldo.o ldump.o lfunc.o lgc.o llex.o lmem.o lobject.o lopcodes.o lparser.o lstate.o lstring.o ltable.o ltm.o lundump.o lvm.o lzio.o lauxlib.o lbaselib.o lcorolib.o ldblib.o liolib.o lmathlib.o loslib.o lstrlib.o ltablib.o lutf8lib.o loadlib.o linit.o
ar: `u' modifier ignored since `D' is the default (see `U')
ranlib liblua.a
make[1]: Leaving directory '/home/ed/.cache/yay/golly/src/golly-5.0-src/lua'
wxlayer.cpp: In function ‘void LoadRuleInfo(FILE*, const wxString&, bool*, bool*, bool*)’:
wxlayer.cpp:2089:28: warning: ‘char* __builtin_strncpy(char*, const char*, long unsigned int)’ output may be truncated copying between 0 and 4094 bytes from a string of length 4094 [-Wstringop-truncation]
 2089 |                     strncpy(str, linebuf+1, len);
      |                            ^
==> ERROR: A failure occurred in build().
    Aborting...
 -> error making: golly-exit status 4
 -> Failed to install the following packages. Manual intervention is required:

patlefort commented on 2024-05-17 00:20 (UTC)

Missing python-setuptools in makedepends. Tested in clean container.

maksverver commented on 2024-03-04 15:51 (UTC)

As I mentioned before, Perl has not been supported by upstream for years. It's probably best to finally remove it from the PKGBUILD, to align the configuration with upstream, and make PKGBUILD maintenance easier going forward.

If someone actually uses Perl scripts in Golly (that cannot easily be ported to Lua or Python) they should probably leave a comment, but I suspect nobody cares about Perl support anymore.

For reference, here is an updated PKGBUILD for Golly 4.2 with Perl support removed: https://pastebin.com/raw/WzC9xYp6

mod20 commented on 2024-02-28 15:22 (UTC) (edited on 2024-02-28 15:23 (UTC) by mod20)

I am getting compile errors (using all latest package versions):

wxperl.cpp: In function 'void pl_help(PerlInterpreter*, CV*)':
wxperl.cpp:231:34: error: invalid conversion from 'char* (*)(PerlInterpreter*, SV*, STRLEN*, I32)' {aka 'char* (*)(interpreter*, sv*, long unsigned int*, int)'} to 'char* (*)(PerlInterpreter*, SV*, STRLEN*, U32)' {aka 'char* (*)(interpreter*, sv*, long unsigned int*, unsigned int)'} [-fpermissive]
  231 | #define Perl_sv_2pv_flags        G_Perl_sv_2pv_flags
      |                                  ^~~~~~~~~~~~~~~~~~~
      |                                  |
      |                                  char* (*)(PerlInterpreter*, SV*, STRLEN*, I32) {aka char* (*)(interpreter*, sv*, long unsigned int*, int)}
/usr/lib/perl5/5.38/core_perl/CORE/sv.h:1953:21: note: in expansion of macro 'Perl_sv_2pv_flags'
 1953 |                     Perl_sv_2pv_flags, FALSE, 0)
      |                     ^~~~~~~~~~~~~~~~~
/usr/lib/perl5/5.38/core_perl/CORE/sv.h:1972:37: note: in expansion of macro 'SvPV_flags'
 1972 | #define SvPV(sv, len)               SvPV_flags(sv, len, SV_GMAGIC)
      |                                     ^~~~~~~~~~
wxperl.cpp:3021:28: note: in expansion of macro 'SvPV'
 3021 |     const char* htmlfile = SvPV(ST(0), n_a);
      |                            ^~~~
/usr/lib/perl5/5.38/core_perl/CORE/sv_inline.h:911:27: note:   initializing argument 6 of 'char* Perl_SvPV_helper(PerlInterpreter*, SV*, STRLEN*, U32, PL_SvPVtype, char* (*)(PerlInterpreter*, SV*, STRLEN*, U32), bool, U32)'
  911 |                  char * (*non_trivial)(pTHX_ SV *, STRLEN * const, const U32),
      |                  ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

This gets repeated several times for all kinds of pl_* functions.

maksverver commented on 2023-02-09 21:52 (UTC)

Perl scripting is no longer supported in the official release, but the source code for it is still present, and the current PKGBUILD enables Perl scripting manually.

However, as it happens the current build doesn't work with the current version of Perl (5.36.0) because of a missing symbol (Perl_newSV_type). It turns out that fixing it is far from trivial because of the nonstandard way Golly uses Perl (it uses dlopen() to access libperl.so on demand, rather than having a binary dependency on libperl.so directly).

Perhaps the time has come to drop Perl support from the PKGBUILD. It does seem more consistent with the Arch Linux packaging principles as described here: https://wiki.archlinux.org/title/Arch_Linux#Simplicity

Here is an updated PKGBUILD without Perl support: https://gist.githubusercontent.com/maksverver/ebba5f944a5ac17f73774c93ce28943c/raw/b9f7f584af5a88af949f156ff591c8bd79938fdd/PKGBUILD

AlephAlpha commented on 2023-02-09 03:14 (UTC)

Is the perl dependency still required? I think Perl scripting support was removed in version 2.8.