Discussion:
Linaro GCC CrossCompiler for ARMv8 - Weak Linkage issue
Veena & Deepak Ramaswamy
2017-10-27 03:10:43 UTC
Permalink
All,

Using the tool chain that comes with the FVP package that I downloaded last
month (Oct 2017), I'm trying to compile the Splash2 benchmark to execute on
the latest FVP platform and seeing a compilation issue that goes like this
(please see below)

​To reproduce:​

​1. download the benchmark from here and follow _all_ the instructions in
the homepage: ​http://www.capsl.udel.edu/splash/Download.html
2. edit the makefile.config under /splash2/codes to use linaro toolchain
and choose POSIX_BARRIER for the MACROS section
(I've pasted my makefile.config here as well - you will have to modify the
toolchain paths to suit your setup)
​3. cd to splash2/codes/apps/ocean/contiguous_partitions
4. make (and you will see the problem)

Please help.
Thanks.​

------------------------------------------


/local/mnt/workspace/linaro/tools/gcc/gcc-linaro-6.2.1-2016.11-x86_64_aarch64-linux-gnu/bin/aarch64-linux-gnu-gcc
jacobcalc.o jacobcalc2.o laplacalc.o linkup.o main.o multi.o slave1.o
slave2.o subblock.o -v -O3 -pthread -D_POSIX_C_SOURCE=200112 -Wall -W
-Wmissing-prototypes -Wmissing-declarations -Wredundant-decls
-Wdisabled-optimization -Wpadded -Winline -Wpointer-arith -Wsign-compare
-Wendif-labels -lgcc -lc -lm -static -o OCEAN -lm -lc -lgcc -static
Using built-in specs.
COLLECT_GCC=/local/mnt/workspace/linaro/tools/gcc/gcc-linaro-6.2.1-2016.11-x86_64_aarch64-linux-gnu/bin/aarch64-linux-gnu-gcc
COLLECT_LTO_WRAPPER=/local/mnt/workspace/linaro/tools/gcc/gcc-linaro-6.2.1-2016.11-x86_64_aarch64-linux-gnu/bin/../libexec/gcc/aarch64-linux-gnu/6.2.1/lto-wrapper
Target: aarch64-linux-gnu
Configured with:
/home/tcwg-buildslave/workspace/tcwg-make-release/label/docker-trusty-amd64-tcwg-build/target/aarch64-linux-gnu/snapshots/gcc-linaro-6.2-2016.11/configure
SHELL=/bin/bash
--with-mpc=/home/tcwg-buildslave/workspace/tcwg-make-release/label/docker-trusty-amd64-tcwg-build/target/aarch64-linux-gnu/_build/builds/destdir/x86_64-unknown-linux-gnu
--with-mpfr=/home/tcwg-buildslave/workspace/tcwg-make-release/label/docker-trusty-amd64-tcwg-build/target/aarch64-linux-gnu/_build/builds/destdir/x86_64-unknown-linux-gnu
--with-gmp=/home/tcwg-buildslave/workspace/tcwg-make-release/label/docker-trusty-amd64-tcwg-build/target/aarch64-linux-gnu/_build/builds/destdir/x86_64-unknown-linux-gnu
--with-gnu-as --with-gnu-ld --disable-libstdcxx-pch --disable-libmudflap
--with-cloog=no --with-ppl=no --with-isl=no --disable-nls --enable-c99
--enable-gnu-indirect-function --disable-multilib --with-arch=armv8-a
--enable-fix-cortex-a53-835769 --enable-fix-cortex-a53-843419
--enable-multiarch
--with-build-sysroot=/home/tcwg-buildslave/workspace/tcwg-make-release/label/docker-trusty-amd64-tcwg-build/target/aarch64-linux-gnu/_build/sysroots/aarch64-linux-gnu
--enable-lto --enable-linker-build-id --enable-long-long --enable-shared
--with-sysroot=/home/tcwg-buildslave/workspace/tcwg-make-release/label/docker-trusty-amd64-tcwg-build/target/aarch64-linux-gnu/_build/builds/destdir/x86_64-unknown-linux-gnu/aarch64-linux-gnu/libc
--enable-languages=c,c++,fortran,lto --enable-checking=release
--disable-bootstrap --build=x86_64-unknown-linux-gnu
--host=x86_64-unknown-linux-gnu --target=aarch64-linux-gnu
--prefix=/home/tcwg-buildslave/workspace/tcwg-make-release/label/docker-trusty-amd64-tcwg-build/target/aarch64-linux-gnu/_build/builds/destdir/x86_64-unknown-linux-gnu
Thread model: posix
gcc version 6.2.1 20161016 (Linaro GCC 6.2-2016.11)
COMPILER_PATH=/local/mnt/workspace/linaro/tools/gcc/gcc-linaro-6.2.1-2016.11-x86_64_aarch64-linux-gnu/bin/../libexec/gcc/aarch64-linux-gnu/6.2.1/:/local/mnt/workspace/linaro/tools/gcc/gcc-linaro-6.2.1-2016.11-x86_64_aarch64-linux-gnu/bin/../libexec/gcc/aarch64-linux-gnu/:/local/mnt/workspace/linaro/tools/gcc/gcc-linaro-6.2.1-2016.11-x86_64_aarch64-linux-gnu/bin/../libexec/gcc/:/local/mnt/workspace/linaro/tools/gcc/gcc-linaro-6.2.1-2016.11-x86_64_aarch64-linux-gnu/bin/../lib/gcc/aarch64-linux-gnu/6.2.1/../../../../aarch64-linux-gnu/bin/
LIBRARY_PATH=/local/mnt/workspace/linaro/tools/gcc/gcc-linaro-6.2.1-2016.11-x86_64_aarch64-linux-gnu/bin/../lib/gcc/aarch64-linux-gnu/6.2.1/:/local/mnt/workspace/linaro/tools/gcc/gcc-linaro-6.2.1-2016.11-x86_64_aarch64-linux-gnu/bin/../lib/gcc/aarch64-linux-gnu/:/local/mnt/workspace/linaro/tools/gcc/gcc-linaro-6.2.1-2016.11-x86_64_aarch64-linux-gnu/bin/../lib/gcc/:/local/mnt/workspace/linaro/tools/gcc/gcc-linaro-6.2.1-2016.11-x86_64_aarch64-linux-gnu/bin/../lib/gcc/aarch64-linux-gnu/6.2.1/../../../../aarch64-linux-gnu/lib/../lib64/:/local/mnt/workspace/linaro/tools/gcc/gcc-linaro-6.2.1-2016.11-x86_64_aarch64-linux-gnu/bin/../lib/gcc/aarch64-linux-gnu/6.2.1/../../../../aarch64-linux-gnu/lib/:/local/mnt/workspace/linaro/tools/gcc/gcc-linaro-6.2.1-2016.11-x86_64_aarch64-linux-gnu/bin/../aarch64-linux-gnu/libc/lib/:/local/mnt/workspace/linaro/tools/gcc/gcc-linaro-6.2.1-2016.11-x86_64_aarch64-linux-gnu/bin/../aarch64-linux-gnu/libc/usr/lib/
COLLECT_GCC_OPTIONS='-v' '-O3' '-pthread' '-D' '_POSIX_C_SOURCE=200112'
'-Wall' '-Wextra' '-Wmissing-prototypes' '-Wmissing-declarations'
'-Wredundant-decls' '-Wdisabled-optimization' '-Wpadded' '-Winline'
'-Wpointer-arith' '-Wsign-compare' '-Wendif-labels' '-static' '-o' 'OCEAN'
'-static' '-march=armv8-a' '-mlittle-endian' '-mabi=lp64'
/local/mnt/workspace/linaro/tools/gcc/gcc-linaro-6.2.1-2016.11-x86_64_aarch64-linux-gnu/bin/../libexec/gcc/aarch64-linux-gnu/6.2.1/collect2
-plugin
/local/mnt/workspace/linaro/tools/gcc/gcc-linaro-6.2.1-2016.11-x86_64_aarch64-linux-gnu/bin/../libexec/gcc/aarch64-linux-gnu/6.2.1/liblto_plugin.so
-plugin-opt=/local/mnt/workspace/linaro/tools/gcc/gcc-linaro-6.2.1-2016.11-x86_64_aarch64-linux-gnu/bin/../libexec/gcc/aarch64-linux-gnu/6.2.1/lto-wrapper
-plugin-opt=-fresolution=/tmp/ccwD6OY1.res -plugin-opt=-pass-through=-lgcc
-plugin-opt=-pass-through=-lgcc_eh -plugin-opt=-pass-through=-lpthread
-plugin-opt=-pass-through=-lc
--sysroot=/local/mnt/workspace/linaro/tools/gcc/gcc-linaro-6.2.1-2016.11-x86_64_aarch64-linux-gnu/bin/../aarch64-linux-gnu/libc
--build-id -Bstatic -X -EL -maarch64linux --fix-cortex-a53-835769
--fix-cortex-a53-843419 -o OCEAN
/local/mnt/workspace/linaro/tools/gcc/gcc-linaro-6.2.1-2016.11-x86_64_aarch64-linux-gnu/bin/../aarch64-linux-gnu/libc/usr/lib/crt1.o
/local/mnt/workspace/linaro/tools/gcc/gcc-linaro-6.2.1-2016.11-x86_64_aarch64-linux-gnu/bin/../aarch64-linux-gnu/libc/usr/lib/crti.o
/local/mnt/workspace/linaro/tools/gcc/gcc-linaro-6.2.1-2016.11-x86_64_aarch64-linux-gnu/bin/../lib/gcc/aarch64-linux-gnu/6.2.1/crtbeginT.o
-L/local/mnt/workspace/linaro/tools/gcc/gcc-linaro-6.2.1-2016.11-x86_64_aarch64-linux-gnu/bin/../lib/gcc/aarch64-linux-gnu/6.2.1
-L/local/mnt/workspace/linaro/tools/gcc/gcc-linaro-6.2.1-2016.11-x86_64_aarch64-linux-gnu/bin/../lib/gcc/aarch64-linux-gnu
-L/local/mnt/workspace/linaro/tools/gcc/gcc-linaro-6.2.1-2016.11-x86_64_aarch64-linux-gnu/bin/../lib/gcc
-L/local/mnt/workspace/linaro/tools/gcc/gcc-linaro-6.2.1-2016.11-x86_64_aarch64-linux-gnu/bin/../lib/gcc/aarch64-linux-gnu/6.2.1/../../../../aarch64-linux-gnu/lib/../lib64
-L/local/mnt/workspace/linaro/tools/gcc/gcc-linaro-6.2.1-2016.11-x86_64_aarch64-linux-gnu/bin/../lib/gcc/aarch64-linux-gnu/6.2.1/../../../../aarch64-linux-gnu/lib
-L/local/mnt/workspace/linaro/tools/gcc/gcc-linaro-6.2.1-2016.11-x86_64_aarch64-linux-gnu/bin/../aarch64-linux-gnu/libc/lib
-L/local/mnt/workspace/linaro/tools/gcc/gcc-linaro-6.2.1-2016.11-x86_64_aarch64-linux-gnu/bin/../aarch64-linux-gnu/libc/usr/lib
jacobcalc.o jacobcalc2.o laplacalc.o linkup.o main.o multi.o slave1.o
slave2.o subblock.o -lgcc -lc -lm -lm -lc -lgcc --start-group -lgcc
-lgcc_eh -lpthread -lc --end-group
/local/mnt/workspace/linaro/tools/gcc/gcc-linaro-6.2.1-2016.11-x86_64_aarch64-linux-gnu/bin/../lib/gcc/aarch64-linux-gnu/6.2.1/crtend.o
/local/mnt/workspace/linaro/tools/gcc/gcc-linaro-6.2.1-2016.11-x86_64_aarch64-linux-gnu/bin/../aarch64-linux-gnu/libc/usr/lib/crtn.o
/local/mnt/workspace/linaro/tools/gcc/gcc-linaro-6.2.1-2016.11-x86_64_aarch64-linux-gnu/bin/../aarch64-linux-gnu/libc/usr/lib/libpthread.a(lowlevellock.o):
In function `__lll_lock_wait_private':
/home/tcwg-buildslave/workspace/tcwg-make-release/label/docker-trusty-amd64-tcwg-build/target/aarch64-linux-gnu/snapshots/glibc.git~linaro~2.23~master/nptl/lowlevellock.c:29:
multiple definition of `__lll_lock_wait_private'
/local/mnt/workspace/linaro/tools/gcc/gcc-linaro-6.2.1-2016.11-x86_64_aarch64-linux-gnu/bin/../aarch64-linux-gnu/libc/usr/lib/libc.a(libc-lowlevellock.o):/home/tcwg-buildslave/workspace/tcwg-make-release/label/docker-trusty-amd64-tcwg-build/target/aarch64-linux-gnu/snapshots/glibc.git~linaro~2.23~master/nptl/./lowlevellock.c:29:
first defined here
collect2: error: ld returned 1 exit status
make: *** [OCEAN] Error 1



