Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Can't build v6.9.5 with gcc 7.0.1 #11118

Closed
kasicka opened this issue Feb 2, 2017 · 6 comments
Closed

Can't build v6.9.5 with gcc 7.0.1 #11118

kasicka opened this issue Feb 2, 2017 · 6 comments
Labels
build Issues and PRs related to build files or the CI. duplicate Issues and PRs that are duplicates of other issues or PRs. v8 engine Issues and PRs related to the V8 dependency.

Comments

@kasicka
Copy link

kasicka commented Feb 2, 2017

Version: 6.9.5
Platform: Fedora rawhide

Building node v6.9.5 using gcc 7.0.1 results in:

  g++ '-DV8_TARGET_ARCH_X64' '-DENABLE_DISASSEMBLER' '-DV8_I18N_SUPPORT' '-DV8_IMMINENT_DEPRECATION_WARNINGS' '-DICU_UTIL_DATA_IMPL=ICU_UTIL_DATA_STATIC' -I../deps/v8 -I../deps  -pthread -Wall -Wextra -Wno-unused-parameter -m64 -fno-strict-aliasing -m64 -fdata-sections -ffunction-sections -O3 -O3 -fno-omit-frame-pointer -fno-rtti -fno-exceptions -std=gnu++0x -MMD -MF /builddir/build/BUILD/node-v6.9.5/out/Release/.deps//builddir/build/BUILD/node-v6.9.5/out/Release/obj.target/v8_base/deps/v8/src/allocation-site-scopes.o.d.raw  -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -m64 -mtune=generic -g   -D_LARGEFILE_SOURCE   -D_FILE_OFFSET_BITS=64   -DZLIB_CONST   -fno-delete-null-pointer-checks  -c -o /builddir/build/BUILD/node-v6.9.5/out/Release/obj.target/v8_base/deps/v8/src/allocation-site-scopes.o ../deps/v8/src/allocation-site-scopes.cc
In file included from ../deps/v8/src/address-map.h:10:0,
                 from ../deps/v8/src/address-map.cc:5:
../deps/v8/src/objects.h: In member function 'uint32_t v8::internal::HashTable<Derived, Shape, Key>::Hash(Key)':
../deps/v8/src/objects.h:3267:46: error: invalid use of incomplete type 'class v8::internal::Heap'
       return Shape::SeededHash(key, GetHeap()->HashSeed());
                                              ^~
In file included from ../deps/v8/src/allocation.h:8:0,
                 from ../deps/v8/src/hashmap.h:8,
                 from ../deps/v8/src/address-map.h:9,
                 from ../deps/v8/src/address-map.cc:5:
../deps/v8/src/globals.h:393:7: note: forward declaration of 'class v8::internal::Heap'
 class Heap;
       ^~~~
In file included from ../deps/v8/src/address-map.h:10:0,
                 from ../deps/v8/src/address-map.cc:5:
../deps/v8/src/objects.h: In member function 'uint32_t v8::internal::HashTable<Derived, Shape, Key>::HashForObject(Key, v8::internal::Object*)':
../deps/v8/src/objects.h:3275:55: error: invalid use of incomplete type 'class v8::internal::Heap'
       return Shape::SeededHashForObject(key, GetHeap()->HashSeed(), object);
                                                       ^~
In file included from ../deps/v8/src/allocation.h:8:0,
                 from ../deps/v8/src/hashmap.h:8,
                 from ../deps/v8/src/address-map.h:9,
                 from ../deps/v8/src/address-map.cc:5:
../deps/v8/src/globals.h:393:7: note: forward declaration of 'class v8::internal::Heap'
 class Heap;
       ^~~~
  g++ '-DV8_TARGET_ARCH_X64' '-DENABLE_DISASSEMBLER' '-DV8_I18N_SUPPORT' '-DV8_IMMINENT_DEPRECATION_WARNINGS' '-DICU_UTIL_DATA_IMPL=ICU_UTIL_DATA_STATIC' -I../deps/v8 -I../deps  -pthread -Wall -Wextra -Wno-unused-parameter -m64 -fno-strict-aliasing -m64 -fdata-sections -ffunction-sections -O3 -O3 -fno-omit-frame-pointer -fno-rtti -fno-exceptions -std=gnu++0x -MMD -MF /builddir/build/BUILD/node-v6.9.5/out/Release/.deps//builddir/build/BUILD/node-v6.9.5/out/Release/obj.target/v8_base/deps/v8/src/api-experimental.o.d.raw  -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -m64 -mtune=generic -g   -D_LARGEFILE_SOURCE   -D_FILE_OFFSET_BITS=64   -DZLIB_CONST   -fno-delete-null-pointer-checks  -c -o /builddir/build/BUILD/node-v6.9.5/out/Release/obj.target/v8_base/deps/v8/src/api-experimental.o ../deps/v8/src/api-experimental.cc
