On Thu, Mar 8, 2018 at 10:56 PM, Siegmar Gross <siegmar.gr...@informatik.hs-fulda.de> wrote: > > 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.
Are there any errors during the `make` or `make install`? Ian