Re: [BUG?] macOS (Intel) build warnings: "ranlib: file … has no symbols" for aarch64 objects

John Naylor <johncnaylorls@gmail.com>

From: John Naylor <johncnaylorls@gmail.com>
To: Nathan Bossart <nathandbossart@gmail.com>
Cc: Tom Lane <tgl@sss.pgh.pa.us>, Peter Eisentraut <peter@eisentraut.org>, Zhang Mingli <zmlpostgres@gmail.com>, PostgreSQL Hackers <pgsql-hackers@lists.postgresql.org>
Date: 2026-04-29T05:04:48Z
Lists: pgsql-hackers
On Wed, Apr 29, 2026 at 3:32 AM Nathan Bossart <nathandbossart@gmail.com> wrote:
>
> On Tue, Apr 28, 2026 at 09:09:09AM -0500, Nathan Bossart wrote:
> > On Tue, Apr 28, 2026 at 09:29:41AM -0400, Tom Lane wrote:
> >> If we do care, a low-tech solution could be to have a dummy symbol
> >> declared in each file, along the lines of
> >>
> >> #if HAVE_X86_64_POPCNTQ
> >> // code for popcntq case
> >> #elif HAVE_FROBNITZ
> >> // code for frobnitz case
> >> ...
> >> #else
> >> /* prevent linker complaints about empty module */
> >> extern int pg_cpu_x86_dummy_variable;
> >> int  pg_cpu_x86_dummy_variable = 0;
> >> #endif
> >>
> >> Actually then we'd not need to change the build systems either...
> >
> > I've been trying to avoid doing that, but it's a far simpler solution, and
> > in theory it should fix the problem for all platforms, too.  So, it's
> > probably the way to go.
>
> Here's a full set of patches for back-patching purposes.

+1

-#endif           /* USE_NEON */
+#else
...
+#endif

Is the removal of the comment intentional?

-- 
John Naylor
Amazon Web Services



Commits

Same data as JSON: GET /api/v1/messages/:b64id/commits the thread's linked commits as JSON, with link sources. API reference →
  1. Suppress "has no symbols" linker warnings on macOS.

  2. Fix two error messages in extended_stats_funcs.c