-----------------------------------------
Makefile.config
-----------------------------------------

#CC :=
/local/mnt/workspace/linaro/tools/gcc/gcc-linaro-6.2.1-2016.11-x86_64_arm-linux-gnueabihf/bin/arm-linux-gnueabihf-gcc
CC :=
/local/mnt/workspace/linaro/tools/gcc/gcc-linaro-6.2.1-2016.11-x86_64_aarch64-linux-gnu/bin/aarch64-linux-gnu-gcc


CFLAGS := -v -O3 -pthread -D_POSIX_C_SOURCE=200112
#CFLAGS := -g3 -pthread -D_POSIX_C_SOURCE=200112
CFLAGS := $(CFLAGS) -Wall -W -Wmissing-prototypes -Wmissing-declarations
-Wredundant-decls -Wdisabled-optimization
CFLAGS := $(CFLAGS) -Wpadded -Winline -Wpointer-arith -Wsign-compare
-Wendif-labels
CFLAGS := $(CFLAGS) -lgcc -lc -lm -static
LDFLAGS := -lm -lc -lgcc -static

BASEDIR := /net/dramaswa-linux/local/mnt/workspace/MT/splash2/codes
MACROS := $(BASEDIR)/null_macros/c.m4.null.POSIX_BARRIER
M4 := m4 -s -Ulen -Uindex

