Cannot build chromium for 32 bit on machine 64 bit

476 views
Skip to first unread message

Victor Rotenberg

unread,
Jan 11, 2016, 2:05:44 PM1/11/16
to Chromium-dev
Hi!
I am trying to build Chromium for wayland for 32 bit machine. The GYP_DEFINES='component=static_library use_ash=1 use_aura=1 chromeos=0 use_ozone=1 use_xkbcommon=1 proprietary_codecs=1 ffmpeg_branding=Chrome target_arch=ia32 use_sysroot=0'
All patches applied successfully. While building (ninja -C out/Debug -j16 chrome) I have an error: 
/usr/include/freetype2/config/ftheader.h:7:12: fatal error: 'i386-linux-gnu/freetype2/config/ftheader.h' file not found
Please help!

Sunny Sachanandani

unread,
Jan 11, 2016, 2:14:47 PM1/11/16
to vicrot...@gmail.com, Chromium-dev
Did you install the build dependencies first? See the script build/install-build-deps.sh for what needs to be installed on Ubuntu 14.04. For other Linux distros you'll have to install the same dependencies manually.

--
--
Chromium Developers mailing list: chromi...@chromium.org
View archives, change email options, or unsubscribe:
http://groups.google.com/a/chromium.org/group/chromium-dev

Marshall Greenblatt

unread,
Jan 11, 2016, 2:27:15 PM1/11/16
to vicrot...@gmail.com, Chromium-dev
On Mon, Jan 11, 2016 at 2:05 PM, Victor Rotenberg <vicrot...@gmail.com> wrote:
Hi!
I am trying to build Chromium for wayland for 32 bit machine. The GYP_DEFINES='component=static_library use_ash=1 use_aura=1 chromeos=0 use_ozone=1 use_xkbcommon=1 proprietary_codecs=1 ffmpeg_branding=Chrome target_arch=ia32 use_sysroot=0'

If you're building on a 32-bit host it will probably run out of memory during linking. You should instead build on a 64-bit host targeting a 32-bit chroot environment. You'll likely need to create your own sysroot environment using Chromium's build/install-chroot.sh script and then install additional dependencies in that chroot environment (see output from that script for details). You can then build 32-bit Chromium with GYP_DEFINES like the following (plus whatever values the Wayland build requires):

export GYP_DEFINES="disable_nacl=1 use_sysroot=1 sysroot=/var/lib/chroot/trusty32bit chroot_cmd=trusty32 host_arch=x86_64 target_arch=ia32"

See https://bitbucket.org/chromiumembedded/cef/issues/1804 for related instructions from a different Chromium-based project.
 

All patches applied successfully. While building (ninja -C out/Debug -j16 chrome) I have an error: 
/usr/include/freetype2/config/ftheader.h:7:12: fatal error: 'i386-linux-gnu/freetype2/config/ftheader.h' file not found
Please help!

--
--
Chromium Developers mailing list: chromi...@chromium.org
View archives, change email options, or unsubscribe:
http://groups.google.com/a/chromium.org/group/chromium-dev
---
You received this message because you are subscribed to the Google Groups "Chromium-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to chromium-dev...@chromium.org.

Thiago Farina

unread,
Jan 11, 2016, 2:32:44 PM1/11/16
to magree...@gmail.com, Chromium-dev
On Mon, Jan 11, 2016 at 5:26 PM, Marshall Greenblatt <magree...@gmail.com> wrote:
On Mon, Jan 11, 2016 at 2:05 PM, Victor Rotenberg <vicrot...@gmail.com> wrote:
Hi!
I am trying to build Chromium for wayland for 32 bit machine. The GYP_DEFINES='component=static_library use_ash=1 use_aura=1 chromeos=0 use_ozone=1 use_xkbcommon=1 proprietary_codecs=1 ffmpeg_branding=Chrome target_arch=ia32 use_sysroot=0'

If you're building on a 32-bit host it will probably run out of memory during linking. You should instead build on a 64-bit host targeting a 32-bit chroot environment.
I think he is using a x86_64 machine (host) but wants to build for a 32-bit machine (target) hence target_arch=ia32 in his command.

--
Thiago Farina

Marshall Greenblatt

unread,
Jan 11, 2016, 2:44:27 PM1/11/16
to Thiago Farina, Chromium-dev
Will target_arch=ia32 result in a successful 32-bit build on a 64-bit host without using a chroot (e.g. use_sysroot=0)? If so, does `install-build-deps.sh --lib32` suffice for that purpose, or is something more required?
 

--
Thiago Farina

Torne (Richard Coles)

unread,
Jan 11, 2016, 2:54:10 PM1/11/16
to magree...@gmail.com, Thiago Farina, Chromium-dev

I don't think so, but haven't done this in a while. I think you need a 32-bit sysroot or chroot.


--

Victor Rotenberg

unread,
Jan 12, 2016, 2:21:30 AM1/12/16
to Chromium-dev, vicrot...@gmail.com
Thank you for your help!
I tried following the steps in the article you sent:   http://groups.google.com/a/chromium.org/group/chromium-dev
Unfortunately inside my "src" directory there is no "cef" directory so I cannot run ./cef_create_projects.sh to Generate CEF project files. As I wrote I need chromium for WAYLAND. So I followed the steps in this https://github.com/01org/ozone-wayland article and inside my src there is no "cef" directory. Maybe the ozone-wayland project is different? Anyway I still cannot build it. Maybe it's better to run the building inside 32-bit machine and not on 64-bit machine? Is it passable?
Thanks.  

Thiago Farina

unread,
Jan 12, 2016, 8:19:12 AM1/12/16
to Victor Rotenberg, Chromium-dev
On Tue, Jan 12, 2016 at 5:21 AM, Victor Rotenberg <vicrot...@gmail.com> wrote:
Thank you for your help!
I tried following the steps in the article you sent:   http://groups.google.com/a/chromium.org/group/chromium-dev
Unfortunately inside my "src" directory there is no "cef" directory so I cannot run ./cef_create_projects.sh to Generate CEF project files.
CEF (Chromium Embedded Framework) is another project. Take a look at https://bitbucket.org/chromiumembedded/cef

 
As I wrote I need chromium for WAYLAND. So I followed the steps in this https://github.com/01org/ozone-wayland article and inside my src there is no "cef" directory. Maybe the ozone-wayland project is different? Anyway I still cannot build it. Maybe it's better to run the building inside 32-bit machine and not on 64-bit machine? Is it passable?
As said earlier you probably won't be able to build on a 32-bit machine, there won't be enough memory to link.

--
Thiago Farina
Reply all
Reply to author
Forward
0 new messages