Skip to content

Cannot Build Node.js 6.7.0 on CorePure64 Tinycore Linux #8867

Description

@Siecje
  • Version: 6.7.0
  • Platform: CorePure64 Tinycore Linux
  • Subsystem:

I'm trying to build node version 6.7.0 on 64 bit Tinycore Linux with g++ version 5.2.0.

I'm getting an error that the -fno-rtti flag is being set when the code is using typeid and dynamic_cast.

Steps to reproduce

CorePure64 TinyCore Linux ISO Download http://tinycorelinux.net/7.x/x86_64/release/CorePure64-7.2.iso

tce-load -wi python-dev compiletc
wget https://nodejs.org/dist/v6.7.0/node-v6.7.0.tar.gz
tar -zvxf node-v6.7.0.tar.gz
cd node-v6.7.0
./configure
make

Make output

make[1]: Entering directory '/mnt/vda1/forge/tp_node/node-v6.7.0/out'
  g++ '-DU_I18N_IMPLEMENTATION=1' '-DU_ATTRIBUTE_DEPRECATED=' '-D_CRT_SECURE_NO_DEPRECATE=' '-DU_STATIC_IMPLEMENTATION=1' '-DUCONFIG_NO_TRANSLITERATION=1' '-DUCONFIG_NO_SERVICE=1' '-DUCONFIG_NO_REGULAR_EXPRESSIONS=1' '-DU_ENABLE_DYLOAD=0' '-DU_HAVE_STD_STRING=0' '-DUCONFIG_NO_BREAK_ITERATION=0' '-DUCONFIG_NO_LEGACY_CONVERSION=1' '-DUCONFIG_NO_CONVERSION=1' -I../deps/icu-small/source/i18n -I../deps/icu-small/source/common  -pthread -Wall -Wextra -Wno-unused-parameter -m64 -Wno-deprecated-declarations -O3 -fno-omit-frame-pointer -fno-rtti -fno-exceptions -std=gnu++0x -frtti -MMD -MF /mnt/vda1/forge/tp_node/node-v6.7.0/out/Release/.deps//mnt/vda1/forge/tp_node/node-v6.7.0/out/Release/obj.target/icui18n/deps/icu-small/source/i18n/rbt_pars.o.d.raw  -mtune=generic -Os -pipe -fno-exceptions -fno-rtti -c -o /mnt/vda1/forge/tp_node/node-v6.7.0/out/Release/obj.target/icui18n/deps/icu-small/source/i18n/rbt_pars.o ../deps/icu-small/source/i18n/rbt_pars.cpp
make[1]: Leaving directory '/mnt/vda1/forge/tp_node/node-v6.7.0/out'
make[1]: Entering directory '/mnt/vda1/forge/tp_node/node-v6.7.0/out'
  g++ '-DU_I18N_IMPLEMENTATION=1' '-DU_ATTRIBUTE_DEPRECATED=' '-D_CRT_SECURE_NO_DEPRECATE=' '-DU_STATIC_IMPLEMENTATION=1' '-DUCONFIG_NO_TRANSLITERATION=1' '-DUCONFIG_NO_SERVICE=1' '-DUCONFIG_NO_REGULAR_EXPRESSIONS=1' '-DU_ENABLE_DYLOAD=0' '-DU_HAVE_STD_STRING=0' '-DUCONFIG_NO_BREAK_ITERATION=0' '-DUCONFIG_NO_LEGACY_CONVERSION=1' '-DUCONFIG_NO_CONVERSION=1' -I../deps/icu-small/source/i18n -I../deps/icu-small/source/common  -pthread -Wall -Wextra -Wno-unused-parameter -m64 -Wno-deprecated-declarations -O3 -fno-omit-frame-pointer -fno-rtti -fno-exceptions -std=gnu++0x -frtti -MMD -MF /mnt/vda1/forge/tp_node/node-v6.7.0/out/Release/.deps//mnt/vda1/forge/tp_node/node-v6.7.0/out/Release/obj.target/icui18n/deps/icu-small/source/i18n/plurfmt.o.d.raw  -mtune=generic -Os -pipe -fno-exceptions -fno-rtti -c -o /mnt/vda1/forge/tp_node/node-v6.7.0/out/Release/obj.target/icui18n/deps/icu-small/source/i18n/plurfmt.o ../deps/icu-small/source/i18n/plurfmt.cpp
../deps/icu-small/source/i18n/plurfmt.cpp: In member function 'icu_57::UnicodeString& icu_57::PluralFormat::format(const icu_57::Formattable&, double, icu_57::UnicodeString&, icu_57::FieldPosition&, UErrorCode&) const':
../deps/icu-small/source/i18n/plurfmt.cpp:271:75: error: 'dynamic_cast' not permitted with -fno-rtti
         DecimalFormat *decFmt = dynamic_cast<DecimalFormat *>(numberFormat);
                                                                           ^
../deps/icu-small/source/i18n/plurfmt.cpp:284:75: error: 'dynamic_cast' not permitted with -fno-rtti
         DecimalFormat *decFmt = dynamic_cast<DecimalFormat *>(numberFormat);
                                                                           ^
