intel / ozone-wayland

Wayland implementation for Chromium Ozone classes
BSD 3-Clause "New" or "Revised" License
219 stars 82 forks source link

aura_demo and aura_unittests couldn' run #231

Closed wangyan42164 closed 10 years ago

wangyan42164 commented 10 years ago

Hi, I found https://github.com/01org/ozone-wayland/wiki/Testing. So I tried to built them. My GYP_DEFINES="werror= disable_nacl=1 component=shared_library enable_svg=0 use_ash=0 use_aura=1 use_ozone=1 chromeos=0 ozone_platform_wayland=1" content_shell could run with "--no-sadnbox". But aura_unittests and aura_demo have the same issue: [yanwang@yanwang-snb src]$ out/Debug/aura_unittests out/Debug/aura_unittests: symbol lookup error: /home/yanwang/ozone-wayland/src/out/Debug/lib/libwayland.so: undefined symbol: _ZN5views21DesktopFactoryWaylandC1Ev [yanwang@yanwang-snb src]$ out/Debug/aura_demo out/Debug/aura_demo: symbol lookup error: /home/yanwang/ozone-wayland/src/out/Debug/lib/libwayland.so: undefined symbol: _ZN5views21DesktopFactoryWaylandC1Ev

Need we enable them or not? Thanks.

Yan Wang

tiagovignatti commented 10 years ago

good point Yan!

The main issue here is that aura_demo and aura_unittests are not supposed to depend on Desktop related stuff like DesktopFactoryWayland but we are initializing them anyways at OzonePlatformWayland initialization phase. It's a quite complicated issue cause involves changing a bunch of upstream code, so one layer won't violate another: https://github.com/01org/ozone-wayland/blob/master/ui/desktop_aura/desktop_factory_wayland.h#L18

I understand that Google devs are trying to fix this inter-dependency in upstream by adding a new API: https://codereview.chromium.org/205433005/

Moreover, note that when we set embedded=1 to GYP_DEFINES then Views toolkit will be opt out. Doing like this the entire Ozone-Wayland Views support will be opt out as well and the targets will work for you. That's fine but not ideal though cause what we want is a fix that works in running time.

wangyan42164 commented 10 years ago

I see. Thanks for your information. :)

wangyan42164 commented 10 years ago

I tried "out/Debug/content_shell --disable-setuid-sandbox --ozone-platform=test --ozone-dump-file=/tmp/ozone.png" or "out/Debug/content_shell --disable-setuid-sandbox --ozone-platform=dri". They couldn't be run and has been disabled?

tiagovignatti commented 10 years ago

I think you're seeing the same problem as https://github.com/01org/ozone-wayland/issues/221 now -- we should fix that. Whenever I'm using the same codebase containing ozone-wayland for trying the other Ozone implementations I use this hack: https://gist.github.com/tiagovignatti/11189296

wangyan42164 commented 10 years ago

Thanks, I will try.

tiagovignatti commented 10 years ago

can you close this issue now @wangyan42164?

wangyan42164 commented 10 years ago

sure.