In file included from ../deps/v8/src/heap/spaces.h:16:0,
                 from ../deps/v8/src/heap/heap.h:20,
                 from ../deps/v8/src/contexts.h:8,
                 from ../deps/v8/src/api.h:9,
                 from ../deps/v8/src/accessors.cc:7:
../deps/v8/src/objects.h: In member function 'uint32_t v8::internal::HashTable<Derived, Shape, Key>::Hash(Key)':
../deps/v8/src/objects.h:3267:46: error: invalid use of incomplete type 'class v8::internal::Heap'
       return Shape::SeededHash(key, GetHeap()->HashSeed());
                                              ^~
In file included from ../deps/v8/src/accessors.h:8:0,
                 from ../deps/v8/src/accessors.cc:5:
../deps/v8/include/v8.h:148:7: note: forward declaration of 'class v8::internal::Heap'
 class Heap;
       ^~~~
In file included from ../deps/v8/src/heap/spaces.h:16:0,
                 from ../deps/v8/src/heap/heap.h:20,
                 from ../deps/v8/src/contexts.h:8,
                 from ../deps/v8/src/api.h:9,
                 from ../deps/v8/src/accessors.cc:7:
../deps/v8/src/objects.h: In member function 'uint32_t v8::internal::HashTable<Derived, Shape, Key>::HashForObject(Key, v8::internal::Object*)':
../deps/v8/src/objects.h:3275:55: error: invalid use of incomplete type 'class v8::internal::Heap'
       return Shape::SeededHashForObject(key, GetHeap()->HashSeed(), object);
                                                       ^~
In file included from ../deps/v8/src/accessors.h:8:0,
                 from ../deps/v8/src/accessors.cc:5:
../deps/v8/include/v8.h:148:7: note: forward declaration of 'class v8::internal::Heap'
 class Heap;
       ^~~~
In file included from ../deps/v8/src/heap/spaces.h:16:0,
                 from ../deps/v8/src/heap/heap.h:20,
                 from ../deps/v8/src/contexts.h:8,
                 from ../deps/v8/src/isolate.h:18,
                 from ../deps/v8/src/assembler.h:40,
                 from ../deps/v8/src/ast/ast.h:8,
                 from ../deps/v8/src/allocation-site-scopes.h:8,
                 from ../deps/v8/src/allocation-site-scopes.cc:5:
../deps/v8/src/objects.h: In member function 'uint32_t v8::internal::HashTable<Derived, Shape, Key>::Hash(Key)':
../deps/v8/src/objects.h:3267:46: error: invalid use of incomplete type 'class v8::internal::Heap'
       return Shape::SeededHash(key, GetHeap()->HashSeed());
                                              ^~
In file included from ../deps/v8/src/allocation.h:8:0,
                 from ../deps/v8/src/assembler.h:38,
                 from ../deps/v8/src/ast/ast.h:8,
                 from ../deps/v8/src/allocation-site-scopes.h:8,
                 from ../deps/v8/src/allocation-site-scopes.cc:5:
../deps/v8/src/globals.h:393:7: note: forward declaration of 'class v8::internal::Heap'
 class Heap;
       ^~~~
In file included from ../deps/v8/src/heap/spaces.h:16:0,
                 from ../deps/v8/src/heap/heap.h:20,
                 from ../deps/v8/src/contexts.h:8,
                 from ../deps/v8/src/isolate.h:18,
                 from ../deps/v8/src/assembler.h:40,
                 from ../deps/v8/src/ast/ast.h:8,
                 from ../deps/v8/src/allocation-site-scopes.h:8,
                 from ../deps/v8/src/allocation-site-scopes.cc:5:
../deps/v8/src/objects.h: In member function 'uint32_t v8::internal::HashTable<Derived, Shape, Key>::HashForObject(Key, v8::internal::Object*)':
../deps/v8/src/objects.h:3275:55: error: invalid use of incomplete type 'class v8::internal::Heap'
       return Shape::SeededHashForObject(key, GetHeap()->HashSeed(), object);
                                                       ^~
In file included from ../deps/v8/src/allocation.h:8:0,
                 from ../deps/v8/src/assembler.h:38,
                 from ../deps/v8/src/ast/ast.h:8,
                 from ../deps/v8/src/allocation-site-scopes.h:8,
                 from ../deps/v8/src/allocation-site-scopes.cc:5:
../deps/v8/src/globals.h:393:7: note: forward declaration of 'class v8::internal::Heap'
 class Heap;
       ^~~~
In file included from ../deps/v8/src/heap/spaces.h:16:0,
                 from ../deps/v8/src/heap/heap.h:20,
                 from ../deps/v8/src/contexts.h:8,
                 from ../deps/v8/src/api.h:9,
                 from ../deps/v8/src/api-experimental.cc:13:
