[chromium-dev] Re: Cross-compiling on ARM
On Tue, Sep 1, 2009 at 10:56 PM, Antoine Labour wrote: > I think it wouldn't be too hard to add those to gold, it might be worth it > since gnu ld takes about 15 minutes to link release (and >1h to link debug). For development purposes, I recommend the shared build: http://code.google.com/p/chromium/wiki/LinuxFasterBuilds#Shared_libraries (Sometimes you have to fix it yourself when it starts failing to link, but that's not hard.) --~--~-~--~~~---~--~~ Chromium Developers mailing list: chromium-dev@googlegroups.com View archives, change email options, or unsubscribe: http://groups.google.com/group/chromium-dev -~--~~~~--~~--~--~---
[chromium-dev] Re: Cross-compiling on ARM
On Tue, Aug 25, 2009 at 7:23 AM, Joel Stanley wrote: > On Tue, Aug 25, 2009 at 17:06, Lei Zhang wrote: > > > Only x86 and x86_64 were supported at the time gold was originally > > released. Does it support ARM yet? > > Yes, gold can link ARM binaries as of a few months ago. I have used > it in my cross compiling. > > Ubuntu is shipping it it in Karmic (for ARM, as well as the x86 > architectures) in the binutils-gold package. > > Joel > I built a cross gold, but unfortunately it failed to link an arm-v7 built chrome, because it doesn't support some of the relocations generated by the compiler. I think it wouldn't be too hard to add those to gold, it might be worth it since gnu ld takes about 15 minutes to link release (and >1h to link debug). Antoine --~--~-~--~~~---~--~~ Chromium Developers mailing list: chromium-dev@googlegroups.com View archives, change email options, or unsubscribe: http://groups.google.com/group/chromium-dev -~--~~~~--~~--~--~---
[chromium-dev] Re: Cross-compiling on ARM
Note that people on Vista or Windows 7 x64 don't have slow linking issue since incremental linking is enabled, thanks to Brad. [1] So just kick anyone still complaining. M-A [1] http://src.chromium.org/viewvc/chrome?view=rev&revision=22790 On Tue, Aug 25, 2009 at 5:39 PM, Linus Upson wrote: > Any chance gold will support linking Windows binaries? > Linus > > On Tue, Aug 25, 2009 at 7:23 AM, Joel Stanley wrote: >> >> On Tue, Aug 25, 2009 at 17:06, Lei Zhang wrote: >> >> > Only x86 and x86_64 were supported at the time gold was originally >> > released. Does it support ARM yet? >> >> Yes, gold can link ARM binaries as of a few months ago. I have used >> it in my cross compiling. >> >> Ubuntu is shipping it it in Karmic (for ARM, as well as the x86 >> architectures) in the binutils-gold package. >> >> Joel >> >> > > > > > --~--~-~--~~~---~--~~ Chromium Developers mailing list: chromium-dev@googlegroups.com View archives, change email options, or unsubscribe: http://groups.google.com/group/chromium-dev -~--~~~~--~~--~--~---
[chromium-dev] Re: Cross-compiling on ARM
Doubtful. It's designed for ELF binaries. On Tue, Aug 25, 2009 at 2:39 PM, Linus Upson wrote: > Any chance gold will support linking Windows binaries? > Linus > > On Tue, Aug 25, 2009 at 7:23 AM, Joel Stanley wrote: >> >> On Tue, Aug 25, 2009 at 17:06, Lei Zhang wrote: >> >> > Only x86 and x86_64 were supported at the time gold was originally >> > released. Does it support ARM yet? >> >> Yes, gold can link ARM binaries as of a few months ago. I have used >> it in my cross compiling. >> >> Ubuntu is shipping it it in Karmic (for ARM, as well as the x86 >> architectures) in the binutils-gold package. >> >> Joel >> >> > > > > > --~--~-~--~~~---~--~~ Chromium Developers mailing list: chromium-dev@googlegroups.com View archives, change email options, or unsubscribe: http://groups.google.com/group/chromium-dev -~--~~~~--~~--~--~---
[chromium-dev] Re: Cross-compiling on ARM
Any chance gold will support linking Windows binaries? Linus On Tue, Aug 25, 2009 at 7:23 AM, Joel Stanley wrote: > > On Tue, Aug 25, 2009 at 17:06, Lei Zhang wrote: > > > Only x86 and x86_64 were supported at the time gold was originally > > released. Does it support ARM yet? > > Yes, gold can link ARM binaries as of a few months ago. I have used > it in my cross compiling. > > Ubuntu is shipping it it in Karmic (for ARM, as well as the x86 > architectures) in the binutils-gold package. > > Joel > > > > --~--~-~--~~~---~--~~ Chromium Developers mailing list: chromium-dev@googlegroups.com View archives, change email options, or unsubscribe: http://groups.google.com/group/chromium-dev -~--~~~~--~~--~--~---
[chromium-dev] Re: Cross-compiling on ARM
On Tue, Aug 25, 2009 at 17:06, Lei Zhang wrote: > Only x86 and x86_64 were supported at the time gold was originally > released. Does it support ARM yet? Yes, gold can link ARM binaries as of a few months ago. I have used it in my cross compiling. Ubuntu is shipping it it in Karmic (for ARM, as well as the x86 architectures) in the binutils-gold package. Joel --~--~-~--~~~---~--~~ Chromium Developers mailing list: chromium-dev@googlegroups.com View archives, change email options, or unsubscribe: http://groups.google.com/group/chromium-dev -~--~~~~--~~--~--~---
[chromium-dev] Re: Cross-compiling on ARM
On Mon, Aug 24, 2009 at 6:22 PM, Antoine Labour wrote: > > On Mon, Aug 24, 2009 at 1:53 PM, Scott Hess wrote: >> Would it be possible/reasonable to use distcc plus a farm of >> cross-compiler machines to let you do faster self-hosted builds? It's >> not the "right" solution, but in the past I've found it to sometimes >> be an easier path to take in the short term while you're working on >> fixing all the little problems. >> >> -scott > > Interesting take, it might work. > Like Dean mentions, we're talking about 512 MB boards (or even 256 > MB), which in practice only means about 400 MB accessible to the OS. I > don't know how gold performs on ARM. Only x86 and x86_64 were supported at the time gold was originally released. Does it support ARM yet? --~--~-~--~~~---~--~~ Chromium Developers mailing list: chromium-dev@googlegroups.com View archives, change email options, or unsubscribe: http://groups.google.com/group/chromium-dev -~--~~~~--~~--~--~---
[chromium-dev] Re: Cross-compiling on ARM
On Mon, Aug 24, 2009 at 1:53 PM, Scott Hess wrote: > Would it be possible/reasonable to use distcc plus a farm of > cross-compiler machines to let you do faster self-hosted builds? It's > not the "right" solution, but in the past I've found it to sometimes > be an easier path to take in the short term while you're working on > fixing all the little problems. > > -scott Interesting take, it might work. Like Dean mentions, we're talking about 512 MB boards (or even 256 MB), which in practice only means about 400 MB accessible to the OS. I don't know how gold performs on ARM. Antoine > > > On Fri, Aug 21, 2009 at 12:54 PM, Antoine Labour wrote: >> >> There's growing interest from several parties in getting Chrome to >> cross-compile onto linux/ARM. Let's make sure everyone is on the same >> page so that we don't duplicate efforts. >> I understand that Joel Stanley, Dean McNamee and Lei Zhang have >> already been doing a lot of work towards that. There's a wiki page >> there: http://code.google.com/p/chromium/wiki/LinuxChromiumArm >> >> I've identified a few missing pieces to get a full version of chrome - >> there may be others. They are mostly build infrastructure issues: >> - v8 snapshotting needs to be disabled currently, we'd like to enable >> it. That means executing mksnapshot as a target executable, either >> through qemu or directly on device, i.e. the infrastructure to run a >> target program. >> - Gyp uses pkg-config to find includes/lib dependencies, i.e. it's >> going to look at the host for them. If your target distribution >> matches your host maybe you're fine, but it may not work at all, so >> it'd would be good to extract that and get a way to specify the >> dependencies explicitly. >> - The chrome os build relies on the protobuf compiler. The current >> build system builds it as a target executable, so we either need to >> run in qemu / on device it as above, or change the build system to >> understand target vs host executables. >> >> I wanted to double check if anyone was working on any of that, or if >> anyone has good ideas about how to achieve each of them. Please speak >> up ! >> >> Antoine >> >> >> >> > --~--~-~--~~~---~--~~ Chromium Developers mailing list: chromium-dev@googlegroups.com View archives, change email options, or unsubscribe: http://groups.google.com/group/chromium-dev -~--~~~~--~~--~--~---
[chromium-dev] Re: Cross-compiling on ARM
Even with gold? On Mon, Aug 24, 2009 at 5:14 PM, Dean McNamee wrote: > > That still requires you to link locally, and I don't think we have any > ARM machines with enough memory to do that. > > On Mon, Aug 24, 2009 at 1:53 PM, Scott Hess wrote: > > > > Would it be possible/reasonable to use distcc plus a farm of > > cross-compiler machines to let you do faster self-hosted builds? It's > > not the "right" solution, but in the past I've found it to sometimes > > be an easier path to take in the short term while you're working on > > fixing all the little problems. > > > > -scott > > > > > > On Fri, Aug 21, 2009 at 12:54 PM, Antoine Labour > wrote: > >> > >> There's growing interest from several parties in getting Chrome to > >> cross-compile onto linux/ARM. Let's make sure everyone is on the same > >> page so that we don't duplicate efforts. > >> I understand that Joel Stanley, Dean McNamee and Lei Zhang have > >> already been doing a lot of work towards that. There's a wiki page > >> there: http://code.google.com/p/chromium/wiki/LinuxChromiumArm > >> > >> I've identified a few missing pieces to get a full version of chrome - > >> there may be others. They are mostly build infrastructure issues: > >> - v8 snapshotting needs to be disabled currently, we'd like to enable > >> it. That means executing mksnapshot as a target executable, either > >> through qemu or directly on device, i.e. the infrastructure to run a > >> target program. > >> - Gyp uses pkg-config to find includes/lib dependencies, i.e. it's > >> going to look at the host for them. If your target distribution > >> matches your host maybe you're fine, but it may not work at all, so > >> it'd would be good to extract that and get a way to specify the > >> dependencies explicitly. > >> - The chrome os build relies on the protobuf compiler. The current > >> build system builds it as a target executable, so we either need to > >> run in qemu / on device it as above, or change the build system to > >> understand target vs host executables. > >> > >> I wanted to double check if anyone was working on any of that, or if > >> anyone has good ideas about how to achieve each of them. Please speak > >> up ! > >> > >> Antoine > >> > >> > > >> > > > > > > > > > > > --~--~-~--~~~---~--~~ Chromium Developers mailing list: chromium-dev@googlegroups.com View archives, change email options, or unsubscribe: http://groups.google.com/group/chromium-dev -~--~~~~--~~--~--~---
[chromium-dev] Re: Cross-compiling on ARM
That still requires you to link locally, and I don't think we have any ARM machines with enough memory to do that. On Mon, Aug 24, 2009 at 1:53 PM, Scott Hess wrote: > > Would it be possible/reasonable to use distcc plus a farm of > cross-compiler machines to let you do faster self-hosted builds? It's > not the "right" solution, but in the past I've found it to sometimes > be an easier path to take in the short term while you're working on > fixing all the little problems. > > -scott > > > On Fri, Aug 21, 2009 at 12:54 PM, Antoine Labour wrote: >> >> There's growing interest from several parties in getting Chrome to >> cross-compile onto linux/ARM. Let's make sure everyone is on the same >> page so that we don't duplicate efforts. >> I understand that Joel Stanley, Dean McNamee and Lei Zhang have >> already been doing a lot of work towards that. There's a wiki page >> there: http://code.google.com/p/chromium/wiki/LinuxChromiumArm >> >> I've identified a few missing pieces to get a full version of chrome - >> there may be others. They are mostly build infrastructure issues: >> - v8 snapshotting needs to be disabled currently, we'd like to enable >> it. That means executing mksnapshot as a target executable, either >> through qemu or directly on device, i.e. the infrastructure to run a >> target program. >> - Gyp uses pkg-config to find includes/lib dependencies, i.e. it's >> going to look at the host for them. If your target distribution >> matches your host maybe you're fine, but it may not work at all, so >> it'd would be good to extract that and get a way to specify the >> dependencies explicitly. >> - The chrome os build relies on the protobuf compiler. The current >> build system builds it as a target executable, so we either need to >> run in qemu / on device it as above, or change the build system to >> understand target vs host executables. >> >> I wanted to double check if anyone was working on any of that, or if >> anyone has good ideas about how to achieve each of them. Please speak >> up ! >> >> Antoine >> >> > >> > > > > --~--~-~--~~~---~--~~ Chromium Developers mailing list: chromium-dev@googlegroups.com View archives, change email options, or unsubscribe: http://groups.google.com/group/chromium-dev -~--~~~~--~~--~--~---
[chromium-dev] Re: Cross-compiling on ARM
Would it be possible/reasonable to use distcc plus a farm of cross-compiler machines to let you do faster self-hosted builds? It's not the "right" solution, but in the past I've found it to sometimes be an easier path to take in the short term while you're working on fixing all the little problems. -scott On Fri, Aug 21, 2009 at 12:54 PM, Antoine Labour wrote: > > There's growing interest from several parties in getting Chrome to > cross-compile onto linux/ARM. Let's make sure everyone is on the same > page so that we don't duplicate efforts. > I understand that Joel Stanley, Dean McNamee and Lei Zhang have > already been doing a lot of work towards that. There's a wiki page > there: http://code.google.com/p/chromium/wiki/LinuxChromiumArm > > I've identified a few missing pieces to get a full version of chrome - > there may be others. They are mostly build infrastructure issues: > - v8 snapshotting needs to be disabled currently, we'd like to enable > it. That means executing mksnapshot as a target executable, either > through qemu or directly on device, i.e. the infrastructure to run a > target program. > - Gyp uses pkg-config to find includes/lib dependencies, i.e. it's > going to look at the host for them. If your target distribution > matches your host maybe you're fine, but it may not work at all, so > it'd would be good to extract that and get a way to specify the > dependencies explicitly. > - The chrome os build relies on the protobuf compiler. The current > build system builds it as a target executable, so we either need to > run in qemu / on device it as above, or change the build system to > understand target vs host executables. > > I wanted to double check if anyone was working on any of that, or if > anyone has good ideas about how to achieve each of them. Please speak > up ! > > Antoine > > > > --~--~-~--~~~---~--~~ Chromium Developers mailing list: chromium-dev@googlegroups.com View archives, change email options, or unsubscribe: http://groups.google.com/group/chromium-dev -~--~~~~--~~--~--~---
[chromium-dev] Re: Cross-compiling on ARM
On Fri, Aug 21, 2009 at 2:34 PM, Lei Zhang wrote: > On Fri, Aug 21, 2009 at 2:25 PM, Dean McNamee wrote: >> >> On Fri, Aug 21, 2009 at 1:43 PM, Antoine Labour wrote: >>> - Gyp uses pkg-config to find includes/lib dependencies, i.e. it's >>> going to look at the host for them. If your target distribution >>> matches your host maybe you're fine, but it may not work at all, so >>> it'd would be good to extract that and get a way to specify the >>> dependencies explicitly. >> >> I also don't think we should modify our GYP build for this. You can >> set PKG_CONFIG_PATH, etc, to have pkg-config use a different set of pc >> files. You can just create these files for whatever target you are >> building, and point pkg-config to use them instead. > > I don't remember having to fight pkg-config. Maybe my host/target > (Ubuntu Hardy x86/Debian Lenny ARM) matched closely enough that it > didn't matter. > > Thanks for writing the wiki page. I should've done that a long time > ago. I dumped the bits I remember on the wiki page. (Joel wrote the wiki page, thanks Joel!) > --~--~-~--~~~---~--~~ Chromium Developers mailing list: chromium-dev@googlegroups.com View archives, change email options, or unsubscribe: http://groups.google.com/group/chromium-dev -~--~~~~--~~--~--~---
[chromium-dev] Re: Cross-compiling on ARM
2009/8/21 Antoine Labour : > > There's growing interest from several parties in getting Chrome to > cross-compile onto linux/ARM. Let's make sure everyone is on the same > page so that we don't duplicate efforts. > I understand that Joel Stanley, Dean McNamee and Lei Zhang have > already been doing a lot of work towards that. There's a wiki page > there: http://code.google.com/p/chromium/wiki/LinuxChromiumArm > > I've identified a few missing pieces to get a full version of chrome - > there may be others. They are mostly build infrastructure issues: > - v8 snapshotting needs to be disabled currently, we'd like to enable > it. That means executing mksnapshot as a target executable, either > through qemu or directly on device, i.e. the infrastructure to run a > target program. Actually the armulator (ARM simulator in V8) can be used to create ARM snapshots without running anything on the target platform. The C++ work is done for this, but the build file work isn't. What is needed is to build mksnapshot.cc with the armulator. This is done with simulator=arm in the scons build. I don't know how it's done with gyp. When the snapshot.cc file has been generated by mksnapshot you need to rebuild V8 from scratch, this time with the cross compiler. With the scons build that would be (after saving snapshot.cc and blowing away the other generated files) with snapshot=nobuild arch=arm wordsize=32. You need to make sure the CXX, AR, RANLIB and CC environment variables point to your cross toolchain. As I say, the build file work for this is not done yet. I am sure that it would be worth doing. The snapshot support makes startup of the VM faster at the cost of a moderate increase in size (moderate for a system capable of running Chromium). Since Chromium starts the VM on every new tab that is worth doing. On the other hand the browser is perfectly usable without this optimization so it is no show-stopper for the ARM version. > - Gyp uses pkg-config to find includes/lib dependencies, i.e. it's > going to look at the host for them. If your target distribution > matches your host maybe you're fine, but it may not work at all, so > it'd would be good to extract that and get a way to specify the > dependencies explicitly. > - The chrome os build relies on the protobuf compiler. The current > build system builds it as a target executable, so we either need to > run in qemu / on device it as above, or change the build system to > understand target vs host executables. > > I wanted to double check if anyone was working on any of that, or if > anyone has good ideas about how to achieve each of them. Please speak > up ! > > Antoine > > > > -- Erik Corry, Software Engineer Google Denmark ApS. CVR nr. 28 86 69 84 c/o Philip & Partners, 7 Vognmagergade, P.O. Box 2227, DK-1018 Copenhagen K, Denmark. --~--~-~--~~~---~--~~ Chromium Developers mailing list: chromium-dev@googlegroups.com View archives, change email options, or unsubscribe: http://groups.google.com/group/chromium-dev -~--~~~~--~~--~--~---
[chromium-dev] Re: Cross-compiling on ARM
On Fri, Aug 21, 2009 at 1:43 PM, Antoine Labour wrote: > - Gyp uses pkg-config to find includes/lib dependencies, i.e. it's > going to look at the host for them. If your target distribution > matches your host maybe you're fine, but it may not work at all, so > it'd would be good to extract that and get a way to specify the > dependencies explicitly. It would probably suffice to let you specify the directory pkg-config looks at for its files, and to keep a separate one for the target. --~--~-~--~~~---~--~~ Chromium Developers mailing list: chromium-dev@googlegroups.com View archives, change email options, or unsubscribe: http://groups.google.com/group/chromium-dev -~--~~~~--~~--~--~---
[chromium-dev] Re: Cross-compiling on ARM
On Fri, Aug 21, 2009 at 2:58 PM, Antoine Labour wrote: > > On Fri, Aug 21, 2009 at 2:45 PM, Erik Corry wrote: >> 2009/8/21 Antoine Labour : >>> >>> There's growing interest from several parties in getting Chrome to >>> cross-compile onto linux/ARM. Let's make sure everyone is on the same >>> page so that we don't duplicate efforts. >>> I understand that Joel Stanley, Dean McNamee and Lei Zhang have >>> already been doing a lot of work towards that. There's a wiki page >>> there: http://code.google.com/p/chromium/wiki/LinuxChromiumArm >>> >>> I've identified a few missing pieces to get a full version of chrome - >>> there may be others. They are mostly build infrastructure issues: >>> - v8 snapshotting needs to be disabled currently, we'd like to enable >>> it. That means executing mksnapshot as a target executable, either >>> through qemu or directly on device, i.e. the infrastructure to run a >>> target program. >> >> Actually the armulator (ARM simulator in V8) can be used to create ARM >> snapshots without running anything on the target platform. The C++ >> work is done for this, but the build file work isn't. What is needed >> is to build mksnapshot.cc with the armulator. This is done with >> simulator=arm in the scons build. I don't know how it's done with >> gyp. When the snapshot.cc file has been generated by mksnapshot you >> need to rebuild V8 from scratch, this time with the cross compiler. >> With the scons build that would be (after saving snapshot.cc and >> blowing away the other generated files) with snapshot=nobuild arch=arm >> wordsize=32. You need to make sure the CXX, AR, RANLIB and CC >> environment variables point to your cross toolchain. >> >> As I say, the build file work for this is not done yet. I am sure >> that it would be worth doing. The snapshot support makes startup of >> the VM faster at the cost of a moderate increase in size (moderate for >> a system capable of running Chromium). Since Chromium starts the VM >> on every new tab that is worth doing. On the other hand the browser >> is perfectly usable without this optimization so it is no show-stopper >> for the ARM version. > > That is very cool to know - I was afraid to ask :). It sounds like > with some work on gyp, we could entirely cross-compile chrome, full > featured. This sounds extremely difficult to do with gyp. Another thought, what about using qemu user emulation to run mksnapshot? > > Antoine > >> >>> - Gyp uses pkg-config to find includes/lib dependencies, i.e. it's >>> going to look at the host for them. If your target distribution >>> matches your host maybe you're fine, but it may not work at all, so >>> it'd would be good to extract that and get a way to specify the >>> dependencies explicitly. >>> - The chrome os build relies on the protobuf compiler. The current >>> build system builds it as a target executable, so we either need to >>> run in qemu / on device it as above, or change the build system to >>> understand target vs host executables. >>> >>> I wanted to double check if anyone was working on any of that, or if >>> anyone has good ideas about how to achieve each of them. Please speak >>> up ! >>> >>> Antoine >>> >>> >> >>> >> >> >> >> -- >> Erik Corry, Software Engineer >> Google Denmark ApS. CVR nr. 28 86 69 84 >> c/o Philip & Partners, 7 Vognmagergade, P.O. Box 2227, DK-1018 >> Copenhagen K, Denmark. >> > > > > --~--~-~--~~~---~--~~ Chromium Developers mailing list: chromium-dev@googlegroups.com View archives, change email options, or unsubscribe: http://groups.google.com/group/chromium-dev -~--~~~~--~~--~--~---
[chromium-dev] Re: Cross-compiling on ARM
On Fri, Aug 21, 2009 at 2:45 PM, Erik Corry wrote: > 2009/8/21 Antoine Labour : >> >> There's growing interest from several parties in getting Chrome to >> cross-compile onto linux/ARM. Let's make sure everyone is on the same >> page so that we don't duplicate efforts. >> I understand that Joel Stanley, Dean McNamee and Lei Zhang have >> already been doing a lot of work towards that. There's a wiki page >> there: http://code.google.com/p/chromium/wiki/LinuxChromiumArm >> >> I've identified a few missing pieces to get a full version of chrome - >> there may be others. They are mostly build infrastructure issues: >> - v8 snapshotting needs to be disabled currently, we'd like to enable >> it. That means executing mksnapshot as a target executable, either >> through qemu or directly on device, i.e. the infrastructure to run a >> target program. > > Actually the armulator (ARM simulator in V8) can be used to create ARM > snapshots without running anything on the target platform. The C++ > work is done for this, but the build file work isn't. What is needed > is to build mksnapshot.cc with the armulator. This is done with > simulator=arm in the scons build. I don't know how it's done with > gyp. When the snapshot.cc file has been generated by mksnapshot you > need to rebuild V8 from scratch, this time with the cross compiler. > With the scons build that would be (after saving snapshot.cc and > blowing away the other generated files) with snapshot=nobuild arch=arm > wordsize=32. You need to make sure the CXX, AR, RANLIB and CC > environment variables point to your cross toolchain. > > As I say, the build file work for this is not done yet. I am sure > that it would be worth doing. The snapshot support makes startup of > the VM faster at the cost of a moderate increase in size (moderate for > a system capable of running Chromium). Since Chromium starts the VM > on every new tab that is worth doing. On the other hand the browser > is perfectly usable without this optimization so it is no show-stopper > for the ARM version. That is very cool to know - I was afraid to ask :). It sounds like with some work on gyp, we could entirely cross-compile chrome, full featured. Antoine > >> - Gyp uses pkg-config to find includes/lib dependencies, i.e. it's >> going to look at the host for them. If your target distribution >> matches your host maybe you're fine, but it may not work at all, so >> it'd would be good to extract that and get a way to specify the >> dependencies explicitly. >> - The chrome os build relies on the protobuf compiler. The current >> build system builds it as a target executable, so we either need to >> run in qemu / on device it as above, or change the build system to >> understand target vs host executables. >> >> I wanted to double check if anyone was working on any of that, or if >> anyone has good ideas about how to achieve each of them. Please speak >> up ! >> >> Antoine >> >> >> >> > > > > -- > Erik Corry, Software Engineer > Google Denmark ApS. CVR nr. 28 86 69 84 > c/o Philip & Partners, 7 Vognmagergade, P.O. Box 2227, DK-1018 > Copenhagen K, Denmark. > --~--~-~--~~~---~--~~ Chromium Developers mailing list: chromium-dev@googlegroups.com View archives, change email options, or unsubscribe: http://groups.google.com/group/chromium-dev -~--~~~~--~~--~--~---
[chromium-dev] Re: Cross-compiling on ARM
On Fri, Aug 21, 2009 at 2:46 PM, Dean McNamee wrote: > On Fri, Aug 21, 2009 at 2:34 PM, Lei Zhang wrote: >> On Fri, Aug 21, 2009 at 2:25 PM, Dean McNamee wrote: >>> >>> On Fri, Aug 21, 2009 at 1:43 PM, Antoine Labour wrote: - Gyp uses pkg-config to find includes/lib dependencies, i.e. it's going to look at the host for them. If your target distribution matches your host maybe you're fine, but it may not work at all, so it'd would be good to extract that and get a way to specify the dependencies explicitly. >>> >>> I also don't think we should modify our GYP build for this. You can >>> set PKG_CONFIG_PATH, etc, to have pkg-config use a different set of pc >>> files. You can just create these files for whatever target you are >>> building, and point pkg-config to use them instead. >> >> I don't remember having to fight pkg-config. Maybe my host/target >> (Ubuntu Hardy x86/Debian Lenny ARM) matched closely enough that it >> didn't matter. >> >> Thanks for writing the wiki page. I should've done that a long time >> ago. I dumped the bits I remember on the wiki page. > > (Joel wrote the wiki page, thanks Joel!) Didn't intend to miss-attribute. Thanks Joel ! Antoine --~--~-~--~~~---~--~~ Chromium Developers mailing list: chromium-dev@googlegroups.com View archives, change email options, or unsubscribe: http://groups.google.com/group/chromium-dev -~--~~~~--~~--~--~---
[chromium-dev] Re: Cross-compiling on ARM
On Fri, Aug 21, 2009 at 2:25 PM, Dean McNamee wrote: > > On Fri, Aug 21, 2009 at 1:43 PM, Antoine Labour wrote: >> - Gyp uses pkg-config to find includes/lib dependencies, i.e. it's >> going to look at the host for them. If your target distribution >> matches your host maybe you're fine, but it may not work at all, so >> it'd would be good to extract that and get a way to specify the >> dependencies explicitly. > > I also don't think we should modify our GYP build for this. You can > set PKG_CONFIG_PATH, etc, to have pkg-config use a different set of pc > files. You can just create these files for whatever target you are > building, and point pkg-config to use them instead. I don't remember having to fight pkg-config. Maybe my host/target (Ubuntu Hardy x86/Debian Lenny ARM) matched closely enough that it didn't matter. Thanks for writing the wiki page. I should've done that a long time ago. I dumped the bits I remember on the wiki page. --~--~-~--~~~---~--~~ Chromium Developers mailing list: chromium-dev@googlegroups.com View archives, change email options, or unsubscribe: http://groups.google.com/group/chromium-dev -~--~~~~--~~--~--~---
[chromium-dev] Re: Cross-compiling on ARM
On Fri, Aug 21, 2009 at 1:43 PM, Antoine Labour wrote: > > There's growing interest from several parties in getting Chrome to > cross-compile onto linux/ARM. Let's make sure everyone is on the same > page so that we don't duplicate efforts. > I understand that Joel Stanley, Dean McNamee and Lei Zhang have > already been doing a lot of work towards that. There's a wiki page > there: http://code.google.com/p/chromium/wiki/LinuxChromiumArm > > I've identified a few missing pieces to get a full version of chrome - > there may be others. They are mostly build infrastructure issues: > - v8 snapshotting needs to be disabled currently, we'd like to enable > it. That means executing mksnapshot as a target executable, either > through qemu or directly on device, i.e. the infrastructure to run a > target program. If you decide you do want snapshotting on arm (it has some down sides), I think there is a pretty easy way to go about this. Basically making the mksnapshot target pause and wait for you to hit enter. Then you can run your script or do whatever to run mksnapshot on the right machine, and bring the output back. I would not try to make GYP any more intelligent than this (besides maybe running an arbitrary script), since how you're going to run mksnapshot and move the data around is going to vary greatly depending on your setup. We could easily just add a gyp variable like v8_mksnaphot_command, and then you could replace that with whatever script you want. > - Gyp uses pkg-config to find includes/lib dependencies, i.e. it's > going to look at the host for them. If your target distribution > matches your host maybe you're fine, but it may not work at all, so > it'd would be good to extract that and get a way to specify the > dependencies explicitly. I also don't think we should modify our GYP build for this. You can set PKG_CONFIG_PATH, etc, to have pkg-config use a different set of pc files. You can just create these files for whatever target you are building, and point pkg-config to use them instead. > - The chrome os build relies on the protobuf compiler. The current > build system builds it as a target executable, so we either need to > run in qemu / on device it as above, or change the build system to > understand target vs host executables. > > I wanted to double check if anyone was working on any of that, or if > anyone has good ideas about how to achieve each of them. Please speak > up ! > > Antoine > > > > --~--~-~--~~~---~--~~ Chromium Developers mailing list: chromium-dev@googlegroups.com View archives, change email options, or unsubscribe: http://groups.google.com/group/chromium-dev -~--~~~~--~~--~--~---