03-22-2016 04:03 PM
Do you have a tutorial for the Windows CC tools? I'm willing to take a look at it.
03-22-2016 04:19 PM
We don't package the Linux host crosscompile toolchain with an IDE but we do have it publically available stand-alone. You can find links to the stand alone installers and the bundled development tools here:
C/C++ Embedded System Design Tools (specifically the "Software Toolchains Required" section)
http://www.ni.com/white-paper/14623/en/
We don't have specific instructions for configuring and using the stand alone cross compile tools.
We also provide a solution for Windows that includes the Eclipse IDE and x64/arm toolchains that is called the "C/C++ Development Tools for NI Linux Real-Time, Eclipse Edition" There are tutorials to accompany this as well.
Download:
http://www.ni.com/download/labview-real-time-module-2014/4846/en/
Getting started tutorial:
http://www.ni.com/tutorial/14625/en/
Note that, if you're used to compiling via command line then the above tutorial for C/C++ Dvelopment Tools will be a different experience as it is Eclipse IDE centric.
03-23-2016 02:41 PM
Is "C/C++ Development Tools for NI Linux Real-Time, Eclipse Edition 2014" the latest one, or do you have a 2015 (or, you know, 2016 ) version yet?
03-23-2016 02:45 PM
2014 is the latest version and works with both 2014 and 2015
03-23-2016 02:46 PM
2014 is the latest and also supports the 2015 NI platform software set. The detailed description on the download page has more details on SW/HW version compatibility.
Here is a snippit for convenience.
03-23-2016 04:12 PM
Well, I tried to follow the "Getting Started" tutorial. If I may summarize by quoting Rick & Morty,
You might as well ask a horse to fix a merry-go-round. I mean, he'll try his best, but mostly, he's just gonna get horrified.
I haven't said "WTF" aloud that many times in 10 minutes since I last used Lotus Notes while working at NI. I, as someone who hasn't formally learned to develop and build C applications for Linux, will probably never be able to effectively use Eclipse to cross-compile libraries for an ARM target from my Intel Windows machine. It would take a sabbatical of focused study and practice to come up to speed on these tools. I think my time is much better invested learning CMake scripts.
03-23-2016 04:33 PM
Staab_Engineering wrote:
...
It would take a sabbatical of focused study and practice to come up to speed on these tools.
...
Sometimes called "a degree in CS or CE". Sad but true, much of the time is taken up by learning the tools instead of learning the principles. Maybe I just got the short end of the stick...
Message was edited by: BradM to be clearer and less condescending-sounding.
03-23-2016 11:54 PM
As Tim mentioned, "Note that, if you're used to compiling via command line then the above tutorial for C/C++ Dvelopment Tools will be a different experience as it is Eclipse IDE centric."
If you are more comfortable with the command line (and I don't blame you, I am not a fan of Eclipse) you can still do it that way, with the same tools you use on the target, except without all the unconventional limitations of developing on an embedded device. You need a Linux development machine for the experience to be most similar to compiling on the target. Setting up a Linux virtual machine for that purpose that you can run on your Windows host is not hard. As I mentioned earlier, just download a VM tool like VirtualBox: https://www.virtualbox.org/wiki/Downloads then pick a distribution. A lot of people around here recommend Mint: https://www.linuxmint.com/download.php (the first option in the list is a fine variant, 32-bit or 64-bit are both fine). Once the OS is installed on the VM, you're in the same boat you'd be on on the target where you just install the various packages you need, except probably using something like apt-get instead of opkg. The hardest part is probably getting hold of the toolchain, which Tim linked above: http://www.ni.com/download/labview-real-time-module-2014/4957/en/ -- once you have that installed and those tools in your search path (or, if you want to get fancy, cross-compile environment variable), it works like it does on the target. It really is that easy; I do this all the time.
To reiterate my earlier post, while I do compile things on the target often and find it convenient for simple use cases, I would strongly discourage making that part of any serious development process. There are just too many quirks that people posting here have hit over and over due to the embedded-centric configuration of the target.