From: John <graysky@archlinux.us>
To: WireGuard mailing list <wireguard@lists.zx2c4.com>
Subject: Build error on ARM device due to ld flags
Date: Wed, 23 Jan 2019 16:07:47 -0500 [thread overview]
Message-ID: <CAO_nJAbgfQ7DY+v40P1tpgHX84HVA=85jvd3-vaEJi8d0kGNcg@mail.gmail.com> (raw)
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
next reply other threads:[~2019-01-24 2:03 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-01-23 21:07 John [this message]
2019-01-24 3:14 ` Build error on ARM device due to ld flags Sebastian Gottschall
2019-01-24 8:57 ` John
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_nJAbgfQ7DY+v40P1tpgHX84HVA=85jvd3-vaEJi8d0kGNcg@mail.gmail.com' \
--to=graysky@archlinux.us \
--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).