2017-08-14 60 views
2

我試圖在Ubuntu 16.04上運行當前的Cobalt trunk(12.81256)。但它失敗:運行用linux-x64x11構建的Cobalt問題config

[0814/100203:FATAL:graphics_system.cc(130)] Check failed: 1 == num_configs (1 vs. 0) 
base::debug::StackTrace::StackTrace() [0x1f6202d] 
logging::LogMessage::~LogMessage() [0x1f5fe99] 
cobalt::renderer::backend::GraphicsSystemEGL::GraphicsSystemEGL() [0x67e5bdd] 
cobalt::renderer::backend::CreateDefaultGraphicsSystem() [0x67e549e] 
cobalt::renderer::RendererModule::Resume() [0x67dbe65] 
cobalt::renderer::RendererModule::RendererModule() [0x67db776] 
cobalt::browser::BrowserModule::BrowserModule() [0x1ce38c3] 
cobalt::browser::Application::Application() [0x1cb71a5] 
cobalt::browser::ApplicationStarboard::ApplicationStarboard() [0x1cb09c7] 
cobalt::browser::CreateApplication() [0x1cb072e] 
(anonymous namespace)::StartApplication() [0x1caef05] 
cobalt::wrap_main::BaseEventHandler<>() [0x1cae9af] 
SbEventHandle [0x1cae225] 
starboard::shared::starboard::Application::DispatchAndDelete() [0x214dc7e] 
starboard::shared::starboard::Application::DispatchStart() [0x214c07e] 
starboard::shared::starboard::Application::Run() [0x214b8b7] 
main [0x2120f95] 
<unknown> [0x7f864632f830] 
_start [0x1bd6029] 
_start [0x1bd6029] 

我發現EGL配置這個問題來自使用:

EGL_BIND_TO_TEXTURE_RGBA, EGL_TRUE 

沒有它eglChooseConfig返回1個配置。

但隨後會再次失敗,調用後

eglCreateWindowSurface() 
鈷/渲染/後端/ EGL

/display.cc

[0814/111151:FATAL:display.cc(53)] Check failed: 0x3000 == eglGetError() (12288 vs. 12297) 

由於這是EGL_BAD_MATCH錯誤,選擇EGL配置是不好,但也不是最初的那個。

我試圖與在右舷/ LINUX /共享/ gyp_configuration.gypi設置

'gl_type%': 'system_gles2', 

,但結果是相同的。

我錯過了什麼嗎?

的步驟崩潰的再現:

體形:

cobalt/build/gyp_cobalt -C debug linux-x64x11 
ninja -C out/linux-x64x11_debug cobalt 

運行:

./out/linux-x64x11_debug/cobalt 

是否有可能在EGL或GLES庫有些依賴?

+0

鈷12.81256在我的Ubuntu 16.04上運行良好。你有任何複製步驟? –

+0

我已經添加了構建命令行並運行命令行。 – lmilko

+0

* *是*對EGL和GLES庫的依賴,並且問題可能在於您正在使用的EGL/GLES庫。 您使用我的具體驅動程序取決於您的視頻卡,但Mesa 3D提供了已知可與Cobalt一起使用的軟件EGL/GLES實現:https://www.mesa3d.org/egl.html –

回答

1

問題與使用哪個libEGL和libGLES庫有關。

以下庫是我的系統上使用:

libEGL.so.1 => /usr/lib/nvidia-375/libEGL.so.1 (0x00007f66bbebc000) 
libGLESv2.so.2 => /usr/lib/nvidia-375/libGLESv2.so.2 (0x00007f66bbcad000) 

當使用從檯面庫:

LD_LIBRARY_PATH=/usr/lib/x86_64-linux-gnu/mesa-egl ./cobalt 

鈷將啓動並工作。

感謝Daniel和Andrew的幫助。

+0

感謝分享你的更新。礦井默認使用mesa-egl,這就是爲什麼它在我的機器上運行良好。 –