Follow @Openwall on Twitter for new release announcements and other news
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Date: Fri, 29 Mar 2019 19:58:38 +0100
From: Albert Veli <albert.veli@...il.com>
To: john-users@...ts.openwall.com
Subject: Re: Compiler errors on macOS Mojave 10.14.2

Hi, I got the same error on macOS 10.14.3 using homebrew binutils.

ld: warning: ignoring file aes/aes.a, file was built for archive which is
not the architecture being linked (x86_64): aes/aes.a
ld: warning: ignoring file ed25519-donna/ed25519-donna.a, file was built
for archive which is not the architecture being linked (x86_64):
ed25519-donna/ed25519-donna.a
ld: warning: ignoring file secp256k1/secp256k1.a, file was built for
archive which is not the architecture being linked (x86_64):
secp256k1/secp256k1.a
Undefined symbols for architecture x86_64:
  "_ed25519_publickey", referenced from:
      _crypt_all._omp_fn.0 in tezos_fmt_plug.o
...

Then I ran:

 brew unlink binutils
 make -sj4

And the compilation succeeded. Maybe add something about this in a README.

On Tue, Mar 26, 2019 at 10:02 AM Solar Designer <solar@...nwall.com> wrote:

> Marvin, Erik, all -
>
> On Mon, Mar 25, 2019 at 07:23:26PM +0100, Solar Designer wrote:
> > It looks like "ar" is somehow creating archives for a wrong
> > architecture.  This is puzzling to me because historically "ar" was a
> > very simple archiver and technically not necessarily used for static
> > libraries (and thus wouldn't need to be architecture-aware), although
> > that ended up being its sole use case.
> >
> > Marvin - do you have any update?
> >
> > > ar: creating aes.a
> > > ar: creating ed25519-donna.a
> > > ar: creating secp256k1.a
> > > ld: warning: ignoring file aes/aes.a, file was built for archive which
> is not the architecture being linked (x86_64): aes/aes.a
> > > ld: warning: ignoring file ed25519-donna/ed25519-donna.a, file was
> built for archive which is not the architecture being linked (x86_64):
> ed25519-donna/ed25519-donna.a
> > > ld: warning: ignoring file secp256k1/secp256k1.a, file was built for
> archive which is not the architecture being linked (x86_64):
> secp256k1/secp256k1.a
> > > Undefined symbols for architecture x86_64:
> > >   "_ed25519_publickey", referenced from:
>
> I just looked into this some more, specifically doing a Google web
> search on "file was built for archive which is not the architecture
> being linked" (in quotes) and seeing what other people/projects facing
> this issue do.  This is probably the most useful answer:
>
> https://github.com/pjreddie/darknet/issues/1350#issuecomment-471237949
>
> > dhalperi commented 16 days ago
> >
> > I found this was an issue with Homebrew binutils package conflicting
> > with XCode. For more info, see
> > https://stackoverflow.com/a/43452124/1715495.
> >
> > `brew unlink binutils && make clean && make` did the trick for me.
>
> The StackOverflow issue referenced from there says:
>
> > A possible cause is using the GNU ar(1)/ranlib(1) instead of the ones
> > supplied by the Xcode toolchain. Run which -a ar and which -a ranlib
> > to see the what you have in $PATH.
>
> and:
>
> > If you're like me and had /usr/local/bin preceeding /usr/bin in $PATH,
> > with the GNU tools in /usr/local/bin and the Xcode ones in /usr/bin,
> > you can fix it with:
> >
> > cd /usr/local/bin
> > mv ar gar
> > ln -s /usr/bin/ar ar
> > mv ranlib granlib
> > ln -s /usr/bin/ranlib ranlib
>
> Marvin - can you please try one of these recipes, most likely the first
> one, and let us know if it helped?  Specifically:
>
> brew unlink binutils
>
> Thanks,
>
> Alexander
>

Powered by blists - more mailing lists

Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.