New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 682523 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner: ----
Closed: May 2018
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Linux
Pri: 2
Type: Bug

Blocking:
issue 683815



Sign in to add a comment

Compile errors when building with enable_vulkan=true

Reported by hw1008....@samsung.com, Jan 19 2017

Issue description

UserAgent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/54.0.2840.71 Safari/537.36

Steps to reproduce the problem:
Build the latest code with enable_vulkan=true.

What is the expected behavior?

What went wrong?
The below compile errors occur.

../../gpu/vulkan/vulkan_swap_chain.h:41:5: error: use of undeclared identifier 'DCHECK_LT'
    DCHECK_LT(index, images_.size());
    ^
../../gpu/vulkan/vulkan_swap_chain.h:50:5: error: use of undeclared identifier 'DCHECK_LT'
    DCHECK_LT(current_image_, images_.size());

Additional error message:

../../content/browser/compositor/vulkan_browser_compositor_output_surface.h:45:32: error: non-virtual member function marked 'override' hides virtual member function
               bool has_alpha) override;

Did this work before? N/A 

Chrome version:   Channel: n/a
OS Version: 
Flash Version: Shockwave Flash 24.0 r0
 
Additional error message:

../../content/browser/compositor/vulkan_browser_compositor_output_surface.h:45:32: error: non-virtual member function marked 'override' hides virtual member function
               bool has_alpha) override;
Components: Internals>GPU

Comment 3 Deleted

hw1008.kim is working to fix it.
Description: Show this description
Cc: rbasuvula@chromium.org
Labels: TE-NeedsTriageHelp
This looks like out of scope for TE, hence adding the respective label for it to  triage further.
Blocking: 683815
Cc: vmi...@chromium.org
Owner: dyen@chromium.org
Status: Assigned (was: Unconfirmed)
Looks like CL is missing owner LGTM from gpu/vulkan
Project Member

Comment 10 by sheriffbot@chromium.org, Jan 24 2017

Labels: Hotlist-Recharge-BouncingOwner
Status: Untriaged (was: Assigned)
The assigned owner "dyen@chromium.org" is not able to receive e-mails, please re-triage.

For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
Owner: ----

Comment 12 by enne@chromium.org, Jan 31 2017

Status: Available (was: Untriaged)
Seems to not build, marking as available.
Project Member

Comment 13 by bugdroid1@chromium.org, Sep 14 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/35951e431a3b20a91b0102173872b60e548f80b4

commit 35951e431a3b20a91b0102173872b60e548f80b4
Author: swarali.sr <swarali.sr@samsung.com>
Date: Thu Sep 14 07:25:25 2017

Fixing build errors when enable_vulkan=true

Recent modification of class locations / names were causing build errors in
vulkan related files.
Corrected them in this patch.

you need to set enable_vulkan=true to verify this.

BUG= 682523 