x = *

$(TARGET): $(OBJS)
$(CC) $(OBJS) $(CFLAGS) -o $(TARGET) $(LDFLAGS)

clean:
rm -rf *.c *.h *.o $(TARGET)

.SUFFIXES:
.SUFFIXES: .o .c .C .h .H

.H.h:
$(M4) $(MACROS) $*.H > $*.h

.C.c:
$(M4) $(MACROS) $*.C > $*.c

.c.o:
$(CC) -c $(CFLAGS) $*.c

.C.o:
$(M4) $(MACROS) $*.C > $*.c
$(CC) -c $(CFLAGS) $*.c






Maxim Kuvyrkov
2017-10-30 11:55:23 UTC
Permalink
Post by Veena & Deepak Ramaswamy
All,
Using the tool chain that comes with the FVP package that I downloaded last
month (Oct 2017), I'm trying to compile the Splash2 benchmark to execute on
the latest FVP platform and seeing a compilation issue that goes like this
(please see below)
​To reproduce:​
​1. download the benchmark from here and follow _all_ the instructions in
the homepage: ​http://www.capsl.udel.edu/splash/Download.html
2. edit the makefile.config under /splash2/codes to use linaro toolchain
and choose POSIX_BARRIER for the MACROS section
(I've pasted my makefile.config here as well - you will have to modify the
toolchain paths to suit your setup)
​3. cd to splash2/codes/apps/ocean/contiguous_partitions
4. make (and you will see the problem)
Please help.
Thanks.​
------------------------------------------
/local/mnt/workspace/linaro/tools/gcc/gcc-linaro-6.2.1-2016.11-x86_64_aarch64-linux-gnu/bin/aarch64-linux-gnu-gcc
jacobcalc.o jacobcalc2.o laplacalc.o linkup.o main.o multi.o slave1.o
slave2.o subblock.o -v -O3 -pthread -D_POSIX_C_SOURCE=200112 -Wall -W
-Wmissing-prototypes -Wmissing-declarations -Wredundant-decls
-Wdisabled-optimization -Wpadded -Winline -Wpointer-arith -Wsign-compare
-Wendif-labels -lgcc -lc -lm -static -o OCEAN -lm -lc -lgcc -static
Your explicit linking flags might be causing the problem. Try removing "-lgcc -lc" from your command line.

