www.digitalmars.com         C & C++   DMDScript  

D.gnu - GCC master: Weird build problem on Fedora 29

reply Dejan Lekic <dejan.lekic gmail.com> writes:
I am trying to build GCC master with D enabled, configured with:

../configure --enable-languages=d --prefix=/opt/gcc 
--mandir=/opt/gcc/share/man --infodir=/opt/gcc/share/info 
--enable-shared --enable-threads=posix --enable-checking=release 
--with-system-zlib --enable-multilib --with-tune=native 
--build=x86_64-redhat-linux

It stops at phobos:

Checking multilib configuration for libphobos...
Configuring in x86_64-redhat-linux/libphobos
configure: loading cache ./config.cache
checking build system type... x86_64-redhat-linux-gnu
checking host system type... x86_64-redhat-linux-gnu
checking target system type... x86_64-redhat-linux-gnu
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /usr/bin/mkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking whether make supports nested variables... yes
configure: error: source directory already configured; run "make 
distclean" there first
make[1]: *** [Makefile:19619: configure-target-libphobos] Error 1
make[1]: Leaving directory '/disk/one/src/gcc/build'
make: *** [Makefile:982: all] Error 2

When I do what it tells me to do (make distclean in the phobos 
directory) I am getting:

Making distclean in libdruntime
make[1]: Entering directory 
'/disk/one/src/gcc/libphobos/libdruntime'
make[1]: *** No rule to make target 'distclean'.  Stop.
make[1]: Leaving directory 
'/disk/one/src/gcc/libphobos/libdruntime'
make: *** [Makefile:468: distclean-recursive] Error 1

When I looked at libdruntime it seems like it was not configured 
properly (Makefile has not been generated):

dejan turing$ ls
core  __entrypoint.di  gc  gcc  gcstub  LICENSE  __main.di  
Makefile.am  Makefile.in  object.d  rt
Nov 20 2018
next sibling parent dangbinghoo <dangbinghoo gmail.com> writes:
On Tuesday, 20 November 2018 at 08:29:14 UTC, Dejan Lekic wrote:
 When I do what it tells me to do (make distclean in the phobos 
 directory) I am getting:
I don't familiar with gdc compiles, but the error info gives you command `make distclean` should be executed in the top dir(where your configure was executed), not the sub phobos dir.
Nov 20 2018
prev sibling next sibling parent Iain Buclaw <ibuclaw gdcproject.org> writes:
On Tue, 20 Nov 2018 at 09:30, Dejan Lekic via D.gnu <d.gnu puremagic.com> wrote:
 I am trying to build GCC master with D enabled, configured with:

 ../configure --enable-languages=d --prefix=/opt/gcc
 --mandir=/opt/gcc/share/man --infodir=/opt/gcc/share/info
 --enable-shared --enable-threads=posix --enable-checking=release
 --with-system-zlib --enable-multilib --with-tune=native
 --build=x86_64-redhat-linux

 It stops at phobos:

 Checking multilib configuration for libphobos...
 Configuring in x86_64-redhat-linux/libphobos
 configure: loading cache ./config.cache
 checking build system type... x86_64-redhat-linux-gnu
 checking host system type... x86_64-redhat-linux-gnu
 checking target system type... x86_64-redhat-linux-gnu
 checking for a BSD-compatible install... /usr/bin/install -c
 checking whether build environment is sane... yes
 checking for a thread-safe mkdir -p... /usr/bin/mkdir -p
 checking for gawk... gawk
 checking whether make sets $(MAKE)... yes
 checking whether make supports nested variables... yes
 configure: error: source directory already configured; run "make
 distclean" there first
 make[1]: *** [Makefile:19619: configure-target-libphobos] Error 1
 make[1]: Leaving directory '/disk/one/src/gcc/build'
 make: *** [Makefile:982: all] Error 2

 When I do what it tells me to do (make distclean in the phobos
 directory) I am getting:

 Making distclean in libdruntime
 make[1]: Entering directory
 '/disk/one/src/gcc/libphobos/libdruntime'
 make[1]: *** No rule to make target 'distclean'.  Stop.
 make[1]: Leaving directory
 '/disk/one/src/gcc/libphobos/libdruntime'
 make: *** [Makefile:468: distclean-recursive] Error 1

 When I looked at libdruntime it seems like it was not configured
 properly (Makefile has not been generated):

 dejan turing$ ls
 core  __entrypoint.di  gc  gcc  gcstub  LICENSE  __main.di
 Makefile.am  Makefile.in  object.d  rt
Make sure you are building out of tree. Judging from your configure command, it looks like you have. The generated Makefile will not appear in the source directory, have a look in ./x86_64-redhat-gnu/libphobos. I'll give your build configuration a try locally to see the result. -- Iain
Nov 21 2018
prev sibling parent Iain Buclaw <ibuclaw gdcproject.org> writes:
On Wed, 21 Nov 2018 at 12:27, Iain Buclaw <ibuclaw gdcproject.org> wrote:
 On Tue, 20 Nov 2018 at 09:30, Dejan Lekic via D.gnu <d.gnu puremagic.com>
wrote:
 I am trying to build GCC master with D enabled, configured with:

 ../configure --enable-languages=d --prefix=/opt/gcc
 --mandir=/opt/gcc/share/man --infodir=/opt/gcc/share/info
 --enable-shared --enable-threads=posix --enable-checking=release
 --with-system-zlib --enable-multilib --with-tune=native
 --build=x86_64-redhat-linux

 It stops at phobos:

 Checking multilib configuration for libphobos...
 Configuring in x86_64-redhat-linux/libphobos
 configure: loading cache ./config.cache
 checking build system type... x86_64-redhat-linux-gnu
 checking host system type... x86_64-redhat-linux-gnu
 checking target system type... x86_64-redhat-linux-gnu
 checking for a BSD-compatible install... /usr/bin/install -c
 checking whether build environment is sane... yes
 checking for a thread-safe mkdir -p... /usr/bin/mkdir -p
 checking for gawk... gawk
 checking whether make sets $(MAKE)... yes
 checking whether make supports nested variables... yes
 configure: error: source directory already configured; run "make
 distclean" there first
 make[1]: *** [Makefile:19619: configure-target-libphobos] Error 1
 make[1]: Leaving directory '/disk/one/src/gcc/build'
 make: *** [Makefile:982: all] Error 2

 When I do what it tells me to do (make distclean in the phobos
 directory) I am getting:

 Making distclean in libdruntime
 make[1]: Entering directory
 '/disk/one/src/gcc/libphobos/libdruntime'
 make[1]: *** No rule to make target 'distclean'.  Stop.
 make[1]: Leaving directory
 '/disk/one/src/gcc/libphobos/libdruntime'
 make: *** [Makefile:468: distclean-recursive] Error 1

 When I looked at libdruntime it seems like it was not configured
 properly (Makefile has not been generated):

 dejan turing$ ls
 core  __entrypoint.di  gc  gcc  gcstub  LICENSE  __main.di
 Makefile.am  Makefile.in  object.d  rt
Make sure you are building out of tree. Judging from your configure command, it looks like you have. The generated Makefile will not appear in the source directory, have a look in ./x86_64-redhat-gnu/libphobos. I'll give your build configuration a try locally to see the result.
Seems to finish to completion for me. Recently, there was a dependency update of autoconf to 2.69 and automake to 1.15.1. Check that you have these versions installed just incase. -- Iain
Nov 21 2018