pkgsrc-Users archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: lang/nodejs failed to compile



‐‐‐‐‐‐‐ Original Message ‐‐‐‐‐‐‐

On Wednesday, June 30th, 2021 at 7:29 PM, hung.nguyengia <hung.nguyengia%protonmail.com@localhost> wrote:

> ‐‐‐‐‐‐‐ Original Message ‐‐‐‐‐‐‐
>
> On Tuesday, June 29th, 2021 at 5:31 PM, Tobias Nygren tnn%NetBSD.org@localhost wrote:
>
> > On Tue, 29 Jun 2021 06:47:01 +0000
> >
> > "hung.nguyengia" hung.nguyengia%protonmail.com@localhost wrote:
> >
> > > It's based on RHEL. The GCC version is too old:
> > >
> > > gcc version 5.5.0 20171010 (Linaro GCC 5.5-2017.10)
> > >
> > > The distribution offers latest version of Clang and libc++, though. I bootstrapped pkgsrc like this:
> > >
> > > ./bootstrap --compiler clang --make-jobs 16 --unprivileged
> > >
> > > It seems clang still uses gcc's libstdc++, though. It's too old and doesn't support the C++ features lang/nodejs needs so lang/nodejs still failed to compile.
> > >
> > > Any help would be appreciated.
> >
> > Hello,
> >
> > Try to put this in mk.conf:
> >
> > .if !empty(PKGPATH:Mlang/nodejs)
> >
> > PKGSRC_COMPILER=gcc
> >
> > GCC_REQD=10
> >
> > GCCBASE=/usr/pkg/gcc10
> >
> > CC=/usr/pkg/gcc10/bin/gcc
> >
> > CXX=/usr/pkg/gcc10/bin/g++
> >
> > .endif
> >
> > It may still cause problems linking with dependencies
> >
> > that nodejs needs so you might need to rebuild all
> >
> > packages with lang/gcc10 for this to work.
> >
> > To do this, rebootstrap pkgsrc with the system GCC
> >
> > and then use the above without the PKGPATH conditional.
>
> I started from scratch with a new pkgsrc bootstrap. After have lang/gcc10 installed I added these to my mk.conf:
>
> GCC_REQD= 10
>
> GCCBASE= /home/hung/pkg/gcc10
>
> CC= /home/hung/pkg/gcc10/bin/gcc
>
> CXX= /home/hung/pkg/gcc10/bin/g++
>
> Too bad lang/nodejs failed to compile with this error on the readline dependency:
>
> https://pastebin.com/GwDEbkzv

Well now I'm sure pkgsrc's GCC doesn't work. I could use it to compile example program from the terminal but surprisingly it doesn't work when building with pkgsrc itself. I tried to build lang/php80 with this setting in mk.conf and it stucks indefinitely at the flex dependency:

./stage1flex   -o stage1scan.c ./scan.l

Surprisingly, remove the setting above and after a bmake clean clean-depends I could build it as normal.


Home | Main Index | Thread Index | Old Index