GithubHelp home page GithubHelp logo

Comments (10)

jevolk avatar jevolk commented on June 10, 2024

Am I missing a package,

It seems that the issue is with the linker and not char16_t.
I think you might be missing the gold linker package. Check for ld.gold.

from construct.

jobukkit avatar jobukkit commented on June 10, 2024

I installed binutils-gold but that didn't fix it.

from construct.

jevolk avatar jevolk commented on June 10, 2024

The above log doesn't show any symbol or compilation error for char16_t, but instead gives an error for --rosegment to ld. I recognized this a gold feature. If you have installed gold now could you perhaps try to clear the config cache (i.e git clean -f -x -d) and re-run configure and post a new log?

If the log is exactly the same, the issue appears to be gold not being found and used. AFAICT ./configure searches for ld.gold and if the Alpine package installs it under a name other than ld.gold please let me know.

from construct.

jobukkit avatar jobukkit commented on June 10, 2024

On OpenSUSE Leap 15.2 I got

checking for library containing __dynamic_cast... no
configure: error: Please install libstdc++ on this system.

even though libstdc++6 was installed.

On Ubuntu 20.04, ./configure works but during make install I got

make[2]: Entering directory '/home/construct/Downloads/construct/ircd'
depbase=`echo fmt.lo | sed 's|[^/]*$|.deps/&|;s|\.lo$||'`;\
/bin/bash ../libtool  --tag=CXX   --mode=compile clang++ -std=gnu++17 -DHAVE_CONFIG_H -DIRCD_UNIT    -I/usr/include -include ircd/spirit.h -I../include -include ircd/ircd.pic.h   -Wall -Wextra -Wpointer-arith -Wcast-align -Wcast-qual -Wfloat-equal -Wwrite-strings -Wparentheses -Wundef -Wpacked -Wformat -Wformat-y2k -Wformat-nonliteral -Wstrict-aliasing=2 -Wstrict-overflow=5 -Wdisabled-optimization -Winvalid-pch -Winit-self -Wuninitialized -Wunreachable-code -Wno-overloaded-virtual -Wnon-virtual-dtor -Wctor-dtor-privacy -Wsign-promo -Wnull-dereference -Wundef -Wodr -Werror=return-type -Wno-missing-field-initializers -Wno-unused -Wno-unused-function -Wno-unused-label -Wno-unused-value -Wno-unused-variable -Wno-unused-parameter -Wno-endif-labels -Wno-unknown-pragmas -Wno-unknown-attributes -Wno-profile-instr-unprofiled -Wno-mismatched-tags -Wno-format-security -Wno-unknown-warning-option  -DPCH -DNDEBUG   -ftls-model=initial-exec -fno-c++-static-destructors -flto=thin -fstrict-vtable-pointers -fwhole-program-vtables -fprofile-use  -fsigned-char -mtune=native -march=native -mno-sse4a -fno-threadsafe-statics -fvisibility-inlines-hidden -fasynchronous-unwind-tables -grecord-gcc-switches -ggdb -g -fno-function-sections -fno-data-sections -O3 -pipe    -MT fmt.lo -MD -MP -MF $depbase.Tpo -c -o fmt.lo fmt.cc &&\
mv -f $depbase.Tpo $depbase.Plo
libtool: compile:  clang++ -std=gnu++17 -DHAVE_CONFIG_H -DIRCD_UNIT -I/usr/include -include ircd/spirit.h -I../include -include ircd/ircd.pic.h -Wall -Wextra -Wpointer-arith -Wcast-align -Wcast-qual -Wfloat-equal -Wwrite-strings -Wparentheses -Wundef -Wpacked -Wformat -Wformat-y2k -Wformat-nonliteral -Wstrict-aliasing=2 -Wstrict-overflow=5 -Wdisabled-optimization -Winvalid-pch -Winit-self -Wuninitialized -Wunreachable-code -Wno-overloaded-virtual -Wnon-virtual-dtor -Wctor-dtor-privacy -Wsign-promo -Wnull-dereference -Wundef -Wodr -Werror=return-type -Wno-missing-field-initializers -Wno-unused -Wno-unused-function -Wno-unused-label -Wno-unused-value -Wno-unused-variable -Wno-unused-parameter -Wno-endif-labels -Wno-unknown-pragmas -Wno-unknown-attributes -Wno-profile-instr-unprofiled -Wno-mismatched-tags -Wno-format-security -Wno-unknown-warning-option -DPCH -DNDEBUG -ftls-model=initial-exec -fno-c++-static-destructors -flto=thin -fstrict-vtable-pointers -fwhole-program-vtables -fprofile-use -fsigned-char -mtune=native -march=native -mno-sse4a -fno-threadsafe-statics -fvisibility-inlines-hidden -fasynchronous-unwind-tables -grecord-gcc-switches -ggdb -g -fno-function-sections -fno-data-sections -O3 -pipe -MT fmt.lo -MD -MP -MF .deps/fmt.Tpo -c fmt.cc  -fPIC -DPIC -o .libs/fmt.o
../libtool: line 1762: 19824 Killed                  clang++ -std=gnu++17 -DHAVE_CONFIG_H -DIRCD_UNIT -I/usr/include -include ircd/spirit.h -I../include -include ircd/ircd.pic.h -Wall -Wextra -Wpointer-arith -Wcast-align -Wcast-qual -Wfloat-equal -Wwrite-strings -Wparentheses -Wundef -Wpacked -Wformat -Wformat-y2k -Wformat-nonliteral -Wstrict-aliasing=2 -Wstrict-overflow=5 -Wdisabled-optimization -Winvalid-pch -Winit-self -Wuninitialized -Wunreachable-code -Wno-overloaded-virtual -Wnon-virtual-dtor -Wctor-dtor-privacy -Wsign-promo -Wnull-dereference -Wundef -Wodr -Werror=return-type -Wno-missing-field-initializers -Wno-unused -Wno-unused-function -Wno-unused-label -Wno-unused-value -Wno-unused-variable -Wno-unused-parameter -Wno-endif-labels -Wno-unknown-pragmas -Wno-unknown-attributes -Wno-profile-instr-unprofiled -Wno-mismatched-tags -Wno-format-security -Wno-unknown-warning-option -DPCH -DNDEBUG -ftls-model=initial-exec -fno-c++-static-destructors -flto=thin -fstrict-vtable-pointers -fwhole-program-vtables -fprofile-use -fsigned-char -mtune=native -march=native -mno-sse4a -fno-threadsafe-statics -fvisibility-inlines-hidden -fasynchronous-unwind-tables -grecord-gcc-switches -ggdb -g -fno-function-sections -fno-data-sections -O3 -pipe -MT fmt.lo -MD -MP -MF .deps/fmt.Tpo -c fmt.cc -fPIC -DPIC -o .libs/fmt.o
make[2]: *** [Makefile:882: fmt.lo] Error 1
make[2]: Leaving directory '/home/construct/Downloads/construct/ircd'
make[1]: *** [Makefile:989: install] Error 2
make[1]: Leaving directory '/home/construct/Downloads/construct/ircd'
make: *** [Makefile:530: install-recursive] Error 1

