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

Reply via email to