No package 'atk-bridge-2.0' found & fatal error: gdk/gdkx.h: No such file or directory when build chromium-x11

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

No package 'atk-bridge-2.0' found & fatal error: gdk/gdkx.h: No such file or directory when build chromium-x11

3,820 Views
gonewithwind-peter
Senior Contributor I

hi

I am playing imx8qm boad( iwave board).

for Freescale default guide, we use chromium-ozone-wayland  but chrome only can run in root user. there is a warning, I need manually close it, we can not  be acceptable in our product. so we have to run chrome with non-root user. but can NOT. before I played the imx8mq board (maaxboard),we had the same issue(I asked here before). 

therefore I changed to chrome-x11, I solved the issue in imx8mq board (maaxboard).

now I am playing imx8qm boad( iwave board), the same issue coming again.

so I have to change to chrome-x11,

but I can not pass the compilation,  the error is below:

any ideas about :

1. chromium-ozone-wayland for non-user  can run?  or 

2.  chromium-x11 can pass the compilation?

--------

partially of my local.conf

---

MACHINE ??= 'imx8qm_iwg27s_2gb'

  2 DISTRO ?= 'fsl-imx-xwayland'

  3

  4 PARALLEL_MAKE ?= "-j 20"

  5 BB_NUMBER_THREADS ?= "20"

  6

  7 PACKAGE_CLASSES ?= "package_rpm"

  8 EXTRA_IMAGE_FEATURES ?= "debug-tweaks"

  9 USER_CLASSES ?= "buildstats image-mklibs image-prelink"

10 PATCHRESOLVE = "noop"

11 IMAGE_INSTALL_append = " rng-tools"

12 #IMAGE_INSTALL_append +=" chromium-ozone-wayland"

13 DISTRO_FEATURES_append = " xorg-server-xwayland"

14 #CORE_IMAGE_EXTRA_INSTALL += " chromium-ozone-wayland"

15 CORE_IMAGE_EXTRA_INSTALL += "chromium-x11"

16 #IMAGE_ROOTFS_EXTRA_SPACE = "1048576"

17 #IMAGE_ROOTFS_EXTRA_SPACE = "8388608"

18 #IMAGE_ROOTFS_EXTRA_SPACE = "5242880"

19 IMAGE_FEATURES += "ssh-server-openssh package-management hwcodecs splash dev-pkgs"

20 DISTRO_FEATURES_append = " pam"

21

22 IMAGE_INSTALL_append += " gnupg atftp atftpd ntp ntpdate fping xauth xhost"

23 EXTRA_IMAGE_FEATURES ?= "tools-debug tools-profile debug-tweaks eclipse-debug tools-sdk dev-pkgs"

24 IMAGE_INSTALL_append += " \

25         tcf-agent \

26         openssh-sftp-server \

27         gdbserver \

28         apache2 net-tools \

29         "

30 IMAGE_INSTALL_append += " \

31         i2c-tools e2fsprogs-resize2fs \

32         bash bc cpio gawk tree rsync ldd vim nano \

33         diffutils coreutils findutils iputils \

34         git git-perltools libwebsockets libwebsockets-dev vlan tcpdump \

35         "

36

37 TOOLCHAIN_TARGET_TASK_append += " kernel-devsrc kernel-modules kernel-dev libwebsockets-dev libwebsockets"

38

39 IMAGE_INSTALL_append +=" packagegroup-core-buildessential udev jpeg-tools jpeg \

40 kernel-devsrc kernel-modules kernel-dev bridge-utils atk"

41

42

43 # display language support

44 CORE_IMAGE_EXTRA_INSTALL += " \

45         source-han-sans-cn-fonts \

46         source-han-sans-kr-fonts \

47         ttf-arphic-uming \

48         "

49 USER_CLASSES ?= "buildstats image-mklibs image-prelink"

------------

Initialising tasks: 100% |##############################################################################| Time: 0:00:07

NOTE: Executing SetScene Tasks

NOTE: Executing RunQueue Tasks

ERROR: chromium-x11-69.0.3497.100-r0 do_configure: Function failed: do_configure (log file is located at /opt/oe/iw/iw/iwg27s-release-bsp/build_imx8qm_2gb/tmp/work/aarch64-mx8-poky-linux/chromium-x11/69.0.3497.100-r0/temp/log.do_configure.24582)

ERROR: Logfile of failure stored in: /opt/oe/iw/iw/iwg27s-release-bsp/build_imx8qm_2gb/tmp/work/aarch64-mx8-poky-linux/chromium-x11/69.0.3497.100-r0/temp/log.do_configure.24582

