AnsweredAssumed Answered

Chromium Embedded Framework (cef3) for IMX6(dl) yocto

Question asked by Florian Voit on Sep 14, 2015
Latest reply on Oct 21, 2015 by gusarambula

Hi everybody!

I am trying to build the example app "cefsimple" of the chromium embedded framework for some days now without succeeding.

I’m using yocto and the cef3 recipe (OpenEmbedded Metadata Index - cef3 ).

 

When i compile i get the following error:

 

FAILED: arm-poky-linux-gnueabi-g++  -march=armv7-a -mthumb-interwork -mfloat-abi=hard -mfpu=neon -mtune=cortex-a9 --sysroot=/home/user/yocto-build/workspace/varimx6/build_x11/tmp/sysroots/varsomimx6 -MMD -MF obj/ui/ozone/platform/egl/ozone_platform_egl.egl_wrapper.o.d -DV8_DEPRECATION_WARNINGS -DBLINK_SCALE_FILTERS_AT_RECORD_TIME -D_FILE_OFFSET_BITS=64 -DCHROMIUM_BUILD -DUI_COMPOSITOR_IMAGE_TRANSPORT -DUSE_AURA=1 -DUSE_OZONE=1 -DUSE_DEFAULT_RENDER_THEME=1 -DUSE_LIBJPEG_TURBO=1 -DENABLE_ONE_CLICK_SIGNIN -DENABLE_PRE_SYNC_BACKUP -DENABLE_PEPPER_CDMS -DENABLE_CONFIGURATION_POLICY -DENABLE_NOTIFICATIONS -DENABLE_EGLIMAGE=1 -DENABLE_TASK_MANAGER=1 -DENABLE_EXTENSIONS=1 -DENABLE_PLUGINS=1 -DENABLE_SESSION_SERVICE=1 -DENABLE_THEMES=1 -DENABLE_BACKGROUND=1 -DENABLE_GOOGLE_NOW=1 -DCLD_VERSION=2 -DCLD_DATA_FROM_STATIC -DENABLE_FULL_PRINTING=1 -DENABLE_PRINTING=1 -DENABLE_SPELLCHECK=1 -DENABLE_CAPTIVE_PORTAL_DETECTION=1 -DENABLE_APP_LIST=1 -DENABLE_SETTINGS_APP=1 -DENABLE_MANAGED_USERS=1 -DENABLE_MDNS=1 -DENABLE_SERVICE_DISCOVERY=1 -DOZONE_IMPLEMENTATION -DSK_ENABLE_INST_COUNT=0 -DSK_SUPPORT_GPU=1 '-DGR_GL_CUSTOM_SETUP_HEADER="GrGLConfig_chrome.h"' -DSK_ENABLE_LEGACY_API_ALIASING=1 -DSK_ATTR_DEPRECATED=SK_NOTHING_ARG1 -DGR_GL_IGNORE_ES3_MSAA=0 -DSK_WILL_NEVER_DRAW_PERSPECTIVE_TEXT -DSK_SUPPORT_LEGACY_PICTURE_CLONE -DSK_SUPPORT_LEGACY_GETDEVICE -DSK_SUPPORT_LEGACY_GETTOPDEVICE -DSK_SUPPORT_LEGACY_BITMAP_CONFIG -DSK_SUPPORT_LEGACY_N32_NAME -DSK_SUPPORT_LEGACY_SETCONFIG -DSK_IGNORE_ETC1_SUPPORT -DSK_IGNORE_GPU_DITHER -DSK_USE_POSIX_THREADS -DSK_DEFERRED_CANVAS_USES_FACTORIES=1 -DU_USING_ICU_NAMESPACE=0 -DU_STATIC_IMPLEMENTATION -DUSE_NSS=1 -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -DNDEBUG -DNVALGRIND -DDYNAMIC_ANNOTATIONS_ENABLED=0 -D_FORTIFY_SOURCE=2 -Igen -I../.. -I../../skia/config -I../../third_party/skia/src/core -I../../third_party/skia/include/core -I../../third_party/skia/include/effects -I../../third_party/skia/include/pdf -I../../third_party/skia/include/gpu -I../../third_party/skia/include/lazy -I../../third_party/skia/include/pathops -I../../third_party/skia/include/pipe -I../../third_party/skia/include/ports -I../../third_party/skia/include/utils -I../../skia/ext -I../../third_party/icu/source/i18n -I../../third_party/icu/source/common -fstack-protector --param=ssp-buffer-size=4 -Werror -pthread -fno-exceptions -fno-strict-aliasing -Wall -Wno-unused-parameter -Wno-missing-field-initializers -fvisibility=hidden -pipe -fPIC -Wno-unused-local-typedefs -march=armv7-a -mtune=generic-armv7-a -mfpu=neon -mfloat-abi=hard -mthumb -O2 -fno-ident -fdata-sections -ffunction-sections -funwind-tables -Wno-error=unused-local-typedefs -O2 -pipe -g -feliminate-unused-debug-types -fvisibility-inlines-hidden -Wno-deprecated-declarations -fno-rtti -fno-threadsafe-statics -fvisibility-inlines-hidden -Wsign-compare -Wno-abi -std=gnu++11 -Wno-narrowing -Wno-literal-suffix  -c ../../ui/ozone/platform/egl/egl_wrapper.cc -o obj/ui/ozone/platform/egl/ozone_platform_egl.egl_wrapper.o

In file included from /home/user/yocto-build/workspace/varimx6/build_x11/tmp/sysroots/varsomimx6/usr/include/EGL/eglplatform.h:38:0,

                 from /home/user/yocto-build/workspace/varimx6/build_x11/tmp/sysroots/varsomimx6/usr/include/EGL/egl.h:39,

                 from ../../ui/ozone/platform/egl/egl_wrapper.h:7,

                 from ../../ui/ozone/platform/egl/egl_wrapper.cc:15:

/home/user/yocto-build/workspace/varimx6/build_x11/tmp/sysroots/varsomimx6/usr/include/EGL/eglvivante.h:266:2: error: #error "Platform not recognized"

#error "Platform not recognized"

  ^

../../ui/ozone/platform/egl/egl_wrapper.cc: In function 'int ozone_egl_destroy()':

../../ui/ozone/platform/egl/egl_wrapper.cc:196:49: error: invalid conversion from 'NativeWindowType {aka void*}' to 'NativeWindow {aka int}' [-fpermissive]

     ozone_egl_nativeDestroyWindow(g_NativeWindow);

                                                 ^

../../ui/ozone/platform/egl/egl_wrapper.cc:82:6: note: initializing argument 1 of 'void ozone_egl_nativeDestroyWindow(NativeWindow)'

void ozone_egl_nativeDestroyWindow(NativeWindow window)

      ^

 

I tried to set the plattform manually simply by writing

#define LINUX

in eglvivante.h which successfully compiled, but when i start cefsimple it returns the error:

[0914/152322:FATAL:surface_factory_ozone.cc(29)] Check failed: impl_. No SurfaceFactoryOzone implementation set.

 

When i compile chromium for the platform, everything works fine, even hardware acceleration.

Has somebody been successful compiling cef3 for the imx6? Any pointers?

 

Best regards,

Florian Voit

Outcomes