You can notice in the output that compiler driver adds "--start-group -lgcc -lc ... --end-group" options, which is how -lgcc and -lc should be used when linking.

--
Maxim Kuvyrkov
www.linaro.org
Maxim Kuvyrkov
2017-10-31 08:07:47 UTC
Permalink
Thank you for your input, Maxim. Tried your suggestions - same problem again.
Anything else I can try?
You have 2 ways forward:

- Try recent toolchains, e.g., http://releases.linaro.org/components/toolchain/binaries/6.4-2017.08/ or http://releases.linaro.org/components/toolchain/binaries/7.1-2017.08/ .

[if that doesn't work]

- File a bug in our bugzilla and attach a reduced testcase (tarball with object files and a single command line) to reproduce the failure: https://bugs.linaro.org/enter_bug.cgi?product=Linux%20Binary%20toolchain&Bugzilla_restrictlogin=on&GoAheadAndLogIn=Log%20in

Regards,

--
Maxim Kuvyrkov
www.linaro.org
Post by Veena & Deepak Ramaswamy
All,
Using the tool chain that comes with the FVP package that I downloaded last
month (Oct 2017), I'm trying to compile the Splash2 benchmark to execute on
the latest FVP platform and seeing a compilation issue that goes like this
(please see below)
​To reproduce:​
​1. download the benchmark from here and follow _all_ the instructions in
the homepage: ​http://www.capsl.udel.edu/splash/Download.html
2. edit the makefile.config under /splash2/codes to use linaro toolchain
and choose POSIX_BARRIER for the MACROS section
(I've pasted my makefile.config here as well - you will have to modify the
toolchain paths to suit your setup)
​3. cd to splash2/codes/apps/ocean/contiguous_partitions
4. make (and you will see the problem)
Please help.
Thanks.​
------------------------------------------
/local/mnt/workspace/linaro/tools/gcc/gcc-linaro-6.2.1-2016.11-x86_64_aarch64-linux-gnu/bin/aarch64-linux-gnu-gcc
jacobcalc.o jacobcalc2.o laplacalc.o linkup.o main.o multi.o slave1.o
slave2.o subblock.o -v -O3 -pthread -D_POSIX_C_SOURCE=200112 -Wall -W
-Wmissing-prototypes -Wmissing-declarations -Wredundant-decls
-Wdisabled-optimization -Wpadded -Winline -Wpointer-arith -Wsign-compare
-Wendif-labels -lgcc -lc -lm -static -o OCEAN -lm -lc -lgcc -static
Your explicit linking flags might be causing the problem. Try removing "-lgcc -lc" from your command line.
You can notice in the output that compiler driver adds "--start-group -lgcc -lc ... --end-group" options, which is how -lgcc and -lc should be used when linking.
--
Maxim Kuvyrkov
www.linaro.org
--
"To race is to live. But those who
died while racing knew, perhaps,
how to live more than all others."
~ Juan Fangio, Formula-1 5 time champ
Veena & Deepak Ramaswamy
2017-10-31 16:05:34 UTC
Permalink
Alright - Many thanks! Will do.
On Oct 31, 2017, at 4:08 AM, Veena & Deepak Ramaswamy <
Thank you for your input, Maxim. Tried your suggestions - same problem
again.
Anything else I can try?
- Try recent toolchains, e.g., http://releases.linaro.org/
components/toolchain/binaries/6.4-2017.08/ or http://releases.linaro.org/
components/toolchain/binaries/7.1-2017.08/ .
[if that doesn't work]
- File a bug in our bugzilla and attach a reduced testcase (tarball with
https://bugs.linaro.org/enter_bug.cgi?product=Linux%
20Binary%20toolchain&Bugzilla_restrictlogin=on&GoAheadAndLogIn=Log%20in
Regards,
--
Maxim Kuvyrkov
www.linaro.org
On Mon, Oct 30, 2017 at 4:55 AM, Maxim Kuvyrkov <
On Oct 27, 2017, at 6:10 AM, Veena & Deepak Ramaswamy <
All,
Using the tool chain that comes with the FVP package that I downloaded
last
month (Oct 2017), I'm trying to compile the Splash2 benchmark to
execute on
the latest FVP platform and seeing a compilation issue that goes like
this
(please see below)
​To reproduce:​
​1. download the benchmark from here and follow _all_ the instructions
in
the homepage: ​http://www.capsl.udel.edu/splash/Download.html
2. edit the makefile.config under /splash2/codes to use linaro
toolchain
and choose POSIX_BARRIER for the MACROS section
(I've pasted my makefile.config here as well - you will have to modify
the
toolchain paths to suit your setup)
​3. cd to splash2/codes/apps/ocean/contiguous_partitions
4. make (and you will see the problem)
Please help.
Thanks.​
------------------------------------------
/local/mnt/workspace/linaro/tools/gcc/gcc-linaro-6.2.1-
2016.11-x86_64_aarch64-linux-gnu/bin/aarch64-linux-gnu-gcc
jacobcalc.o jacobcalc2.o laplacalc.o linkup.o main.o multi.o slave1.o
slave2.o subblock.o -v -O3 -pthread -D_POSIX_C_SOURCE=200112 -Wall -W
-Wmissing-prototypes -Wmissing-declarations -Wredundant-decls
-Wdisabled-optimization -Wpadded -Winline -Wpointer-arith
-Wsign-compare
-Wendif-labels -lgcc -lc -lm -static -o OCEAN -lm -lc -lgcc -static
Your explicit linking flags might be causing the problem. Try removing
"-lgcc -lc" from your command line.
You can notice in the output that compiler driver adds "--start-group
-lgcc -lc ... --end-group" options, which is how -lgcc and -lc should be
used when linking.
--
Maxim Kuvyrkov
www.linaro.org
--
"To race is to live. But those who
died while racing knew, perhaps,
how to live more than all others."
~ Juan Fangio, Formula-1 5 time champ
--
"To race is to live. But those who
died while racing knew, perhaps,
how to live more than all others."
~ Juan Fangio, Formula-1 5 time champ
Veena & Deepak Ramaswamy
2017-11-06 17:18:15 UTC
Permalink
Hello Maxim

Step#1 Using the new 7.1 tool chain version that you pointed me to
_and_
Step#2 removing the -lgcc -lc flags

Now, I can get to built the sources as intended. I also tried to rebuild by
linux kernel and busybox with the 7.1 tools along with the multi-threaded
application - and it works as intended
So, I suppose there is no need to file a bug anymore? Note: the bug is
still present should we use any 6.x versions (despite including Step#2)

In any case, I am indebted to your technical support.

Many Thanks,




On Tue, Oct 31, 2017 at 9:05 AM, Veena & Deepak Ramaswamy <
Post by Veena & Deepak Ramaswamy
Alright - Many thanks! Will do.
On Oct 31, 2017, at 4:08 AM, Veena & Deepak Ramaswamy <
Thank you for your input, Maxim. Tried your suggestions - same problem
again.
Anything else I can try?
- Try recent toolchains, e.g., http://releases.linaro.org/com
ponents/toolchain/binaries/6.4-2017.08/ or http://releases.linaro.org/com
ponents/toolchain/binaries/7.1-2017.08/ .
[if that doesn't work]
- File a bug in our bugzilla and attach a reduced testcase (tarball with
https://bugs.linaro.org/enter_bug.cgi?product=Linux%20Binary
%20toolchain&Bugzilla_restrictlogin=on&GoAheadAndLogIn=Log%20in
Regards,
--
Maxim Kuvyrkov
www.linaro.org
On Mon, Oct 30, 2017 at 4:55 AM, Maxim Kuvyrkov <
On Oct 27, 2017, at 6:10 AM, Veena & Deepak Ramaswamy <
All,
Using the tool chain that comes with the FVP package that I
downloaded last
month (Oct 2017), I'm trying to compile the Splash2 benchmark to
execute on
the latest FVP platform and seeing a compilation issue that goes like
this
(please see below)
​To reproduce:​
​1. download the benchmark from here and follow _all_ the
instructions in
the homepage: ​http://www.capsl.udel.edu/splash/Download.html
2. edit the makefile.config under /splash2/codes to use linaro
toolchain
and choose POSIX_BARRIER for the MACROS section
(I've pasted my makefile.config here as well - you will have to
modify the
toolchain paths to suit your setup)
​3. cd to splash2/codes/apps/ocean/contiguous_partitions
4. make (and you will see the problem)
Please help.
Thanks.​
------------------------------------------
/local/mnt/workspace/linaro/tools/gcc/gcc-linaro-6.2.1-2016.
11-x86_64_aarch64-linux-gnu/bin/aarch64-linux-gnu-gcc
jacobcalc.o jacobcalc2.o laplacalc.o linkup.o main.o multi.o slave1.o
slave2.o subblock.o -v -O3 -pthread -D_POSIX_C_SOURCE=200112 -Wall -W
-Wmissing-prototypes -Wmissing-declarations -Wredundant-decls
-Wdisabled-optimization -Wpadded -Winline -Wpointer-arith
-Wsign-compare
-Wendif-labels -lgcc -lc -lm -static -o OCEAN -lm -lc -lgcc -static
Your explicit linking flags might be causing the problem. Try removing
"-lgcc -lc" from your command line.
You can notice in the output that compiler driver adds "--start-group
-lgcc -lc ... --end-group" options, which is how -lgcc and -lc should be
used when linking.
--
Maxim Kuvyrkov
www.linaro.org
--
"To race is to live. But those who
died while racing knew, perhaps,
how to live more than all others."
~ Juan Fangio, Formula-1 5 time champ
--
"To race is to live. But those who
died while racing knew, perhaps,
how to live more than all others."
~ Juan Fangio, Formula-1 5 time champ
--
"To race is to live. But those who
died while racing knew, perhaps,
how to live more than all others."
~ Juan Fangio, Formula-1 5 time champ
Loading...