what causes Clang to use libgcc_s.so in FreeBSD 12.0-R linker
Jin Guojun[VFF]
jguojun at gmail.com
Thu Feb 14 01:31:55 UTC 2019
Following CC command used for build a shared library that worked on all
FreeBSD releases before 12-R.
The -v CC option shows that linker indeed involves libgcc and gcc_s
somehow, but no -static option was shown. Not clear what the error
message implies. Also, none of these source code has GNU stuff in it and
what linker tried to do with gcc libraries?
Is something changed for building shared libraries under 12-R?
Thanks,
-Jin
FBSD12: cc -Wl,-r -o libccs.so `lorder avail_type.so arg_vc.so
c_array.so calibrate.so colortog
.so c_map.so colort90.so dbvfft3d.so eta.so errors.so filter_f.so
fits_io.so fourier.so gaussian
.so glb_vars.so histgram.so icc_r.so io_ready.so libpbm.so libpbm2.so
libpbm4.so libpgm1.so libp
pm1.so libppm3.so libpbm1.so ln2argv.so message.so pict_r.so pgm_r.so
q_sort.so rotate90.so t_co
nsum.so tv_random.so time-out.so dbg_memsz.so to_sep.so to_8.so
quantto8.so sub_mean.so zalloc.s
o vfft3d.so vfft_2p.so c_map1.so c_to_c.so buffernw.so checksum.so
dicm_h.so dir_unix.so eget_ws
z.so gif_r.so ip-hdr.so private.so piperead.so parsargu.so rast_r.so
sock_cnct.so sock_init.so s
ock_subr.so swap_all.so table_if.so tv_empty.so tvmath.so u_db.so
zreopen.so pip_read.so | tsort
`
/usr/bin/ld: error: attempted static link of dynamic object
/usr/lib/libgcc_s.so
/usr/bin/ld: error: attempted static link of dynamic object
/usr/lib/libgcc_s.so
cc: error: linker command failed with exit code 1 (use -v to see invocation)
*** Error code 1 (ignored)
FBSD12: cc -v -Wl,-r -o libccs.so `lorder avail_type.so arg_vc.so
c_array.so calibrate.so colortog.so c
_map.so colort90.so dbvfft3d.so eta.so errors.so filter_f.so fits_io.so
fourier.so gaussian.so g
lb_vars.so histgram.so icc_r.so io_ready.so libpbm.so libpbm2.so
libpbm4.so libpgm1.so libppm1.s
o libppm3.so libpbm1.so ln2argv.so message.so pict_r.so pgm_r.so
q_sort.so rotate90.so t_consum.
so tv_random.so time-out.so dbg_memsz.so to_sep.so to_8.so quantto8.so
sub_mean.so zalloc.so vff
t3d.so vfft_2p.so c_map1.so c_to_c.so buffernw.so checksum.so dicm_h.so
dir_unix.so eget_wsz.so
gif_r.so ip-hdr.so private.so piperead.so parsargu.so rast_r.so
sock_cnct.so sock_init.so sock_s
ubr.so swap_all.so table_if.so tv_empty.so tvmath.so u_db.so zreopen.so
pip_read.so | tsort`
FreeBSD clang version 6.0.1 (tags/RELEASE_601/final 335540) (based on
LLVM 6.0.1)
Target: x86_64-unknown-freebsd12.0
Thread model: posix
InstalledDir: /usr/bin
"/usr/bin/ld" --eh-frame-hdr -dynamic-linker /libexec/ld-elf.so.1
--hash-style=both --enable-ne
w-dtags -o libccs.so /usr/lib/crt1.o /usr/lib/crti.o /usr/lib/crtbegin.o
-L/usr/lib -r pip_read.
so zreopen.so u_db.so tv_empty.so table_if.so rast_r.so parsargu.so
piperead.so private.so ip-hd
r.so gif_r.so eget_wsz.so dir_unix.so dicm_h.so checksum.so buffernw.so
c_map1.so vfft_2p.so sub
_mean.so to_8.so to_sep.so dbg_memsz.so time-out.so tv_random.so
t_consum.so pgm_r.so pict_r.so
ln2argv.so libppm3.so libppm1.so libpgm1.so libpbm2.so libpbm.so
io_ready.so icc_r.so histgram.s
o glb_vars.so gaussian.so fits_io.so filter_f.so eta.so dbvfft3d.so
colort90.so c_map.so colorto
g.so calibrate.so c_array.so arg_vc.so avail_type.so tvmath.so
swap_all.so sock_init.so sock_cnc
t.so vfft3d.so quantto8.so rotate90.so q_sort.so libpbm1.so libpbm4.so
fourier.so sock_subr.so c
_to_c.so zalloc.so errors.so message.so -lgcc --as-needed -lgcc_s
--no-as-needed -lc -lgcc --as-
needed -lgcc_s --no-as-needed /usr/lib/crtend.o /usr/lib/crtn.o
/usr/bin/ld: error: attempted static link of dynamic object
/usr/lib/libgcc_s.so
/usr/bin/ld: error: attempted static link of dynamic object
/usr/lib/libgcc_s.so
cc: error: linker command failed with exit code 1 (use -v to see invocation)
More information about the freebsd-questions
mailing list