What am I doing wrong 😣

from construct.

jevolk avatar jevolk commented on June 10, 2024

Ubuntu 20.04

This one is easy, you'll just need more RAM to compile some of these units with complex grammars. It should be sufficient with 2 GiB per unit (per core) but in certain circumstances that's close to the edge and parts of the system might swap; so slightly more than 2 GiB may be required for a system which compiles (swap included).

OpenSUSE Leap 15.2

This one I'm not sure...

from construct.

jobukkit avatar jobukkit commented on June 10, 2024

This one is easy, you'll just need more RAM to compile some of these units with complex grammars. It should be sufficient with 2 GiB per unit (per core) but in certain circumstances that's close to the edge and parts of the system might swap; so slightly more than 2 GiB may be required for a system which compiles (swap included).

Thanks, I added a 2 GB large swap file, and now I have it working on Ubuntu!
Keeping this issue open for Alpine and OpenSUSE problems.

from construct.

sirrkitt avatar sirrkitt commented on June 10, 2024

On Alpine, at least, if you rename ld to something else and then symlink ld.gold to ld you can get around the issue.

mv /usr/bin/ld /usr/bin/ld.bak
ln -s /usr/bin/ld.gold /usr/bin/ld
mv /usr/x86_64-alpine-linux-musl/bin/ld /usr/x86_64-alpine-linux-musl/bin/ld.bak
ln -s /usr/x86_64-alpine-linux-musl/bin/ld.gold /usr/x86_64-alpine-linux-musl/bin/ld

But it looks like it doesn't like musl because I get compile errors with both gcc and clang when trying to build with Alpine.

from construct.

jevolk avatar jevolk commented on June 10, 2024

I get compile errors with both gcc and clang when trying to build with Alpine.

You can paste the error here if it fits, otherwise feel free to pastebin the full build log.

from construct.

sirrkitt avatar sirrkitt commented on June 10, 2024

Here you go! The errors that I'm getting are at the end

        return string(e.code());
                       ^
../include/ircd/exception.h:19:9: note: forward declaration of 'boost::system::system_error'
        struct system_error;
               ^
exception.cc:84:22: error: member access into incomplete type 'const boost::system::system_error'
        return string(buf, e.code());
                            ^
../include/ircd/exception.h:19:9: note: forward declaration of 'boost::system::system_error'
        struct system_error;
               ^
exception.cc:147:30: error: no member named 'system_category' in namespace 'boost::system'
               ec == boost::system::system_category() ||
                     ~~~~~~~~~~~~~~~^
exception.cc:148:30: error: no member named 'generic_category' in namespace 'boost::system'
               ec == boost::system::generic_category();
                     ~~~~~~~~~~~~~~~^
exception.cc:156:20: error: member access into incomplete type 'const boost::system::system_error'
                make_error_code(e.code()), e.what()
                                 ^
../include/ircd/exception.h:19:9: note: forward declaration of 'boost::system::system_error'
        struct system_error;
               ^
exception.cc:156:31: error: member access into incomplete type 'const boost::system::system_error'
                make_error_code(e.code()), e.what()
                                            ^
../include/ircd/exception.h:19:9: note: forward declaration of 'boost::system::system_error'
        struct system_error;
               ^
exception.cc:202:4: error: member access into incomplete type 'const boost::system::system_error'
                e.code().value(), e.code().category()
                 ^
../include/ircd/exception.h:19:9: note: forward declaration of 'boost::system::system_error'
        struct system_error;
               ^
exception.cc:212:5: error: member access into incomplete type 'const boost::system::error_code'
                ec.value(), ec.category()
                  ^
../include/ircd/exception.h:17:9: note: forward declaration of 'boost::system::error_code'
        struct error_code;
               ^```

from construct.

jevolk avatar jevolk commented on June 10, 2024

Fixed by 0.7.704

from construct.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.