tools/icu/icui18n.target.mk:285: recipe for target '/mnt/vda1/forge/tp_node/node-v6.7.0/out/Release/obj.target/icui18n/deps/icu-small/source/i18n/plurfmt.o' failed
make[1]: *** [/mnt/vda1/forge/tp_node/node-v6.7.0/out/Release/obj.target/icui18n/deps/icu-small/source/i18n/plurfmt.o] Error 1
make[1]: Leaving directory '/mnt/vda1/forge/tp_node/node-v6.7.0/out'
make[1]: Entering directory '/mnt/vda1/forge/tp_node/node-v6.7.0/out'
  g++ '-DU_I18N_IMPLEMENTATION=1' '-DU_ATTRIBUTE_DEPRECATED=' '-D_CRT_SECURE_NO_DEPRECATE=' '-DU_STATIC_IMPLEMENTATION=1' '-DUCONFIG_NO_TRANSLITERATION=1' '-DUCONFIG_NO_SERVICE=1' '-DUCONFIG_NO_REGULAR_EXPRESSIONS=1' '-DU_ENABLE_DYLOAD=0' '-DU_HAVE_STD_STRING=0' '-DUCONFIG_NO_BREAK_ITERATION=0' '-DUCONFIG_NO_LEGACY_CONVERSION=1' '-DUCONFIG_NO_CONVERSION=1' -I../deps/icu-small/source/i18n -I../deps/icu-small/source/common  -pthread -Wall -Wextra -Wno-unused-parameter -m64 -Wno-deprecated-declarations -O3 -fno-omit-frame-pointer -fno-rtti -fno-exceptions -std=gnu++0x -frtti -MMD -MF /mnt/vda1/forge/tp_node/node-v6.7.0/out/Release/.deps//mnt/vda1/forge/tp_node/node-v6.7.0/out/Release/obj.target/icui18n/deps/icu-small/source/i18n/dtfmtsym.o.d.raw  -mtune=generic -Os -pipe -fno-exceptions -fno-rtti -c -o /mnt/vda1/forge/tp_node/node-v6.7.0/out/Release/obj.target/icui18n/deps/icu-small/source/i18n/dtfmtsym.o ../deps/icu-small/source/i18n/dtfmtsym.cpp
In file included from ../deps/icu-small/source/i18n/dtfmtsym.cpp:43:0:
../deps/icu-small/source/common/unifiedcache.h: In member function 'virtual int32_t icu_57::CacheKey<T>::hashCode() const':
../deps/icu-small/source/common/unifiedcache.h:107:32: error: cannot use typeid with -fno-rtti
        const char *s = typeid(T).name();
                                ^
../deps/icu-small/source/common/unifiedcache.h: In member function 'virtual char* icu_57::CacheKey<T>::writeDescription(char*, int32_t) const':
../deps/icu-small/source/common/unifiedcache.h:115:32: error: cannot use typeid with -fno-rtti
        const char *s = typeid(T).name();
                                ^
../deps/icu-small/source/common/unifiedcache.h: In member function 'virtual UBool icu_57::CacheKey<T>::operator==(const icu_57::CacheKeyBase&) const':
../deps/icu-small/source/common/unifiedcache.h:125:23: error: cannot use typeid with -fno-rtti
        return typeid(*this) == typeid(other);
                       ^
../deps/icu-small/source/common/unifiedcache.h:125:39: error: cannot use typeid with -fno-rtti
        return typeid(*this) == typeid(other);
                                       ^
tools/icu/icui18n.target.mk:285: recipe for target '/mnt/vda1/forge/tp_node/node-v6.7.0/out/Release/obj.target/icui18n/deps/icu-small/source/i18n/dtfmtsym.o' failed
make[1]: *** [/mnt/vda1/forge/tp_node/node-v6.7.0/out/Release/obj.target/icui18n/deps/icu-small/source/i18n/dtfmtsym.o] Error 1
make[1]: Leaving directory '/mnt/vda1/forge/tp_node/node-v6.7.0/out'
make[1]: Entering directory '/mnt/vda1/forge/tp_node/node-v6.7.0/out'

Activity

  1. added
    buildIssues and PRs related to Node.js builds or CI infrastructure.
    on Sep 30, 2016
  2. changed the title [-]Cannot Build Node.js 6.4.0 on CorePure64 Tinycore Linux[/-] [+]Cannot Build Node.js 6.7.0 on CorePure64 Tinycore Linux[/+] on Sep 30, 2016
  3. added
    i18n-apiIssues and PRs related to Node.js internationalization support.
    on Sep 30, 2016
  4. addaleax commented on Sep 30, 2016

    @addaleax
    Member

    /cc @srl295 fyi

  5. srl295 commented on Sep 30, 2016

    @srl295
    Member

    Thanks.

    RTTI is needed for ICU. It's supposed to be on just for Icu.

    El sep. 30, 2016, a las 1:23 PM, Anna Henningsen notifications@github.com escribió:

    /cc @srl295 fyi

    —
    You are receiving this because you were mentioned.
    Reply to this email directly, view it on GitHub, or mute the thread.

  6. bnoordhuis commented on Oct 1, 2016

    @bnoordhuis
    Member

    tools/icu/icu-generic.gyp probably needs to 'cflags_cc!': [ '-fno-rtti' ], it's inheriting it from common.gypi in the top-level directory.

  7. bnoordhuis commented on Oct 1, 2016

    @bnoordhuis
    Member
  8. added a commit that references this issue on Oct 6, 2016
  9. added a commit that references this issue on Jul 27, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    buildIssues and PRs related to Node.js builds or CI infrastructure.i18n-apiIssues and PRs related to Node.js internationalization support.

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions