unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
* bug#36356: 27.0.50; linking error in git head on macos: _freea in libgnu
@ 2019-06-24 14:41 Sam Steingold
  2019-06-24 15:01 ` Basil L. Contovounesios
                   ` (2 more replies)
  0 siblings, 3 replies; 6+ messages in thread
From: Sam Steingold @ 2019-06-24 14:41 UTC (permalink / raw)
  To: 36356

"make bootstrap" fails with:

--8<---------------cut here---------------start------------->8---
  CCLD     temacs
Undefined symbols for architecture x86_64:
  "_freea", referenced from:
      _rpl_realpath in libgnu.a(canonicalize-lgpl.o)
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make[2]: *** [temacs] Error 1
make[1]: *** [src] Error 2
make: *** [bootstrap] Error 2
--8<---------------cut here---------------end--------------->8---

when I comment out HAVE_ALIGNED_ALLOC, HAVE_ALLOCA, HAVE_ALLOCA_H,
HAVE_DECL_ALIGNED_ALLOC in config.h, the error becomes

--8<---------------cut here---------------start------------->8---
  CCLD     temacs
Undefined symbols for architecture x86_64:
  "_mmalloca", referenced from:
      _rpl_realpath in libgnu.a(canonicalize-lgpl.o)
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make[1]: *** [temacs] Error 1
make: *** [src] Error 2
--8<---------------cut here---------------end--------------->8---

This is, apparently, related to bug#36172.

As suggested there, I tried
`make bootstrap CC="gcc -mmacosx-version-min=10.14"`
and got the same _freea error.

I also got these warnings:

--8<---------------cut here---------------start------------->8---
  CC       alloc.o
../../src/alloc.c:1134:22: warning: 'aligned_alloc' is only available on macOS 10.15 or newer [-Wunguarded-availability-new]
      abase = base = aligned_alloc (BLOCK_ALIGN, ABLOCKS_BYTES);
                     ^~~~~~~~~~~~~
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_malloc.h:50:10: note: 'aligned_alloc' has been marked as being introduced in macOS 10.15 here, but the deployment target is macOS 10.14.0
void    *aligned_alloc(size_t __alignment, size_t __size) __result_use_check __alloc_size(2) __OSX_AVAILABLE(10.15) __IOS_AVAILABLE(13.0) __TVOS_AVAILABLE(13.0) __WATCHOS_AVAILABLE(6.0);
         ^
../../src/alloc.c:1134:22: note: enclose 'aligned_alloc' in a __builtin_available check to silence this warning
      abase = base = aligned_alloc (BLOCK_ALIGN, ABLOCKS_BYTES);
                     ^~~~~~~~~~~~~
../../src/alloc.c:1288:12: warning: 'aligned_alloc' is only available on macOS 10.15 or newer [-Wunguarded-availability-new]
    return aligned_alloc (LISP_ALIGNMENT, size);
           ^~~~~~~~~~~~~
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_malloc.h:50:10: note: 'aligned_alloc' has been marked as being introduced in macOS 10.15 here, but the deployment target is macOS 10.14.0
void    *aligned_alloc(size_t __alignment, size_t __size) __result_use_check __alloc_size(2) __OSX_AVAILABLE(10.15) __IOS_AVAILABLE(13.0) __TVOS_AVAILABLE(13.0) __WATCHOS_AVAILABLE(6.0);
         ^
../../src/alloc.c:1288:12: note: enclose 'aligned_alloc' in a __builtin_available check to silence this warning
    return aligned_alloc (LISP_ALIGNMENT, size);
           ^~~~~~~~~~~~~
2 warnings generated.
--8<---------------cut here---------------end--------------->8---



In GNU Emacs 27.0.50 (build 1, x86_64-apple-darwin18.6.0, NS appkit-1671.50 Version 10.14.5 (Build 18F203))
 of 2019-06-17 built on BZ-C02XR5CGJG5L
Repository revision: a07c647a2a0426e3e7380d279f4d469fcd3e913c
Repository branch: master
Windowing system distributor 'Apple', version 10.3.1671
System Description:  Mac OS X 10.14.5

Configured using:
 'configure --with-mailutils --with-ns
 PKG_CONFIG_PATH=/usr/local/opt/libxml2/lib/pkgconfig:/usr/local/opt/imagemagick/lib/pkgconfig:/usr/local/opt/gnutls/lib/pkgconfig:/usr/local/opt/jansson/lib/pkgconfig'

Configured features:
NOTIFY KQUEUE ACL GNUTLS LIBXML2 ZLIB TOOLKIT_SCROLL_BARS NS THREADS
JSON PDUMPER LCMS2 GMP

Important settings:
  value of $LANG: C
  locale-coding-system: utf-8-unix

