Chief Delphi

Chief Delphi (http://www.chiefdelphi.com/forums/index.php)
-   Programming (http://www.chiefdelphi.com/forums/forumdisplay.php?f=51)
-   -   GCC 4.9 arm-nilrt-linux-gnueabi toolchain (http://www.chiefdelphi.com/forums/showthread.php?t=130450)

CodeYeti 04-09-2014 15:30

GCC 4.9 arm-nilrt-linux-gnueabi toolchain
 
Has anybody been able to successfully build a GCC 4.9 toolchain for the roboRIO? I've been looking into it, but I don't have any hardware, so I was wondering if any of the beta teams had had any success as of yet.

AustinSchuh 04-09-2014 20:33

Re: GCC 4.9 arm-nilrt-linux-gnueabi toolchain
 
I have already successfully used 4.8.3 with it. 4.9 shouldn't be that hard.

CodeYeti 04-09-2014 23:08

Re: GCC 4.9 arm-nilrt-linux-gnueabi toolchain
 
Quote:

Originally Posted by AustinSchuh (Post 1399009)
I have already successfully used 4.8.3 with it. 4.9 shouldn't be that hard.

What C library did you use? Just glibc? And where did you snag the kernel headers?

yash101 05-09-2014 10:49

Re: GCC 4.9 arm-nilrt-linux-gnueabi toolchain
 
I have never cross-compiled before, so I am a newbie. When you use GCC and try to compile an application for another platform like the PPC in the cRIO, do you still have access to the full C++ STL library? Also, are there some libraries like pthread available?

I have the GNU GCC compiler to cross-compile for the RasPi, but I don't know if it will compile my application, which uses pthread and libx11.

Thanks!

AustinSchuh 05-09-2014 16:30

Re: GCC 4.9 arm-nilrt-linux-gnueabi toolchain
 
Quote:

Originally Posted by CodeYeti (Post 1399023)
What C library did you use? Just glibc? And where did you snag the kernel headers?

I was feeling really lazy, and found a pre-built tool-chain. Compiling GCC takes a while. We will be spreading more information (and filing bug reports) as part of the beta test, and this will be part of it. I'd like to get some more experience with everything before spreading info.

One of my eventual goals is to set up Clang as well.

byteit101 05-09-2014 19:51

Re: GCC 4.9 arm-nilrt-linux-gnueabi toolchain
 
We are currently updating our toolchain for GCC 4.9, which will (hopefully, almost positive) be the official C++ compiler for 2015. Its not yet done (I'm actually waiting for GCC to compile on launchpad as I type this), but we are hoping to let some beta teams test it soon (week or so?).

Quote:

Originally Posted by CodeYeti (Post 1399023)
What C library did you use? Just glibc? And where did you snag the kernel headers?

The C library much match the one on the roborio (which is glibc irrc. We are currently just copying them off the image). The kernel headers are normal kernel headers, which can be snagged by something like this: https://bitbucket.org/byteit101/tool....sh?at=default

Quote:

Originally Posted by yash101 (Post 1399065)
I have never cross-compiled before, so I am a newbie. When you use GCC and try to compile an application for another platform like the PPC in the cRIO, do you still have access to the full C++ STL library? Also, are there some libraries like pthread available?

I have the GNU GCC compiler to cross-compile for the RasPi, but I don't know if it will compile my application, which uses pthread and libx11.

Thanks!

Depends on the platform. C++STL is anywhere that C++ compiles, but pthread is not always. Its on the RoboRIO, but not the cRIO. libx11 is not on the RoboRIO as there is no output display for X to run on.

Shameless plug: Anyone interested in maintaining arm-linux-gnueabi packages for non .deb-based linux should contact me. If the given platform already has binutils 2.24 and gcc 4.9.1, you only need to package the header files and so libs.

CodeYeti 08-09-2014 19:27

Re: GCC 4.9 arm-nilrt-linux-gnueabi toolchain
 
Quote:

Originally Posted by byteit101 (Post 1399140)
We are currently updating our toolchain for GCC 4.9, which will (hopefully, almost positive) be the official C++ compiler for 2015. Its not yet done (I'm actually waiting for GCC to compile on launchpad as I type this), but we are hoping to let some beta teams test it soon (week or so?).



The C library much match the one on the roborio (which is glibc irrc. We are currently just copying them off the image). The kernel headers are normal kernel headers, which can be snagged by something like this: https://bitbucket.org/byteit101/tool....sh?at=default


Depends on the platform. C++STL is anywhere that C++ compiles, but pthread is not always. Its on the RoboRIO, but not the cRIO. libx11 is not on the RoboRIO as there is no output display for X to run on.

Shameless plug: Anyone interested in maintaining arm-linux-gnueabi packages for non .deb-based linux should contact me. If the given platform already has binutils 2.24 and gcc 4.9.1, you only need to package the header files and so libs.

As I'm only an alum for a team, I have access to neither hardware nor the actual images so I didn't know what library headers I should be using. I was having a REALLY hard time getting glibc to build with a bootstrap version of GCC though, which is probably due to my relative inexperience with toolchain building. Any tips on getting building a bootstrap version of GCC that will actually build glibc?

EDIT: Also is there a preview version of wpilib i could be using?

calcmogul 09-09-2014 21:01

Re: GCC 4.9 arm-nilrt-linux-gnueabi toolchain
 
Quote:

Originally Posted by CodeYeti (Post 1399405)
I was having a REALLY hard time getting glibc to build with a bootstrap version of GCC though, which is probably due to my relative inexperience with toolchain building. Any tips on getting building a bootstrap version of GCC that will actually build glibc?

I've built an arm-linux-gnueabi cross compiler before on Arch Linux by using the instructions here: http://www.archlinuxuser.com/2013/07...bi-gcc-on.html. Although, the packages don't build the correct version of glibc among other things. If you use another distribution, you could run the shell commands in the PKGBUILDs yourself.

Quote:

Originally Posted by CodeYeti (Post 1399405)
EDIT: Also is there a preview version of wpilib i could be using?

There's a git repository for the 2015 WPILib at https://usfirst.collab.net/sf/sfmain...rojects.wpilib, but it's not publicly viewable.

taichichuan 09-09-2014 22:00

Re: GCC 4.9 arm-nilrt-linux-gnueabi toolchain
 
You should be able to use the Linaro GCC 4.9 toolchain on a Linux box. I'm using it now for my other ARM platforms on my Linux Mint 17 box.

CodeYeti 09-09-2014 23:24

Re: GCC 4.9 arm-nilrt-linux-gnueabi toolchain
 
Quote:

Originally Posted by mathmogul (Post 1399570)
I've built an arm-linux-gnueabi cross compiler before on Arch Linux by using the instructions here: http://www.archlinuxuser.com/2013/07...bi-gcc-on.html. Although, the packages don't build the correct version of glibc among other things. If you use another distribution, you could run the shell commands in the PKGBUILDs yourself.



There's a git repository for the 2015 WPILib at https://usfirst.collab.net/sf/sfmain...rojects.wpilib, but it's not publicly viewable.

What does one have to do to get access?

calcmogul 10-09-2014 01:02

Re: GCC 4.9 arm-nilrt-linux-gnueabi toolchain
 
Quote:

Originally Posted by CodeYeti (Post 1399581)
What does one have to do to get access?

To get read access, I submitted an account creation request on the login page and it got approved by an administrator eventually.

CodeYeti 11-09-2014 12:05

Re: GCC 4.9 arm-nilrt-linux-gnueabi toolchain
 
I'm still planning on rolling my own toolchain, but for the information of others I just found someone building Debian/Ubuntu packages here.

wt200999 12-09-2014 12:19

Re: GCC 4.9 arm-nilrt-linux-gnueabi toolchain
 
While this might not be exactly what you are looking for, NI has a full openembedded build system set up as well as their fork of the linux kernel on their github here: https://github.com/ni


There are a couple of other cool things on their github as well if you look around.

byteit101 14-09-2014 00:00

Re: GCC 4.9 arm-nilrt-linux-gnueabi toolchain
 
Quote:

Originally Posted by CodeYeti (Post 1399742)
I'm still planning on rolling my own toolchain, but for the information of others I just found someone building Debian/Ubuntu packages here.

wow, google let that get out fast... That is the current WPI WIP official 2015 toolchain set (for debian/ubuntu) Please note that we just are starting to release this to beta teams (like 5pm today), so bugs are expected. There are other bits not found in this repository (mainly WPILib and all the FRC-specific libraries) so you can't build robot programs with it yet if you are not an beta tester. Please don't report bugs if you aren't a beta tester, there are several broken things I know about already and its only been the first few hours. I don't need hundreds of the same bug reports...

Also if you are a beta tester and you haven't heard of this yet: we are rolling this out slowly due to the large breakage this could cause. Don't panic.

yash101 16-09-2014 23:36

Re: GCC 4.9 arm-nilrt-linux-gnueabi toolchain
 
Excuse me for this extremely newbie question:
Just a couple days ago, I made an ARM cross compiler for my RasPi. They both are ARM based, so right away, it seems as though the RPi executables will be compatible with the cRIO. However, aren't there differences in the machine code between the different subsets of ARM? Would they prevent my executables from running?

Thanks! I'm quite new to cross-compiling. I want to have a cross compiler ready for the RoboRIO so I can push my software as soon as possible!


All times are GMT -5. The time now is 05:04.

Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Copyright © Chief Delphi