public inbox for gcc@gcc.gnu.org
 help / color / mirror / Atom feed
* gcc-8-20180225: "go" breaks building OpenMP
@ 2018-03-09  6:56 Siegmar Gross
  2018-03-09  9:35 ` Jakub Jelinek
  2018-03-09 13:38 ` Ian Lance Taylor
  0 siblings, 2 replies; 10+ messages in thread
From: Siegmar Gross @ 2018-03-09  6:56 UTC (permalink / raw)
  To: gcc

Hi,

some days ago I've installed gcc-8-20180225 with accelerator support
on my "SUSE Linux Enterprise Server 12.3 (x86_64)" with gcc-6.4.0.
Yesterday I tried to add the languages objc, obj-c++, and go to my
installation. Unfortunately, I lost the OpenMP support. Adding the
languages step-by-step, I found out that "go" is responsible for the
problem.

loki local 111 diff -rq gcc-8.0.0_2/nvptx-none/lib/ 
gcc-8.0.0_3/nvptx-none/lib/ |& grep -v differ
Only in gcc-8.0.0_2/nvptx-none/lib/: libgfortran.a
Only in gcc-8.0.0_2/nvptx-none/lib/: libgfortran.la
Only in gcc-8.0.0_2/nvptx-none/lib/: libgfortran.spec
Only in gcc-8.0.0_2/nvptx-none/lib/: libgomp.a
Only in gcc-8.0.0_2/nvptx-none/lib/: libgomp.la
Only in gcc-8.0.0_2/nvptx-none/lib/: libgomp.spec
Only in gcc-8.0.0_2/nvptx-none/lib/mgomp: libgfortran.a
Only in gcc-8.0.0_2/nvptx-none/lib/mgomp: libgfortran.la
Only in gcc-8.0.0_2/nvptx-none/lib/mgomp: libgfortran.spec
Only in gcc-8.0.0_2/nvptx-none/lib/mgomp: libgomp.a
Only in gcc-8.0.0_2/nvptx-none/lib/mgomp: libgomp.la
Only in gcc-8.0.0_2/nvptx-none/lib/mgomp: libgomp.spec
loki local 112



My make-directories show the following differences.

loki gcc-8.0.0 115 diff -rq make_nvptx-tools_2 make_nvptx-tools_3 |& grep -v 
differ | sort


loki gcc-8.0.0 116 diff -rq gcc-8.0.0_build_2 gcc-8.0.0_build_3 |& grep -v 
differ | sort
Only in gcc-8.0.0_build_2/gcc: b-header-vars
Only in gcc-8.0.0_build_2/gcc: s-header-vars
Only in gcc-8.0.0_build_2/nvptx-none/libgomp/testsuite: libgomp-test-support.exp
Only in gcc-8.0.0_build_2/nvptx-none/libgomp: .libs
Only in gcc-8.0.0_build_2/nvptx-none/libgomp: affinity.lo
Only in gcc-8.0.0_build_2/nvptx-none/libgomp: affinity.o
...
Only in gcc-8.0.0_build_2/nvptx-none/libgomp: work.lo
Only in gcc-8.0.0_build_2/nvptx-none/libgomp: work.o
Only in gcc-8.0.0_build_2/nvptx-none/mgomp/libgomp/testsuite: 
libgomp-test-support.exp
Only in gcc-8.0.0_build_2/nvptx-none/mgomp/libgomp: .libs
Only in gcc-8.0.0_build_2/nvptx-none/mgomp/libgomp: affinity.lo
Only in gcc-8.0.0_build_2/nvptx-none/mgomp/libgomp: affinity.o
...
Only in gcc-8.0.0_build_2/nvptx-none/mgomp/libgomp: work.lo
Only in gcc-8.0.0_build_2/nvptx-none/mgomp/libgomp: work.o
Only in gcc-8.0.0_build_2/nvptx-none/mgomp: libgfortran
Only in gcc-8.0.0_build_2/nvptx-none: libgfortran
Only in gcc-8.0.0_build_3/gcc/doc: gccgo.1
Only in gcc-8.0.0_build_3/gcc/doc: gccgo.info
Only in gcc-8.0.0_build_3/gcc/go/.deps: ast-dump.Po
Only in gcc-8.0.0_build_3/gcc/go/.deps: escape.Po
Only in gcc-8.0.0_build_3/gcc/go/.deps: export.Po
...
Only in gcc-8.0.0_build_3/gcc/go: unsafe.o
Only in gcc-8.0.0_build_3/gcc/go: wb.o
Only in gcc-8.0.0_build_3/gcc: gccgo
Only in gcc-8.0.0_build_3/gcc: gccgo-cross
Only in gcc-8.0.0_build_3/gcc: go1
Only in gcc-8.0.0_build_3/nvptx-none: libffi
Only in gcc-8.0.0_build_3: gotools