Log data follows:

| DEBUG: Executing shell function do_configure

| ERROR at //build/config/linux/pkg_config.gni:103:17: Script returned non-zero exit code.

|     pkgresult = exec_script(pkg_config_script, args, "value")

|                 ^----------

| Current dir: /opt/oe/iw/iw/iwg27s-release-bsp/build_imx8qm_2gb/tmp/work/aarch64-mx8-poky-linux/chromium-x11/69.0.3497.100-r0/chromium-69.0.3497.100/out/Release/

| Command: python /opt/oe/iw/iw/iwg27s-release-bsp/build_imx8qm_2gb/tmp/work/aarch64-mx8-poky-linux/chromium-x11/69.0.3497.100-r0/chromium-69.0.3497.100/build/config/linux/pkg-config.py atk atk-bridge-2.0

| Returned 1.

| stderr:

|

| Package atk-bridge-2.0 was not found in the pkg-config search path.

| Perhaps you should add the directory containing `atk-bridge-2.0.pc'

| to the PKG_CONFIG_PATH environment variable

| No package 'atk-bridge-2.0' found

| Could not run pkg-config.

|

| See //build/config/linux/atk/BUILD.gn:20:1: whence it was called.

| pkg_config("atk_base") {

| ^-----------------------

| See //ui/views/BUILD.gn:686:24: which caused the file to be included.

|           configs += [ "//build/config/linux/atk" ]

|                        ^-------------------------

| WARNING: /opt/oe/iw/iw/iwg27s-release-bsp/build_imx8qm_2gb/tmp/work/aarch64-mx8-poky-linux/chromium-x11/69.0.3497.100-r0/temp/run.do_configure.24582:1 exit 1 from 'gn gen --args='          use_cups=false          ffmpeg_branding="Chromium" proprietary_codecs=false          is_component_build=false         use_gnome_keyring=false         use_jumbo_build=false         use_kerberos=false         use_pulseaudio=true         use_system_freetype=true         use_system_libjpeg=true  host_pkg_config="pkg-config-native" is_debug=false is_official_build=true use_custom_libcxx=false symbol_level=0 enable_remoting=false enable_nacl=false use_sysroot=false treat_warnings_as_errors=false is_cfi=false fieldtrial_testing_like_official_build=true          google_api_key="invalid-api-key"         google_default_client_id="invalid-client-id"         google_default_client_secret="invalid-client-secret"           custom_toolchain="//build/toolchain/yocto:yocto_target"         gold_path=""         host_toolchain="//build/toolchain/yocto:yocto_native"         is_clang=false         clang_base_path="/opt/oe/iw/iw/iwg27s-release-bsp/build_imx8qm_2gb/tmp/work/aarch64-mx8-poky-linux/chromium-x11/69.0.3497.100-r0/recipe-sysroot-native/usr/bin"         clang_use_chrome_plugins=false         linux_use_bundled_binutils=false         target_cpu="arm64"         use_gold=false         v8_snapshot_toolchain="//build/toolchain/yocto:yocto_target" ' "out/Release"'

| ERROR: Function failed: do_configure (log file is located at /opt/oe/iw/iw/iwg27s-release-bsp/build_imx8qm_2gb/tmp/work/aarch64-mx8-poky-linux/chromium-x11/69.0.3497.100-r0/temp/log.do_configure.24582)

ERROR: Task (/opt/oe/iw/iw/iwg27s-release-bsp/sources/meta-browser/recipes-browser/chromium/chromium-x11_69.0.3497.100.bb:do_configure) failed with exit code '1'

NOTE: Tasks Summary: Attempted 6213 tasks of which 6209 didn't need to be rerun and 1 failed.

0 Kudos
12 Replies

3,551 Views
Bio_TICFSL
NXP TechSupport
NXP TechSupport

Thats means that you don't have the gtk headers to build stuff using GTK+. Is really weird that the error didn't showed up at ./configure step. To solve install libgtk3.0-dev

0 Kudos

3,551 Views
chingling_wang
NXP Employee
NXP Employee

Do you mean install libget3.0-dev in linux machine which is used to do the yocto build?

0 Kudos

3,551 Views
gonewithwind-peter
Senior Contributor I

Not install libget3.0-dev in linux machine!

need to  add  

at-spi2-atk

DEPENDS in chromium-x11_XXXX.bb file

in the bb file ,you will find these are many depends in it, that means I compile something, it need to compile something before.

---------

I solved the issue. 

No package 'atk-bridge-2.0' found

-------------

but the new issue appears:

 fatal error: gdk/gdkx.h: No such file or directory

|  #include <gdk/gdkx.h>

any suggestion?

0 Kudos

3,551 Views
gonewithwind-peter
Senior Contributor I

at here 

./meta-browser/recipes-browser/chromium/chromium-x11_69.0.3497.100.bb

....

10 REQUIRED_DISTRO_FEATURES = "x11"

11

12 DEPENDS += "\

13         libx11 \

14         libxcomposite \

15         libxcursor \

16         libxdamage \

17         libxext \

18         libxfixes \

19         libxi \

20         libxrandr \

21         libxrender \

22         libxscrnsaver \

23         libxtst \

24         at-spi2-atk \                       

25         gtk+3 \

26         gtk+ \

27 "

...

line 24 solved the first issue.

I tired add line 24 26 to solve  fatal error: gdk/gdkx.h: No such file or directory

but can NOT

 

3,551 Views
chingling_wang
NXP Employee
NXP Employee

so, chromium-x11 is still not built by your successfully?  I also tried on my side, still got  the same error

0 Kudos

3,551 Views
gonewithwind-peter
Senior Contributor I

not successfully! for  imx8qm iwave board

---

before I played imx8mq maaxboard, it's OK. the yocto source almost is same. the chromium-x11 completely is  same.

 I am doing to add meta-clang to my board now. later I will try again.  I need optee too.

if you are successful, please post the solution.thanks.

0 Kudos

3,549 Views
chingling_wang
NXP Employee
NXP Employee

I manually copied these headers files that exists in recipe-sysroot-native,  it got rid of this error and went on, 

After a long time, I got error:

aarch64-poky-linux-ld.lld: error: undefined symbol: gdk_x11_lookup_xdisplay
| >>> referenced by gtk_ui_delegate_x11.cc:52 (../../ui/gtk/gtk_ui_delegate_x11.cc:52)
| >>> x/gtk_ui_delegate_x11.o:(ui::GtkUiDelegateX11::GetGdkKeymap()) in archive obj/ui/gtk/libui_gtk_x.a
| >>> referenced by gtk_ui_delegate_x11.cc:52 (../../ui/gtk/gtk_ui_delegate_x11.cc:52)
| >>> x/gtk_ui_delegate_x11.o:(ui::GtkUiDelegateX11::GetGdkWindow(unsigned long)) in archive obj/ui/gtk/libui_gtk_x.a

I don't think we can build chromium-x11 under xwayland since it needs x display, not wayland display.

I did build chromium-x11 under x11 backend environment,  But I cannot build the whole yocto image, NXP never built X11 backend for imx8, I get errors one after another.  So, I have no X11 environment to run this chromium-x11,

Did you ever build yocto sd card image for imx8qm x11 backend?

0 Kudos

3,549 Views
gonewithwind-peter
Senior Contributor I

I think only header files are not useful. so errors happened again later.

------

actullay in imx8mq  maaxboard(not current imx8qm iwave processor)> I  successfully built chromium-x11 and whole yocto image ,toochains,... on  DISTRO ?= 'fsl-imx-xwayland .

so I am tried to build them in  im8qm iwave  using same local.conf I posted before(only 

MACHINE ??= 'imx8mqevk' is different)

the  technical supporter from iwave told me NOT all imx8 processors support chromium-x1, but in NXP forum nobody told me so.

0 Kudos

3,549 Views
gonewithwind-peter
Senior Contributor I

sorry,

I have to use  chromium-x11 

for chromium-ozone-wayland ,    the option --start-fullscreen.  DO NOT work well.

any suggestion?

0 Kudos

3,549 Views
gonewithwind-peter
Senior Contributor I
I fixed that issue by 
adding  at-spi2-atk to DEPENDS in chromium-x11 bb file
"

No package 'atk-bridge-2.0' found

"
------------------
but  a new issue appears: 

../../chrome/browser/ui/libgtkui/select_file_dialog_impl_gtk.cc:7:10: fatal error: gdk/gdkx.h: No such file or directory

|  #include <gdk/gdkx.h>

|           ^~~~~~~~~~~~

| compilation terminated.

I searched on line, I looks like that we use xwayland,  the gtk+3 is removed, but I tried to add back,I can not add properly . so the new issue is there!
0 Kudos

3,549 Views
Bio_TICFSL
NXP TechSupport
NXP TechSupport

Good!

0 Kudos

3,549 Views
gonewithwind-peter
Senior Contributor I

I did not find the solution about error:

 fatal error: gdk/gdkx.h: No such file or directory

|  #include <gdk/gdkx.h>

do you have some suggestions?

0 Kudos