../deps/v8/src/objects.h: In member function 'uint32_t v8::internal::HashTable<Derived, Shape, Key>::Hash(Key)':
../deps/v8/src/objects.h:3267:46: error: invalid use of incomplete type 'class v8::internal::Heap'
       return Shape::SeededHash(key, GetHeap()->HashSeed());
                                              ^~
In file included from ../deps/v8/src/handles.h:8:0,
                 from ../deps/v8/src/api-experimental.h:8,
                 from ../deps/v8/src/api-experimental.cc:9:
../deps/v8/include/v8.h:148:7: note: forward declaration of 'class v8::internal::Heap'
 class Heap;
       ^~~~
In file included from ../deps/v8/src/heap/spaces.h:16:0,
                 from ../deps/v8/src/heap/heap.h:20,
                 from ../deps/v8/src/contexts.h:8,
                 from ../deps/v8/src/api.h:9,
                 from ../deps/v8/src/api-experimental.cc:13:
../deps/v8/src/objects.h: In member function 'uint32_t v8::internal::HashTable<Derived, Shape, Key>::HashForObject(Key, v8::internal::Object*)':
../deps/v8/src/objects.h:3275:55: error: invalid use of incomplete type 'class v8::internal::Heap'
       return Shape::SeededHashForObject(key, GetHeap()->HashSeed(), object);
                                                       ^~
In file included from ../deps/v8/src/handles.h:8:0,
                 from ../deps/v8/src/api-experimental.h:8,
                 from ../deps/v8/src/api-experimental.cc:9:
../deps/v8/include/v8.h:148:7: note: forward declaration of 'class v8::internal::Heap'
 class Heap;
       ^~~~
make[1]: *** [deps/v8/tools/gyp/v8_base.target.mk:480: /builddir/build/BUILD/node-v6.9.5/out/Release/obj.target/v8_base/deps/v8/src/address-map.o] Error 1
make[1]: *** Waiting for unfinished jobs....
make[1]: *** [deps/v8/tools/gyp/v8_base.target.mk:480: /builddir/build/BUILD/node-v6.9.5/out/Release/obj.target/v8_base/deps/v8/src/accessors.o] Error 1
make[1]: *** [deps/v8/tools/gyp/v8_base.target.mk:480: /builddir/build/BUILD/node-v6.9.5/out/Release/obj.target/v8_base/deps/v8/src/allocation-site-scopes.o] Error 1
make[1]: *** [deps/v8/tools/gyp/v8_base.target.mk:480: /builddir/build/BUILD/node-v6.9.5/out/Release/obj.target/v8_base/deps/v8/src/api-experimental.o] Error 1
rm 1f43b286f473e26d9fd848f6a0ab2f39f000ca0f.intermediate
make[1]: Leaving directory '/builddir/build/BUILD/node-v6.9.5/out'
make: *** [Makefile:68: node] Error 2
@targos targos added build Issues and PRs related to build files or the CI. v8 engine Issues and PRs related to the V8 dependency. labels Feb 2, 2017
@bnoordhuis
Copy link
Member

Does it work when you add #include "src/heap/heap.h" and #include "src/heap/heap-inl.h" (in that order) at the top of deps/v8/src/objects.h?

@kasicka
Copy link
Author

kasicka commented Feb 2, 2017

@addaleax
Copy link
Member

addaleax commented Feb 2, 2017

Sounds like it’s the same issue as #10388?

@bnoordhuis
Copy link
Member

Closing as a duplicate of #10388. If someone can confirm that #10388 (comment) fixes it, we can look into floating a patch.

@bnoordhuis bnoordhuis added the duplicate Issues and PRs that are duplicates of other issues or PRs. label Feb 7, 2017
@kasicka
Copy link
Author

kasicka commented Feb 22, 2017

Now the previous errors changed to warnings, the build still fails though.
Logs:
6.9.5: https://fedorapeople.org/~zvetlik/buildlogs/v695-gcc701build.log
6.10.0: https://fedorapeople.org/~zvetlik/buildlogs/v6100-gcc701build.log

@gregsheremeta
Copy link

I can confirm that 8.0.0 released yesterday builds fine on Fedora 26. Commit that includes the fix is 871fb5a

gerrit-ovirt-org pushed a commit to oVirt/ovirt-engine-nodejs that referenced this issue Nov 4, 2021
Bumping to node 8 because node 6 will not build on
Fedora 26: nodejs/node#11118

Change-Id: I395758f532b7ae5ab048968efdf5ead10355e891
Signed-off-by: Greg Sheremeta <gshereme@redhat.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
build Issues and PRs related to build files or the CI. duplicate Issues and PRs that are duplicates of other issues or PRs. v8 engine Issues and PRs related to the V8 dependency.
Projects
None yet
Development

No branches or pull requests

5 participants