Closed liushang0322 closed 2 years ago
Try update_configure_scripts
first.
Try
update_configure_scripts
first.
thank you so much for your reply this help me pass this problem
but now there is another problem
i use make -j${nproc}
than this is the problem
sandbox:${WORKSPACE}/srcdir/libfec-1.0 # make -j${nproc}
cc -g -O2 -I. -Wall -c -o cpu_mode_x86_64.o cpu_mode_x86_64.c
cpu_mode_x86_64.c: In function ‘find_cpu_mode’:
cpu_mode_x86_64.c:17:7: warning: unused variable ‘f’ [-Wunused-variable]
int f;
^
cc -g -O2 -I. -Wall -c -o fec.o fec.c
cc -g -O2 -I. -Wall -c -o sim.o sim.c
cc -g -O2 -I. -Wall -c -o viterbi27.o viterbi27.c
cc -g -O2 -I. -Wall -c -o viterbi27_port.o viterbi27_port.c
cc -g -O2 -I. -Wall -c -o viterbi29.o viterbi29.c
cc -g -O2 -I. -Wall -c -o viterbi29_port.o viterbi29_port.c
cc -g -O2 -I. -Wall -c -o viterbi39.o viterbi39.c
cc -g -O2 -I. -Wall -c -o viterbi39_port.o viterbi39_port.c
cc -g -O2 -I. -Wall -c -o viterbi615.o viterbi615.c
cc -g -O2 -I. -Wall -c -o viterbi615_port.o viterbi615_port.c
cc -g -O2 -I. -Wall -c -o encode_rs_char.o encode_rs_char.c
cc -g -O2 -I. -Wall -c -o encode_rs_int.o encode_rs_int.c
cc -g -O2 -I. -Wall -c -o encode_rs_8.o encode_rs_8.c
cc -g -O2 -I. -Wall -c -o decode_rs_char.o decode_rs_char.c
cc -g -O2 -I. -Wall -c -o decode_rs_int.o decode_rs_int.c
cc -g -O2 -I. -Wall -c -o decode_rs_8.o decode_rs_8.c
cc -g -O2 -I. -Wall -c -o init_rs_char.o init_rs_char.c
cc -g -O2 -I. -Wall -c -o init_rs_int.o init_rs_int.c
gcc -g -O2 -I. -Wall -c -o gen_ccsds.o gen_ccsds.c
gcc -g -O2 -I. -Wall -c -o init_rs_char_local.o init_rs_char_local.c
gcc -o gen_ccsds gen_ccsds.o init_rs_char_local.o
./gen_ccsds > ccsds_tab.c
cc -g -O2 -I. -Wall -c -o ccsds_tab.o ccsds_tab.c
cc -g -O2 -I. -Wall -c -o encode_rs_ccsds.o encode_rs_ccsds.c
cc -g -O2 -I. -Wall -c -o decode_rs_ccsds.o decode_rs_ccsds.c
gcc -g -O2 -I. -Wall -c -o gen_ccsds_tal.o gen_ccsds_tal.c
gcc -o gen_ccsds_tal gen_ccsds_tal.o
./gen_ccsds_tal > ccsds_tal.c
cc -g -O2 -I. -Wall -c -o ccsds_tal.o ccsds_tal.c
cc -g -O2 -I. -Wall -c -o dotprod.o dotprod.c
cc -g -O2 -I. -Wall -c -o dotprod_port.o dotprod_port.c
cc -g -O2 -I. -Wall -c -o peakval.o peakval.c
cc -g -O2 -I. -Wall -c -o peakval_port.o peakval_port.c
cc -g -O2 -I. -Wall -c -o sumsq.o sumsq.c
cc -g -O2 -I. -Wall -c -o sumsq_port.o sumsq_port.c
ar rv libfec.a cpu_mode_x86_64.o fec.o sim.o viterbi27.o viterbi27_port.o viterbi29.o viterbi29_port.o viterbi39.o viterbi39_port.o viterbi615.o viterbi615_port.o encode_rs_char.o encode_rs_int.o encode_rs_8.o decode_rs_char.o decode_rs_int.o decode_rs_8.o init_rs_char.o init_rs_int.o ccsds_tab.o encode_rs_ccsds.o decode_rs_ccsds.o ccsds_tal.o dotprod.o dotprod_port.o peakval.o peakval_port.o sumsq.o sumsq_port.o
/opt/x86_64-linux-gnu/bin/x86_64-linux-gnu-ar: creating libfec.a
a - cpu_mode_x86_64.o
a - fec.o
a - sim.o
a - viterbi27.o
a - viterbi27_port.o
a - viterbi29.o
a - viterbi29_port.o
a - viterbi39.o
a - viterbi39_port.o
a - viterbi615.o
a - viterbi615_port.o
a - encode_rs_char.o
a - encode_rs_int.o
a - encode_rs_8.o
a - decode_rs_char.o
a - decode_rs_int.o
a - decode_rs_8.o
a - init_rs_char.o
a - init_rs_int.o
a - ccsds_tab.o
a - encode_rs_ccsds.o
a - decode_rs_ccsds.o
a - ccsds_tal.o
a - dotprod.o
a - dotprod_port.o
a - peakval.o
a - peakval_port.o
a - sumsq.o
a - sumsq_port.o
ranlib libfec.a
gcc -shared -Xlinker -soname=libfec.so -o libfec.so -Wl,-whole-archive cpu_mode_x86_64.o fec.o sim.o viterbi27.o viterbi27_port.o viterbi29.o viterbi29_port.o viterbi39.o viterbi39_port.o viterbi615.o viterbi615_port.o encode_rs_char.o encode_rs_int.o encode_rs_8.o decode_rs_char.o decode_rs_int.o decode_rs_8.o init_rs_char.o init_rs_int.o ccsds_tab.o encode_rs_ccsds.o decode_rs_ccsds.o ccsds_tal.o dotprod.o dotprod_port.o peakval.o peakval_port.o sumsq.o sumsq_port.o -Wl,-no-whole-archive -lc
/opt/x86_64-linux-gnu/bin/../lib/gcc/x86_64-linux-gnu/4.8.5/../../../../x86_64-linux-gnu/bin/ld: fec.o: relocation R_X86_64_32 against `Partab' can not be used when making a shared object; recompile with -fPIC
fec.o: error adding symbols: Bad value
collect2: error: ld returned 1 exit status
make: *** [makefile:103: libfec.so] Error 1
Side note:
Try
update_configure_scripts
first.
This tip is also documented: https://docs.binarybuilder.org/stable/troubleshooting/#Old-Autoconf-helper-scripts
but now there is another problem
The solution is in the error messag you shared:
/opt/x86_64-linux-gnu/bin/../lib/gcc/x86_64-linux-gnu/4.8.5/../../../../x86_64-linux-gnu/bin/ld: fec.o: relocation R_X86_64_32 against `Partab' can not be used when making a shared object; recompile with -fPIC
How to do this depends on the build system. Sometimes the configure
script has an option to use -fPIC
(see ./configure --help
), otherwise you may have to do something like
export CFLAGS=-fPIC
before calling ./configure
(although this may override default CFLAGS
, which is often not a good idea).
Another side note: the fact that the log sometimes shows gcc
looks suspiciously wrong, it feels like the build system is forcing using gcc
instead of cc
(and just for some files).
I'm going to close the ticket, nothing really a bug in BinaryBuilder. If you have more questions about the use of BinaryBuilder please open a discussion thread or start a thread on Discourse
I am using BinaryBuilder to build jll I got the following error when I use
BinaryBuilder.run_wizard()
, what should I do please