http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60530
--- Comment #2 from H.J. Lu <hjl.tools at gmail dot com> --- (In reply to David Kredba from comment #0) > Created attachment 32351 [details] > Un-reduced preprocessed source file gzipped > > The only one object file causing the erro from -o ssh ssh.o readconf.o > clientloop.o sshtty.o sshconnect.o sshconnect1.o sshconnect2.o mux.o > roaming_common.o roaming_client.o is ssh.o. > > x86_64-pc-linux-gnu-gcc -o ssh ssh.i -L. -Lopenbsd-compat/ -flto=4 > -fuse-linker-plugin -Wl,--as-needed -Wl,-O2 -Wl,-flto -O2 -ggdb -pipe > -march=native -mtune=native -mno-3dnow -mno-sse4.2 -mno-avx -Wl,-z,relro > -Wl,-z,now -Wl,-z,noexecstack -fstack-protector-strong -flto=4 > -fuse-linker-plugin -Wl,--as-needed -Wl,-O2 -Wl,-flto -O2 -ggdb -pipe > -march=native -mtune=native -mno-3dnow -mno-sse4.2 -mno-avx -pie -lssh > -lopenbsd-compat -lssl -lcrypto -ldl -lutil -lz -lnsl -lcrypt -lresolv > -lpthread > umac.c:1193:3: warning: type of 'umac_ctx' does not match original > declaration > } umac_ctx; > ^ > ./umac.c:1193:3: note: previously declared here > } umac_ctx; > ^ > /usr/lib/gcc/x86_64-pc-linux-gnu/4.9.0-alpha20140311/../../../../x86_64-pc- > linux-gnu/bin/ld: /tmp/ccKc90pS.ltrans0.ltrans.o: relocation R_X86_64_32 > against `.rodata.str1.1' can not be used when making a shared object; > recompile with -fPIC > /tmp/ccKc90pS.ltrans0.ltrans.o: error adding symbols: Bad value > collect2: error: ld returned 1 exit status When -pie is used, you need to add -fpie.