Test: Build code with enable_vulkan=true
Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel
Change-Id: I812d83c6eae7a483c905928cdabf6c5fb43f347a
Reviewed-on: https://chromium-review.googlesource.com/645589
Commit-Queue: Chandan Padhi <c.padhi@samsung.com>
Reviewed-by: enne <enne@chromium.org>
Reviewed-by: Chandan Padhi <c.padhi@samsung.com>
Reviewed-by: ccameron chromium <ccameron@chromium.org>
Cr-Commit-Position: refs/heads/master@{#501890}
[modify] https://crrev.com/35951e431a3b20a91b0102173872b60e548f80b4/AUTHORS
[modify] https://crrev.com/35951e431a3b20a91b0102173872b60e548f80b4/cc/output/vulkan_renderer.cc
[modify] https://crrev.com/35951e431a3b20a91b0102173872b60e548f80b4/cc/output/vulkan_renderer.h
[modify] https://crrev.com/35951e431a3b20a91b0102173872b60e548f80b4/content/browser/compositor/vulkan_browser_compositor_output_surface.cc
[modify] https://crrev.com/35951e431a3b20a91b0102173872b60e548f80b4/content/browser/compositor/vulkan_browser_compositor_output_surface.h

Comment 14 by xing...@intel.com, Oct 25 2017

Hi, does this issue still valid? 

I tried to build vulkan_tests and chrome with the following gn flags on ubuntu 16.04:
is_component_build = true
is_debug = true
proprietary_codecs = true
ffmpeg_branding = "Chrome"
enable_vulkan = true

The compiler complains:
In file included from ../../third_party/glslang/src/glslang/MachineIndependent/IntermTraverse.cpp:38:
In file included from ../../third_party/glslang/src/glslang/MachineIndependent/../Include/intermediate.h:49:
In file included from ../../third_party/glslang/src/glslang/MachineIndependent/../Include/../Include/Common.h:75:
../../buildtools/third_party/libc++/trunk/include/map:818:5: error: static_assert failed due to requirement 'is_same<typename allocator_type::value_type, value_type>::value' "Allocator::value_type must be same type as value_type"
    static_assert((is_same<typename allocator_type::value_type, value_type>::value),
    ^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

BTW, I can successfully build https://github.com/google/shaderc on the same ubuntu 16.04.
Hello, the above error is still valid when enable_vulkan is set true.
Looks there are some changes required in glslang to fix that.
As a temporary hack to avoid, commenting static_assert in buildtools/third_party/libc++/trunk/include/map:818 would make the build.

Comment 16 by xing...@intel.com, Oct 30 2017

If commenting static_assert in buildtools/third_party/libc++/trunk/include/map:818, still will complains, both on ubuntu 14.04 and ubuntu 16.04:

In file included from ../../gpu/vulkan/tests/native_window_x11.cc:9:
In file included from ../../ui/gfx/geometry/rect.h:15:
../../buildtools/third_party/libc++/trunk/include/cmath:313:9: error: no member named 'signbit' in the global namespace; did you mean '__signbit'?
using ::signbit;
      ~~^
/usr/include/bits/mathcalls.h:351:20: note: '__signbit' declared here
__MATHDECL_1 (int, __signbit,, (_Mdouble_ __value))
                   ^
In file included from ../../gpu/vulkan/tests/native_window_x11.cc:9:
In file included from ../../ui/gfx/geometry/rect.h:15:
../../buildtools/third_party/libc++/trunk/include/cmath:314:9: error: no member named 'fpclassify' in the global namespace; did you mean '__fpclassify'?
using ::fpclassify;
      ~~^
/usr/include/bits/mathcalls.h:347:20: note: '__fpclassify' declared here
__MATHDECL_1 (int, __fpclassify,, (_Mdouble_ __value))
                   ^
In file included from ../../gpu/vulkan/tests/native_window_x11.cc:9:
In file included from ../../ui/gfx/geometry/rect.h:15:
../../buildtools/third_party/libc++/trunk/include/cmath:315:9: error: no member named 'isfinite' in the global namespace
using ::isfinite;
      ~~^
../../buildtools/third_party/libc++/trunk/include/cmath:318:9: error: no member named 'isnormal' in the global namespace
using ::isnormal;
      ~~^
../../buildtools/third_party/libc++/trunk/include/cmath:319:7: error: no member named 'isgreater' in the global namespace; did you mean '::std::greater'?
using ::isgreater;
      ^~
../../buildtools/third_party/libc++/trunk/include/functional:720:29: note: '::std::greater' declared here
struct _LIBCPP_TEMPLATE_VIS greater : binary_function<_Tp, _Tp, bool>
                            ^
In file included from ../../gpu/vulkan/tests/native_window_x11.cc:9:
In file included from ../../ui/gfx/geometry/rect.h:15:
../../buildtools/third_party/libc++/trunk/include/cmath:320:7: error: no member named 'isgreaterequal' in the global namespace; did you mean '::std::greater_equal'?
using ::isgreaterequal;
      ^~
../../buildtools/third_party/libc++/trunk/include/functional:749:29: note: '::std::greater_equal' declared here
struct _LIBCPP_TEMPLATE_VIS greater_equal : binary_function<_Tp, _Tp, bool>
                            ^
In file included from ../../gpu/vulkan/tests/native_window_x11.cc:9:
In file included from ../../ui/gfx/geometry/rect.h:15:
../../buildtools/third_party/libc++/trunk/include/cmath:321:9: error: no member named 'isless' in the global namespace
using ::isless;
      ~~^
../../buildtools/third_party/libc++/trunk/include/cmath:322:9: error: no member named 'islessequal' in the global namespace
using ::islessequal;
      ~~^
../../buildtools/third_party/libc++/trunk/include/cmath:323:9: error: no member named 'islessgreater' in the global namespace
using ::islessgreater;
      ~~^
../../buildtools/third_party/libc++/trunk/include/cmath:324:9: error: no member named 'isunordered' in the global namespace
using ::isunordered;
      ~~^
../../buildtools/third_party/libc++/trunk/include/cmath:325:9: error: no member named 'isunordered' in the global namespace
using ::isunordered;
      ~~^
In file included from ../../gpu/vulkan/tests/native_window_x11.cc:9:
In file included from ../../ui/gfx/geometry/rect.h:21:
In file included from ../../ui/gfx/geometry/point.h:12:
In file included from ../../base/numerics/clamped_math.h:13:
In file included from ../../base/numerics/clamped_math_impl.h:17:
In file included from ../../base/numerics/checked_math.h:13:
../../base/numerics/checked_math_impl.h:559:23: error: expected unqualified-id
               : std::isfinite(value_);
                      ^
/usr/include/math.h:238:6: note: expanded from macro 'isfinite'
     (sizeof (x) == sizeof (float)                                            \
     ^
In file included from ../../gpu/vulkan/tests/native_window_x11.cc:9:
In file included from ../../ui/gfx/geometry/rect.h:21:
In file included from ../../ui/gfx/geometry/point.h:12:
In file included from ../../base/numerics/clamped_math.h:13:
In file included from ../../base/numerics/clamped_math_impl.h:17:
In file included from ../../base/numerics/checked_math.h:13:
../../base/numerics/checked_math_impl.h:554:18: error: no return statement in constexpr function
  constexpr bool is_valid() const {
                 ^
13 errors generated.

Comment 17 by xing...@intel.com, Oct 31 2017

BTW, is there any buildbot/trybots has enable_vulkan flag appended?

I didn't understand why https://chromium-review.googlesource.com/645589 pass all the bots. Except all bots don't have flag enable_vulkan at all.


Status: Fixed (was: Available)
Everything builds with enable_vulkan=true now. This is fixed.

Sign in to add a comment