loki gcc-8.0.0 117 diff -rq gcc-8.0.0_host_build_2 gcc-8.0.0_host_build_3 |& 
grep -v differ | sort
Only in gcc-8.0.0_host_build_3/gcc/doc: gccgo.1
Only in gcc-8.0.0_host_build_3/gcc/doc: gccgo.info
Only in gcc-8.0.0_host_build_3/gcc/go/.deps: ast-dump.Po
Only in gcc-8.0.0_host_build_3/gcc/go/.deps: escape.Po
...
Only in gcc-8.0.0_host_build_3/gcc/go: unsafe.o
Only in gcc-8.0.0_host_build_3/gcc/go: wb.o
Only in gcc-8.0.0_host_build_3/gcc: gccgo
Only in gcc-8.0.0_host_build_3/gcc: go1
Only in gcc-8.0.0_host_build_3/prev-gcc/doc: gccgo.1
Only in gcc-8.0.0_host_build_3/prev-gcc/doc: gccgo.info
Only in gcc-8.0.0_host_build_3/prev-gcc/go/.deps: ast-dump.Po
Only in gcc-8.0.0_host_build_3/prev-gcc/go/.deps: escape.Po
...
Only in gcc-8.0.0_host_build_3/prev-gcc/go: wb.o
Only in gcc-8.0.0_host_build_3/prev-gcc: gccgo
Only in gcc-8.0.0_host_build_3/prev-gcc: go1
Only in gcc-8.0.0_host_build_3/x86_64-pc-linux-gnu/32: libffi
Only in gcc-8.0.0_host_build_3/x86_64-pc-linux-gnu/32: libgo
Only in gcc-8.0.0_host_build_3/x86_64-pc-linux-gnu: libffi
Only in gcc-8.0.0_host_build_3/x86_64-pc-linux-gnu: libgo
Only in gcc-8.0.0_host_build_3: gotools
loki gcc-8.0.0 118



The commands to build both versions are only different for the language
part.

loki gcc-8.0.0 118 diff README-gcc-8.0.0_2 README-gcc-8.0.0_3
77c77
<   --enable-languages=c,c++,objc,obj-c++,fortran,lto \
---
 >   --enable-languages=c,c++,objc,obj-c++,fortran,go,lto \
91c91
<   --enable-languages=c,c++,objc,obj-c++,fortran,lto \
---
 >   --enable-languages=c,c++,objc,obj-c++,fortran,go,lto \
loki gcc-8.0.0 119



I used the following commands to build everything.

setenv LD_LIBRARY_PATH ${LD_LIBRARY_PATH}:/usr/local/cuda/lib64
setenv CUDA_INC_PATH /usr/local/cuda/include
setenv CUDA_LIB_PATH /usr/local/cuda/lib64
set path = ( ${path} /usr/local/cuda/bin )

mkdir make_nvptx-tools
cd make_nvptx-tools
../nvptx-tools/configure --prefix=/usr/local/gcc-8.0.0 \
   |& tee log.configure
make |& tee log.make
make install |& tee log.make-install
cd ..

mkdir gcc-8.0.0_build
cd gcc-8.0.0_build
../gcc-8.0.0/configure --prefix=/usr/local/gcc-8.0.0 \
   --target=nvptx-none \
   --enable-as-accelerator-for=x86_64-pc-linux-gnu \
   --with-build-time-tools=/usr/local/gcc-8.0.0/nvptx-none/bin \
   --disable-sjlj-exceptions \
   --with-newlib \
   --enable-newlib-io-long-long \
   --enable-languages=c,c++,objc,obj-c++,fortran,go,lto \
   |& tee log.configure
make -j 6 |& tee log.make
make -j 6 install |& tee log.make-install

mkdir ../gcc-8.0.0_host_build
cd ../gcc-8.0.0_host_build
../gcc-8.0.0/configure --prefix=/usr/local/gcc-8.0.0 \
   --build=x86_64-pc-linux-gnu \
   --host=x86_64-pc-linux-gnu \
   --target=x86_64-pc-linux-gnu \
   --enable-offload-targets=nvptx-none=/usr/local/gcc-8.0.0/bin \
   --with-cuda-driver=/usr/local/cuda/ \
   --enable-languages=c,c++,objc,obj-c++,fortran,go,lto \
   --enable-nls \
   --enable-threads=posix \
   --with-gmp-lib=/usr/local/lib64 \
   --with-gmp-include=/usr/local/include \
   --with-mpfr-lib=/usr/local/lib64 \
   --with-mpfr-include=/usr/local/include \
   --with-mpc-lib=/usr/local/lib64 \
   --with-mpc-include=/usr/local/include \
   --with-isl-lib=/usr/local/lib64 \
   --with-isl-include=/usr/local/include \
   |& tee log.configure
make -j 6 |& tee log.make
make -j 6 install |& tee log.make-install


Using "make" instead of "make -j 6" didn't change the result. Does anybody
know why "go" prohibts a correct build process for OpenMP? Do you need
any files from my build-directories to investigate the problem? I would be
grateful, if somebody knows a solution or can fix the problem. Thank you
very much for any help in advance.


Kind regards

Siegmar

^ permalink raw reply	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2018-03-09 21:04 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-03-09  6:56 gcc-8-20180225: "go" breaks building OpenMP Siegmar Gross
2018-03-09  9:35 ` Jakub Jelinek
2018-03-09  8:32   ` Siegmar Gross
2018-03-09 16:15     ` Thomas Schwinge
2018-03-09 16:28       ` Siegmar Gross
2018-03-09 13:38 ` Ian Lance Taylor
2018-03-09 16:15   ` Siegmar Gross
2018-03-09 16:59     ` Thomas Schwinge
2018-03-09 21:04       ` Siegmar Gross
2018-03-09 18:35     ` Jakub Jelinek

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 read-only IMAP folder(s) and NNTP newsgroup(s).