Hi all,
I've had comments that getting hold of binaries for the linaro toolchain can be trick for people unfamiliar with the linaro tools.
One reason is that we don't release binaries as such -- but a visitor browsing in through http://www.linaro.org/downloads/ won't discover this, and may waste a lot of time trying to understand launchpad etc. before coming to the conclusion that binaries either aren't available or are not easily findable.
On the other hand, the cross toolchain packages are likely to be of interest to such visitors, but aren't obviously advertised -- maybe I'm looking in the wrong place, but if so then new visitors to the linaro pages are likely to look in the wrong place too.
Would it make sense to explain the situation more prominently so that visitors know what to expect?
Something along the lines of "if you use distro x revision y, these cross-compiler packages are available" and "if you need the tools for some other environment, you need to download the source and build it for yourself".
Cheers ---Dave
On Wed, 2 Mar 2011, Dave Martin wrote:
On the other hand, the cross toolchain packages are likely to be of interest to such visitors, but aren't obviously advertised -- maybe I'm looking in the wrong place, but if so then new visitors to the linaro pages are likely to look in the wrong place too.
Would it make sense to explain the situation more prominently so that visitors know what to expect?
I would think so.
Something along the lines of "if you use distro x revision y, these cross-compiler packages are available" and "if you need the tools for some other environment, you need to download the source and build it for yourself".
Building a cross-compiler is already a challenge in itself. Would be better to build a version that can be installed anywhere like the CodeSourcery releases and offer that as a tar download.
Nicolas
On Wed, Mar 02, 2011, Nicolas Pitre wrote:
Building a cross-compiler is already a challenge in itself. Would be better to build a version that can be installed anywhere like the CodeSourcery releases and offer that as a tar download.
This comes up frequently; I'm sure many people would be interested in this, but I'm not sure what kind of support situation we'd put ourselves in by publishing these.
On 02/03/11 17:52, Nicolas Pitre wrote:
Building a cross-compiler is already a challenge in itself. Would be better to build a version that can be installed anywhere like the CodeSourcery releases and offer that as a tar download.
Binaries that can be run anywhere are challenging. You either have to static link (and even then you need to be careful what syscalls you use), or you have to build them against some ancient libraries, and static link the less ubiquitous dependencies (such as mpfr, ppl, etc.).
Andrew
On 02.03.2011 19:02, Andrew Stubbs wrote:
On 02/03/11 17:52, Nicolas Pitre wrote:
Building a cross-compiler is already a challenge in itself. Would be better to build a version that can be installed anywhere like the CodeSourcery releases and offer that as a tar download.
Binaries that can be run anywhere are challenging. You either have to static link (and even then you need to be careful what syscalls you use), or you have to build them against some ancient libraries, and static link the less ubiquitous dependencies (such as mpfr, ppl, etc.).
I didn't try this, so I don't know if it's feasible.
- build packages in a PPA, say, for an "old" release, e.g. hardy, including mpfr, ppl, and other dependencies. - unpack a set of deb's with dpkg -x - relocate to /usr/local, or /opt/linaro. The toolchain itself should be relocatable - pack a tarball.
Again, not tried, but this way you would end up with exactly the same binaries that you provide in a PPA.
Matthias
FWIW, Michael's recipe for building here https://code.launchpad.net/~michaelh1/+junk/cross-build has worked well for me.
On Wed, Mar 2, 2011 at 11:09 AM, Matthias Klose doko@ubuntu.com wrote:
On 02.03.2011 19:02, Andrew Stubbs wrote:
On 02/03/11 17:52, Nicolas Pitre wrote:
Building a cross-compiler is already a challenge in itself. Would be better to build a version that can be installed anywhere like the CodeSourcery releases and offer that as a tar download.
Binaries that can be run anywhere are challenging. You either have to static link (and even then you need to be careful what syscalls you use), or you have to build them against some ancient libraries, and static link the less ubiquitous dependencies (such as mpfr, ppl, etc.).
I didn't try this, so I don't know if it's feasible.
- build packages in a PPA, say, for an "old" release, e.g. hardy, including mpfr, ppl, and other dependencies. - unpack a set of deb's with dpkg -x - relocate to /usr/local, or /opt/linaro. The toolchain itself should be relocatable - pack a tarball.
Again, not tried, but this way you would end up with exactly the same binaries that you provide in a PPA.
Matthias
linaro-toolchain mailing list linaro-toolchain@lists.linaro.org http://lists.linaro.org/mailman/listinfo/linaro-toolchain
On 2 March 2011 18:44, John Rigby john.rigby@linaro.org wrote:
FWIW, Michael's recipe for building here https://code.launchpad.net/~michaelh1/+junk/cross-build has worked well for me.
It's OK for people familiar with toolchains; the problem is where you have a subject specialist who knows how to write C or ARM assembler but really doesn't know anything about toolchains or wrangling build tools; they just need something that works out of the box.
Dave
On 02/03/11 18:09, Matthias Klose wrote:
On 02.03.2011 19:02, Andrew Stubbs wrote:
On 02/03/11 17:52, Nicolas Pitre wrote:
Building a cross-compiler is already a challenge in itself. Would be better to build a version that can be installed anywhere like the CodeSourcery releases and offer that as a tar download.
Binaries that can be run anywhere are challenging. You either have to static link (and even then you need to be careful what syscalls you use), or you have to build them against some ancient libraries, and static link the less ubiquitous dependencies (such as mpfr, ppl, etc.).
I didn't try this, so I don't know if it's feasible.
- build packages in a PPA, say, for an "old" release, e.g. hardy, including mpfr, ppl, and other dependencies.
- unpack a set of deb's with dpkg -x
- relocate to /usr/local, or /opt/linaro. The toolchain itself should be relocatable
- pack a tarball.
Again, not tried, but this way you would end up with exactly the same binaries that you provide in a PPA.
Well, that process is fine for Debian/Ubuntu users, but not-so-good for Suse/Redhat/Centos/Fedora/Arch/etc. I think it would be better if they worked anywhere (including Windows).
The toolchain *is* relocatable, but you need to be careful about the search paths and such. By default GCC will search for binaries and libraries relative to itself first, then in the location it was configured to be installed, and then in the standard places (IIRC, ICBW). Whatever, there can be a few interesting gotchas if you aren't careful.
Andrew
On Wed, 2 Mar 2011, Andrew Stubbs wrote:
On 02/03/11 17:52, Nicolas Pitre wrote:
Building a cross-compiler is already a challenge in itself. Would be better to build a version that can be installed anywhere like the CodeSourcery releases and offer that as a tar download.
Binaries that can be run anywhere are challenging. You either have to static link (and even then you need to be careful what syscalls you use), or you have to build them against some ancient libraries, and static link the less ubiquitous dependencies (such as mpfr, ppl, etc.).
Sure. But we have some evidence with the CS releases that this is reasonably possible, right?
Nicolas
On 02/03/11 22:51, Nicolas Pitre wrote:
On Wed, 2 Mar 2011, Andrew Stubbs wrote:
Binaries that can be run anywhere are challenging. You either have to static link (and even then you need to be careful what syscalls you use), or you have to build them against some ancient libraries, and static link the less ubiquitous dependencies (such as mpfr, ppl, etc.).
Sure. But we have some evidence with the CS releases that this is reasonably possible, right?
True, but CodeSourcery have some quite involved infrastructure in place to achieve that.
Of course, I have access to that, and I could probably get something built quite quickly.
I'm not sure about the QA & support implications though?
Andrew
On 03/03/11 09:47, Andrew Stubbs wrote:
Sure. But we have some evidence with the CS releases that this is reasonably possible, right?
True, but CodeSourcery have some quite involved infrastructure in place to achieve that.
Of course, I have access to that, and I could probably get something built quite quickly.
It turns out there are some big issues with this idea. I don't think it's going to happen easily.
Andrew
On Thu, Mar 3, 2011 at 2:26 PM, Andrew Stubbs andrew.stubbs@linaro.org wrote:
On 03/03/11 09:47, Andrew Stubbs wrote:
Sure. But we have some evidence with the CS releases that this is reasonably possible, right?
True, but CodeSourcery have some quite involved infrastructure in place to achieve that.
Of course, I have access to that, and I could probably get something built quite quickly.
It turns out there are some big issues with this idea. I don't think it's going to happen easily.
Something we can still do now is to document what is/isn't available more clearly on the website.
Is that something that can be done from within the toolchain group, or do we need to ask someone else?
Cheers ---Dave
I agree with Nicolas' proposal to deliver a cross-compiler. A lot of people request this
Yves
-----Original Message----- From: linaro-toolchain-bounces@lists.linaro.org [mailto:linaro-toolchain-bounces@lists.linaro.org] On Behalf Of Nicolas Pitre Sent: Wednesday, March 02, 2011 11:52 AM To: Dave Martin Cc: linaro-toolchain Subject: Re: Getting linaro toolchain binaries
On Wed, 2 Mar 2011, Dave Martin wrote:
On the other hand, the cross toolchain packages are likely to be of interest to such visitors, but aren't obviously advertised -- maybe I'm looking in the wrong place, but if so then new visitors to the linaro pages are likely to look in the wrong place too.
Would it make sense to explain the situation more prominently so that visitors know what to expect?
I would think so.
Something along the lines of "if you use distro x revision y, these cross-compiler packages are available" and "if you need the tools for some other environment, you need to download the source and build it for yourself".
Building a cross-compiler is already a challenge in itself. Would be better to build a version that can be installed anywhere like the CodeSourcery releases and offer that as a tar download.
Nicolas
_______________________________________________ linaro-toolchain mailing list linaro-toolchain@lists.linaro.org http://lists.linaro.org/mailman/listinfo/linaro-toolchain
(top posting as summarising)
It's funny how things happen at the same time. I've been asked a few times about how to compile Linaro GCC so I started this page a few days ago: https://wiki.linaro.org/WorkingGroups/ToolChain/Using
The goal is to describe how to build the toolchain outputs such as GCC and GDB in common configurations such as native or cross.
I see four classes of users: 1. Toolchain hackers who know how to build the product and start from source 2. Mid-level engineers who have experience with Unix tools and want to know how to build from source 3. Integrators who want a supported build script that automates everything but that they can customise 4. End users who just want a binary
(1) is fine as they look after themselves. (2) will be covered by the 'Using' pages. (3) is along the lines of my cross-build[1] Makefile. (4) is in Marcin's queue[2], but there's no technical reason that Linaro couldn't use the scripts from Marcin or item 3 to do an official binary tarball that targets the Linaro evaluation builds. Note that we're not set up to support end users directly so having a product like ARM's DS-5 between the working group and end users would be good.
This is all new, unplanned work. I'm going to do (3) in the background and turn it into a product as it will save me time overall, but we should discuss 2, 3, and 4 for the next cycle. Yves, can I suggest you bring this up at the next TSC meeting?
-- Michael
[1] https://code.launchpad.net/~michaelh1/+junk/cross-build [2] https://launchpad.net/ubuntu/+spec/other-linaro-n-cross-compilers
On Thu, Mar 3, 2011 at 7:08 AM, Vandervennet Yves-R55763 R55763@freescale.com wrote:
I agree with Nicolas' proposal to deliver a cross-compiler. A lot of people request this
Yves
-----Original Message----- From: linaro-toolchain-bounces@lists.linaro.org [mailto:linaro-toolchain-bounces@lists.linaro.org] On Behalf Of Nicolas Pitre Sent: Wednesday, March 02, 2011 11:52 AM To: Dave Martin Cc: linaro-toolchain Subject: Re: Getting linaro toolchain binaries
On Wed, 2 Mar 2011, Dave Martin wrote:
On the other hand, the cross toolchain packages are likely to be of interest to such visitors, but aren't obviously advertised -- maybe I'm looking in the wrong place, but if so then new visitors to the linaro pages are likely to look in the wrong place too.
Would it make sense to explain the situation more prominently so that visitors know what to expect?
I would think so.
Something along the lines of "if you use distro x revision y, these cross-compiler packages are available" and "if you need the tools for some other environment, you need to download the source and build it for yourself".
Building a cross-compiler is already a challenge in itself. Would be better to build a version that can be installed anywhere like the CodeSourcery releases and offer that as a tar download.
On Wed, Mar 2, 2011 at 8:04 PM, Michael Hope michael.hope@linaro.org wrote:
(top posting as summarising)
It's funny how things happen at the same time. I've been asked a few times about how to compile Linaro GCC so I started this page a few days ago: https://wiki.linaro.org/WorkingGroups/ToolChain/Using
The goal is to describe how to build the toolchain outputs such as GCC and GDB in common configurations such as native or cross.
I see four classes of users: 1. Toolchain hackers who know how to build the product and start from source 2. Mid-level engineers who have experience with Unix tools and want to know how to build from source 3. Integrators who want a supported build script that automates everything but that they can customise 4. End users who just want a binary
(1) is fine as they look after themselves. (2) will be covered by the 'Using' pages. (3) is along the lines of my cross-build[1] Makefile. (4) is in Marcin's queue[2], but there's no technical reason that Linaro couldn't use the scripts from Marcin or item 3 to do an official binary tarball that targets the Linaro evaluation builds. Note that we're not set up to support end users directly so having a product like ARM's DS-5 between the working group and end users would be good.
This is all new, unplanned work. I'm going to do (3) in the background and turn it into a product as it will save me time overall, but we should discuss 2, 3, and 4 for the next cycle. Yves, can I suggest you bring this up at the next TSC meeting?
Sounds sensible.
For now, my only real concern was that we should document the absence of a generic binary toolchain, and document the presence of the cross compiler packages, so that people don't burn too many cycles searching for something that isn't there. A few words on http://www.linaro.org/downloads/ and on https://launchpad.net/linaro-toolchain might be enough.
Providing generic binary toolchain downloads (including, optionally, a Windows-hosted build) is certainly nice-to-have; if we can accomodate this in the next cycle it would be a bonus -- so it sounds like it's worth discussing at the TSC.
Cheers ---Dave
On czw, 2011-03-03 at 09:04 +1300, Michael Hope wrote:
It's funny how things happen at the same time. I've been asked a few times about how to compile Linaro GCC so I started this page a few days ago: https://wiki.linaro.org/WorkingGroups/ToolChain/Using
The goal is to describe how to build the toolchain outputs such as GCC and GDB in common configurations such as native or cross.
I see four classes of users:
- Toolchain hackers who know how to build the product and start from source
- Mid-level engineers who have experience with Unix tools and want
to know how to build from source 3. Integrators who want a supported build script that automates everything but that they can customise 4. End users who just want a binary
(1) is fine as they look after themselves. (2) will be covered by the 'Using' pages. (3) is along the lines of my cross-build[1] Makefile. (4) is in Marcin's queue[2], but there's no technical reason that Linaro couldn't use the scripts from Marcin or item 3 to do an official binary tarball that targets the Linaro evaluation builds. Note that we're not set up to support end users directly so having a product like ARM's DS-5 between the working group and end users would be good.
This is all new, unplanned work. I'm going to do (3) in the background and turn it into a product as it will save me time overall, but we should discuss 2, 3, and 4 for the next cycle. Yves, can I suggest you bring this up at the next TSC meeting?
[1] https://code.launchpad.net/~michaelh1/+junk/cross-build [2] https://launchpad.net/ubuntu/+spec/other-linaro-n-cross-compilers
We need to make a product from your makefile and host it in official bzr branch. I have own copy [3] which has some improvements (you got it by email).
Current situation is like this:
1. Debian users can grab non-Linaro cross toolchains from Emdebian team 2. Ubuntu 10.10/11.04 users have Linaro cross toolchain in archive 3. Ubuntu 10.04/10.10 users can use Linaro toolchain backport PPA [4] which contains natty versions (will be updated in next week) 4. We can build binary tarballs using Michael's makefile [1][3] but resulting toolchain requires some host libraries. In OpenEmbedded we solved this problem by shipping all of them in tarball. But this would require some hacking time.
[3] https://code.launchpad.net/~hrw/+junk/cross-build [4] https://launchpad.net/~linaro-maintainers/+archive/toolchain
Dave,
I agree with you when you say that Linaro toolchains are not easy to use for new visitors.
I will improve the http://www.linaro.org/downloads/ page (hopefully this week) to improve this.
On 03/03/2011 02:26 PM, Marcin Juszkiewicz wrote:
Current situation is like this:
- Debian users can grab non-Linaro cross toolchains from Emdebian team
- Ubuntu 10.10/11.04 users have Linaro cross toolchain in archive
- Ubuntu 10.04/10.10 users can use Linaro toolchain backport PPA [4] which contains natty versions (will be updated in next week)
- We can build binary tarballs using Michael's makefile [1][3] but resulting toolchain requires some host libraries. In OpenEmbedded we solved this problem by shipping all of them in tarball. But this would require some hacking time.
Marcin, thanks for the status.
I created a wiki page about the binary cross-compiling toolchains: https://wiki.linaro.org/WorkingGroups/ToolChain/BinaryCrossToolchains
Please correct me if there is anything wrong or incomplete. I plan to use a link to this page on http://www.linaro.org/downloads/.
Thank you in advance for having a look.
Cheers,
Michael.
On Tue, Mar 8, 2011 at 10:37 AM, Michael Opdenacker michael.opdenacker@linaro.org wrote:
Dave,
I agree with you when you say that Linaro toolchains are not easy to use for new visitors.
I will improve the http://www.linaro.org/downloads/ page (hopefully this week) to improve this.
On 03/03/2011 02:26 PM, Marcin Juszkiewicz wrote:
Current situation is like this:
- Debian users can grab non-Linaro cross toolchains from Emdebian team
- Ubuntu 10.10/11.04 users have Linaro cross toolchain in archive
- Ubuntu 10.04/10.10 users can use Linaro toolchain backport PPA [4]
which contains natty versions (will be updated in next week) 4. We can build binary tarballs using Michael's makefile [1][3] but resulting toolchain requires some host libraries. In OpenEmbedded we solved this problem by shipping all of them in tarball. But this would require some hacking time.
Marcin, thanks for the status.
I created a wiki page about the binary cross-compiling toolchains: https://wiki.linaro.org/WorkingGroups/ToolChain/BinaryCrossToolchains
Please correct me if there is anything wrong or incomplete. I plan to use a link to this page on http://www.linaro.org/downloads/.
Could this go under: https://wiki.linaro.org/WorkingGroups/ToolChain/Using
-- Michael
On 03/07/2011 01:37 PM, Michael Opdenacker wrote:
I created a wiki page about the binary cross-compiling toolchains: https://wiki.linaro.org/WorkingGroups/ToolChain/BinaryCrossToolchains
We already have a page pretty similiar to this here:
https://wiki.linaro.org/Mentoring/ToolchainInstall
We should probably merge the best parts of each into one page and make sure it has the "CategoryHowTo" at the bottom.
-andy
On Mon, Mar 7, 2011 at 10:07 PM, Andy Doan andy.doan@linaro.org wrote:
On 03/07/2011 01:37 PM, Michael Opdenacker wrote:
I created a wiki page about the binary cross-compiling toolchains: https://wiki.linaro.org/WorkingGroups/ToolChain/BinaryCrossToolchains
We already have a page pretty similiar to this here:
https://wiki.linaro.org/Mentoring/ToolchainInstall
We should probably merge the best parts of each into one page and make sure it has the "CategoryHowTo" at the bottom.
So long as the resulting page is easy for a newbie to find from www.linaro.org, I think that should work.
Also, I think the answers to the general toolchain availability questions a newbie would have need to be answered in one place, so that the visitor understands what their options are right away, and has the relevant pointers without having to walk all over the wiki.
I don't think any of the existing proposals satisfy these goals yet, but I'm happy to be corrected.
Cheers ---Dave
Hi Andy,
On 03/07/2011 11:07 PM, Andy Doan wrote:
On 03/07/2011 01:37 PM, Michael Opdenacker wrote:
I created a wiki page about the binary cross-compiling toolchains: https://wiki.linaro.org/WorkingGroups/ToolChain/BinaryCrossToolchains
We already have a page pretty similiar to this here:
https://wiki.linaro.org/Mentoring/ToolchainInstall
We should probably merge the best parts of each into one page and make sure it has the "CategoryHowTo" at the bottom.
Thanks! That's right that both pages have similar content. I will take care of merging my stuff to the https://wiki.linaro.org/Mentoring/ToolchainInstall page, and then to add a link to it from https://wiki.linaro.org/WorkingGroups/ToolChain/Using, as Michael suggested.
Cheers,
Michael.
On 03/08/2011 04:38 PM, Michael Opdenacker wrote:
Thanks! That's right that both pages have similar content. I will take care of merging my stuff to the https://wiki.linaro.org/Mentoring/ToolchainInstall page, and then to add a link to it from https://wiki.linaro.org/WorkingGroups/ToolChain/Using, as Michael suggested.
Done, see https://wiki.linaro.org/Mentoring/ToolchainInstall and https://wiki.linaro.org/WorkingGroups/ToolChain/Using
I'm not very happy with the way the first page looks now. There are too many section headers (don't know how to add a "preformatted text" section inside a bullet list), so don't hesitate to make changes. I hope I didn't make it too verbose either.
The next step for me is to use https://wiki.linaro.org/Mentoring/ToolchainInstall in the http://www.linaro.org/downloads page.
By the way, how do I remove the https://wiki.linaro.org/WorkingGroups/ToolChain/BinaryCrossToolchains page?
Cheers,
Michael.
On Wed, Mar 9, 2011 at 11:15 AM, Michael Opdenacker michael.opdenacker@linaro.org wrote:
On 03/08/2011 04:38 PM, Michael Opdenacker wrote:
Thanks! That's right that both pages have similar content. I will take care of merging my stuff to the https://wiki.linaro.org/Mentoring/ToolchainInstall page, and then to add a link to it from https://wiki.linaro.org/WorkingGroups/ToolChain/Using, as Michael suggested.
Done, see https://wiki.linaro.org/Mentoring/ToolchainInstall and https://wiki.linaro.org/WorkingGroups/ToolChain/Using
I'm not very happy with the way the first page looks now. There are too many section headers (don't know how to add a "preformatted text" section inside a bullet list),
Use: * This is a bulleted item `with preformatted text`
Note the backtick.
-- Michael
Hi Michael,
On 03/09/2011 12:33 AM, Michael Hope wrote:
On Wed, Mar 9, 2011 at 11:15 AM, Michael Opdenacker michael.opdenacker@linaro.org wrote:
I'm not very happy with the way the first page looks now. There are too many section headers (don't know how to add a "preformatted text" section inside a bullet list),
Use:
- This is a bulleted item `with preformatted text`
Note the backtick.
Thanks for the tip! I tried it, but having several paragraphs under a bullet list eventually looked worse.
I added a table of contents at the beginning to make the document structure easier to understand. See https://wiki.linaro.org/Mentoring/ToolchainInstall
Don't hesitate to make changes that could make this page look better.
Thanks again,
Cheers,
Michael.
On 9 March 2011 09:09, Michael Opdenacker michael.opdenacker@linaro.org wrote:
Hey guys. This looks great. A couple of pointers:
1. For the other non-ubuntu linux distros, it might be worth to put in a bug in the other distro's ears to update the wiki themselves so some Fedora guys can put in what they had to do to get it to work with Fedora.
2. Can we put in a section on what it will not work on? like cygwin perhaps, Android?? etc.
anmar
linaro-toolchain@lists.linaro.org