-- 
Sam Steingold (http://sds.podval.org/) on darwin Ns 10.3.1671
http://childpsy.net http://calmchildstories.com http://steingoldpsychology.com
http://camera.org http://www.dhimmitude.org http://thereligionofpeace.com
My other CAR is a CDR.





^ permalink raw reply	[flat|nested] 6+ messages in thread

* bug#36356: 27.0.50; linking error in git head on macos: _freea in libgnu
  2019-06-24 14:41 bug#36356: 27.0.50; linking error in git head on macos: _freea in libgnu Sam Steingold
@ 2019-06-24 15:01 ` Basil L. Contovounesios
  2019-06-24 15:02 ` Robert Pluim
  2019-10-02 23:49 ` Stefan Kangas
  2 siblings, 0 replies; 6+ messages in thread
From: Basil L. Contovounesios @ 2019-06-24 15:01 UTC (permalink / raw)
  To: Sam Steingold; +Cc: 36356

Sam Steingold <sds@gnu.org> writes:

> "make bootstrap" fails with:
>
>   CCLD     temacs
> Undefined symbols for architecture x86_64:
>   "_freea", referenced from:
>       _rpl_realpath in libgnu.a(canonicalize-lgpl.o)
> ld: symbol(s) not found for architecture x86_64
> clang: error: linker command failed with exit code 1 (use -v to see invocation)
> make[2]: *** [temacs] Error 1
> make[1]: *** [src] Error 2
> make: *** [bootstrap] Error 2

See also:
https://lists.gnu.org/archive/html/emacs-devel/2019-06/msg00899.html

-- 
Basil





^ permalink raw reply	[flat|nested] 6+ messages in thread

* bug#36356: 27.0.50; linking error in git head on macos: _freea in libgnu
  2019-06-24 14:41 bug#36356: 27.0.50; linking error in git head on macos: _freea in libgnu Sam Steingold
  2019-06-24 15:01 ` Basil L. Contovounesios
@ 2019-06-24 15:02 ` Robert Pluim
  2019-06-24 15:28   ` Sam Steingold
  2019-06-25 16:58   ` Robert Pluim
  2019-10-02 23:49 ` Stefan Kangas
  2 siblings, 2 replies; 6+ messages in thread
From: Robert Pluim @ 2019-06-24 15:02 UTC (permalink / raw)
  To: Sam Steingold; +Cc: 36356

>>>>> On Mon, 24 Jun 2019 10:41:13 -0400, Sam Steingold <sds@gnu.org> said:

    Sam> "make bootstrap" fails with:
    Sam>   CCLD     temacs
    Sam> Undefined symbols for architecture x86_64:
    Sam>   "_freea", referenced from:
    Sam>       _rpl_realpath in libgnu.a(canonicalize-lgpl.o)
    Sam> ld: symbol(s) not found for architecture x86_64
    Sam> clang: error: linker command failed with exit code 1 (use -v to see invocation)
    Sam> make[2]: *** [temacs] Error 1
    Sam> make[1]: *** [src] Error 2
    Sam> make: *** [bootstrap] Error 2

I think you'll find the following works better as a temporary workaround:

$ diff -u gnulib.mk gnulib.mk.new
--- gnulib.mk	2019-06-24 17:01:19.655623952 +0200
+++ gnulib.mk.new	2019-06-24 16:05:31.629871485 +0200
@@ -1998,10 +1998,8 @@
 ## begin gnulib module malloca
 ifeq (,$(OMIT_GNULIB_MODULE_malloca))

-ifneq (,$(gl_GNULIB_ENABLED_malloca))
 libgnu_a_SOURCES += malloca.c

-endif
 EXTRA_DIST += malloca.h

 endif





^ permalink raw reply	[flat|nested] 6+ messages in thread

* bug#36356: 27.0.50; linking error in git head on macos: _freea in libgnu
  2019-06-24 15:02 ` Robert Pluim
@ 2019-06-24 15:28   ` Sam Steingold
  2019-06-25 16:58   ` Robert Pluim
  1 sibling, 0 replies; 6+ messages in thread
From: Sam Steingold @ 2019-06-24 15:28 UTC (permalink / raw)
  To: Robert Pluim; +Cc: 36356

Thanks, but `make` now fails with

/Library/Developer/CommandLineTools/usr/bin/make -C ../lisp update-subdirs

cp -f temacs bootstrap-emacs
rm -f bootstrap-emacs.pdmp
./temacs --batch  -l loadup --temacs=pbootstrap
dyld: lazy symbol binding failed: Symbol not found: _aligned_alloc
  Referenced from: /Users/sam.steingold/src/emacs/trunk/build/src/./temacs
  Expected in: /usr/lib/libSystem.B.dylib

dyld: Symbol not found: _aligned_alloc
  Referenced from: /Users/sam.steingold/src/emacs/trunk/build/src/./temacs
  Expected in: /usr/lib/libSystem.B.dylib

make[1]: *** [bootstrap-emacs.pdmp] Abort trap: 6
make: *** [src] Error 2

(while `make bootstrap` rewrites gnulib.mk)
When I disable _aligned_alloc in config.h, I get the _freea failure:


  CCLD     temacs
Undefined symbols for architecture x86_64:
  "_freea", referenced from:
      _rpl_realpath in libgnu.a(canonicalize-lgpl.o)
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make[1]: *** [temacs] Error 1
make: *** [src] Error 2




On Mon, 24 Jun 2019 at 11:03, Robert Pluim <rpluim@gmail.com> wrote:
>
> >>>>> On Mon, 24 Jun 2019 10:41:13 -0400, Sam Steingold <sds@gnu.org> said:
>
>     Sam> "make bootstrap" fails with:
>     Sam>   CCLD     temacs
>     Sam> Undefined symbols for architecture x86_64:
>     Sam>   "_freea", referenced from:
>     Sam>       _rpl_realpath in libgnu.a(canonicalize-lgpl.o)
>     Sam> ld: symbol(s) not found for architecture x86_64
>     Sam> clang: error: linker command failed with exit code 1 (use -v to see invocation)
>     Sam> make[2]: *** [temacs] Error 1
>     Sam> make[1]: *** [src] Error 2
>     Sam> make: *** [bootstrap] Error 2
>
> I think you'll find the following works better as a temporary workaround:
>
> $ diff -u gnulib.mk gnulib.mk.new
> --- gnulib.mk   2019-06-24 17:01:19.655623952 +0200
> +++ gnulib.mk.new       2019-06-24 16:05:31.629871485 +0200
> @@ -1998,10 +1998,8 @@
>  ## begin gnulib module malloca
>  ifeq (,$(OMIT_GNULIB_MODULE_malloca))
>
> -ifneq (,$(gl_GNULIB_ENABLED_malloca))
>  libgnu_a_SOURCES += malloca.c
>
> -endif
>  EXTRA_DIST += malloca.h
>
>  endif



-- 
Sam Steingold <http://sds.podval.org> <http://www.childpsy.net>
<http://steingoldpsychology.com>





^ permalink raw reply	[flat|nested] 6+ messages in thread

* bug#36356: 27.0.50; linking error in git head on macos: _freea in libgnu
  2019-06-24 15:02 ` Robert Pluim
  2019-06-24 15:28   ` Sam Steingold
@ 2019-06-25 16:58   ` Robert Pluim
  1 sibling, 0 replies; 6+ messages in thread
From: Robert Pluim @ 2019-06-25 16:58 UTC (permalink / raw)
  To: Sam Steingold; +Cc: 36356

>>>>> On Mon, 24 Jun 2019 17:02:58 +0200, Robert Pluim <rpluim@gmail.com> said:

>>>>> On Mon, 24 Jun 2019 10:41:13 -0400, Sam Steingold <sds@gnu.org> said:
    Sam> "make bootstrap" fails with:
    Sam> CCLD     temacs
    Sam> Undefined symbols for architecture x86_64:
    Sam> "_freea", referenced from:
    Sam> _rpl_realpath in libgnu.a(canonicalize-lgpl.o)
    Sam> ld: symbol(s) not found for architecture x86_64
    Sam> clang: error: linker command failed with exit code 1 (use -v to see invocation)
    Sam> make[2]: *** [temacs] Error 1
    Sam> make[1]: *** [src] Error 2
    Sam> make: *** [bootstrap] Error 2

Paul's commit 848ff94b45 on master has fixed this for me.

Robert





^ permalink raw reply	[flat|nested] 6+ messages in thread

* bug#36356: 27.0.50; linking error in git head on macos: _freea in libgnu
  2019-06-24 14:41 bug#36356: 27.0.50; linking error in git head on macos: _freea in libgnu Sam Steingold
  2019-06-24 15:01 ` Basil L. Contovounesios
  2019-06-24 15:02 ` Robert Pluim
@ 2019-10-02 23:49 ` Stefan Kangas
  2 siblings, 0 replies; 6+ messages in thread
From: Stefan Kangas @ 2019-10-02 23:49 UTC (permalink / raw)
  To: Sam Steingold; +Cc: 36356-done

Robert Pluim <rpluim@gmail.com> writes:

>>>>>> On Mon, 24 Jun 2019 17:02:58 +0200, Robert Pluim <rpluim@gmail.com> said:
>
>>>>>> On Mon, 24 Jun 2019 10:41:13 -0400, Sam Steingold <sds@gnu.org> said:
>     Sam> "make bootstrap" fails with:
>     Sam> CCLD     temacs
>     Sam> Undefined symbols for architecture x86_64:
>     Sam> "_freea", referenced from:
>     Sam> _rpl_realpath in libgnu.a(canonicalize-lgpl.o)
>     Sam> ld: symbol(s) not found for architecture x86_64
>     Sam> clang: error: linker command failed with exit code 1 (use -v to see invocation)
>     Sam> make[2]: *** [temacs] Error 1
>     Sam> make[1]: *** [src] Error 2
>     Sam> make: *** [bootstrap] Error 2
>
> Paul's commit 848ff94b45 on master has fixed this for me.

It looks like this has been fixed, so I'm closing this now.

If this is still an issue, please reopen.

Best regards,
Stefan Kangas





^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2019-10-02 23:49 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-06-24 14:41 bug#36356: 27.0.50; linking error in git head on macos: _freea in libgnu Sam Steingold
2019-06-24 15:01 ` Basil L. Contovounesios
2019-06-24 15:02 ` Robert Pluim
2019-06-24 15:28   ` Sam Steingold
2019-06-25 16:58   ` Robert Pluim
2019-10-02 23:49 ` Stefan Kangas

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).