wireguard.lists.zx2c4.com archive mirror
 help / color / mirror / Atom feed
From: John <graysky@archlinux.us>
To: Sebastian Gottschall <s.gottschall@newmedia-net.de>
Cc: WireGuard mailing list <wireguard@lists.zx2c4.com>
Subject: Re: Build error on ARM device due to ld flags
Date: Thu, 24 Jan 2019 03:57:08 -0500	[thread overview]
Message-ID: <CAO_nJAYO4-1JOyCBQ5LuXGNbfiM628wUFyyohArNosfeL9Jpdw@mail.gmail.com> (raw)
In-Reply-To: <7406fa0c-9818-5216-7d14-28a33520b894@newmedia-net.de>

Thank you for the reply. What is odd is that I can build just fine on
Arch x86_64 which uses the identical LDFLAGS.  In any case, is your
recommendation to drop the -Wl portion of the LDFLAGS or so unset all
ie:

unset CPPFLAGS CFLAGS CXXFLAGS LDFLAGS DEBUG_CFLAGS DEBUG_CXXFLAGS

On Wed, Jan 23, 2019 at 11:02 PM Sebastian Gottschall
<s.gottschall@newmedia-net.de> wrote:
>
> -Wl etc is not a valid linker flag, its a flag for gcc which passes the
> following flags to the linker. so basicly the LDFLAGS are just wrong.
> in general no CFLAGS or LDFLAGS should be overriden, since wireguard
> uses exact he same flags which is used for compiling the kernel. so setting
> custom flags should be avoided
>
> Am 23.01.2019 um 22:07 schrieb John:
> > I am running Arch ARM (aarch64) on an ODROID-C2 using gcc v8.2.1.
> > Arch ARM which ships with the following LDFLAGS as defaults,
> > "-Wl,-O1,--sort-common,--as-needed,-z,relro,-z,now"
> >
> > When I build wireguard on this device as shown below, I get this error
> > but am unsure why:
> >
> > ld: unrecognized option '-Wl,-O1,--sort-common,--as-needed,-z,relro,-z,now'
> > ld: use the --help option for usage information
> > make[2]: *** [scripts/Makefile.build:393:
> > /scratch/WireGuard-0.0.20190123/src/wireguard.o] Error 1
> > make[1]: *** [Makefile:1358:
> > _module_/scratch/WireGuard-0.0.20190123/src] Error 2
> > make: *** [Makefile:36: module] Error 2
> >
> > If I remove the '-Wl' switch from the distro default, it builds
> > without error.  Any advice is appreciated.
> >
> > Complete build log and my FLAGS:
> >
> > % export CPPFLAGS="-D_FORTIFY_SOURCE=2"
> > % export CFLAGS="-march=armv8-a -O2 -pipe -fstack-protector-strong -fno-plt"
> > % export CXXFLAGS="-march=armv8-a -O2 -pipe -fstack-protector-strong -fno-plt"
> > % export LDFLAGS="-Wl,-O1,--sort-common,--as-needed,-z,relro,-z,now"
> > % export DEBUG_CFLAGS="-g -fvar-tracking-assignments"
> > % export DEBUG_CXXFLAGS="-g -fvar-tracking-assignments"
> >
> > % cd WireGuard-0.0.20190123
> > % make -j5 -C src
> > make: Entering directory '/scratch/WireGuard-0.0.20190123/src'
> >    CC      /scratch/WireGuard-0.0.20190123/src/tools/wg.o
> >    CC      /scratch/WireGuard-0.0.20190123/src/tools/config.o
> >    CC      /scratch/WireGuard-0.0.20190123/src/tools/show.o
> >    CC      /scratch/WireGuard-0.0.20190123/src/tools/terminal.o
> >    CC      /scratch/WireGuard-0.0.20190123/src/tools/ipc.o
> >    CC      /scratch/WireGuard-0.0.20190123/src/tools/mnlg.o
> >    CC      /scratch/WireGuard-0.0.20190123/src/tools/encoding.o
> >    CC      /scratch/WireGuard-0.0.20190123/src/tools/curve25519.o
> >    CC      /scratch/WireGuard-0.0.20190123/src/tools/setconf.o
> >    CC      /scratch/WireGuard-0.0.20190123/src/tools/genkey.o
> >    CC      /scratch/WireGuard-0.0.20190123/src/tools/showconf.o
> >    CC      /scratch/WireGuard-0.0.20190123/src/tools/pubkey.o
> >    CC      /scratch/WireGuard-0.0.20190123/src/tools/set.o
> >    CC [M]  /scratch/WireGuard-0.0.20190123/src/main.o
> >    CC [M]  /scratch/WireGuard-0.0.20190123/src/device.o
> >    CC [M]  /scratch/WireGuard-0.0.20190123/src/noise.o
> >    CC [M]  /scratch/WireGuard-0.0.20190123/src/peer.o
> >    CC [M]  /scratch/WireGuard-0.0.20190123/src/timers.o
> >    CC [M]  /scratch/WireGuard-0.0.20190123/src/queueing.o
> >    CC [M]  /scratch/WireGuard-0.0.20190123/src/send.o
> >    CC [M]  /scratch/WireGuard-0.0.20190123/src/receive.o
> >    CC [M]  /scratch/WireGuard-0.0.20190123/src/socket.o
> >    CC [M]  /scratch/WireGuard-0.0.20190123/src/hashtables.o
> >    CC [M]  /scratch/WireGuard-0.0.20190123/src/allowedips.o
> >    CC [M]  /scratch/WireGuard-0.0.20190123/src/ratelimiter.o
> >    CC [M]  /scratch/WireGuard-0.0.20190123/src/cookie.o
> >    CC [M]  /scratch/WireGuard-0.0.20190123/src/netlink.o
> >    CC [M]  /scratch/WireGuard-0.0.20190123/src/crypto/zinc/chacha20/chacha20.o
> >    PERLASM /scratch/WireGuard-0.0.20190123/src/crypto/zinc/chacha20/chacha20-arm64.S
> >    CC [M]  /scratch/WireGuard-0.0.20190123/src/crypto/zinc/poly1305/poly1305.o
> >    PERLASM /scratch/WireGuard-0.0.20190123/src/crypto/zinc/poly1305/poly1305-arm64.S
> >    CC [M]  /scratch/WireGuard-0.0.20190123/src/crypto/zinc/chacha20poly1305.o
> >    CC [M]  /scratch/WireGuard-0.0.20190123/src/crypto/zinc/blake2s/blake2s.o
> >    CC [M]  /scratch/WireGuard-0.0.20190123/src/crypto/zinc/curve25519/curve25519.o
> >    LD      /scratch/WireGuard-0.0.20190123/src/tools/wg
> >    CC [M]  /scratch/WireGuard-0.0.20190123/src/compat/siphash/siphash.o
> >    CC [M]  /scratch/WireGuard-0.0.20190123/src/compat/dst_cache/dst_cache.o
> >    CC [M]  /scratch/WireGuard-0.0.20190123/src/compat/udp_tunnel/udp_tunnel.o
> >    AS [M]  /scratch/WireGuard-0.0.20190123/src/crypto/zinc/chacha20/chacha20-arm64.o
> >    AS [M]  /scratch/WireGuard-0.0.20190123/src/crypto/zinc/poly1305/poly1305-arm64.o
> >    LD [M]  /scratch/WireGuard-0.0.20190123/src/wireguard.o
> > ld: unrecognized option '-Wl,-O1,--sort-common,--as-needed,-z,relro,-z,now'
> > ld: use the --help option for usage information
> > make[2]: *** [scripts/Makefile.build:393:
> > /scratch/WireGuard-0.0.20190123/src/wireguard.o] Error 1
> > make[1]: *** [Makefile:1358:
> > _module_/scratch/WireGuard-0.0.20190123/src] Error 2
> > make: *** [Makefile:36: module] Error 2
> > make: Leaving directory '/scratch/WireGuard-0.0.20190123/src'
> > _______________________________________________
> > WireGuard mailing list
> > WireGuard@lists.zx2c4.com
> > https://lists.zx2c4.com/mailman/listinfo/wireguard
> >
> _______________________________________________
> WireGuard mailing list
> WireGuard@lists.zx2c4.com
> https://lists.zx2c4.com/mailman/listinfo/wireguard
_______________________________________________
WireGuard mailing list
WireGuard@lists.zx2c4.com
https://lists.zx2c4.com/mailman/listinfo/wireguard

  reply	other threads:[~2019-01-24 12:40 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-01-23 21:07 Build error on ARM device due to ld flags John
2019-01-24  3:14 ` Sebastian Gottschall
2019-01-24  8:57   ` John [this message]
2019-01-24  9:40     ` Sebastian Gottschall
2019-01-24 19:33       ` John
2019-01-25 11:54         ` Sebastian Gottschall

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=CAO_nJAYO4-1JOyCBQ5LuXGNbfiM628wUFyyohArNosfeL9Jpdw@mail.gmail.com \
    --to=graysky@archlinux.us \
    --cc=s.gottschall@newmedia-net.de \
    --cc=wireguard@lists.zx2c4.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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 NNTP newsgroup(s).