From Friday, April 19th (11:00 PM CDT) through Saturday, April 20th (2:00 PM CDT), 2024, ni.com will undergo system upgrades that may result in temporary service interruption.

We appreciate your patience as we improve our online experience.

LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

The LabVIEW C Generator does not support some data types...

Why some basic functions in Labview are also not supported by C generator?

How to solve this?Please don't let me modify one by one...

2017-09-15_144353.jpg

0 Kudos
Message 1 of 2
(3,082 Views)

My guess is that most of those functions are hard to translate into fully working C code without the entire LabVIEW runtime engine infrastructure ready to use. And the created C code would be not that helpful if you had to link in the whole precompiled LabVIEW runtime engine anyhow as it would then only work on platforms that LabVIEW is available already.

The C generator was probably never really intended to be a fully fledged separate product but more a tool to enable NI to create platform offerings like the ARM or AD Blackfin Toolkit and since all these Toolkits have been discontinued by now it never received the necessary attention to make it a fully fledged tool that can convert ANY LabVIEW VI into fully operational C++ code.

 

All the new offerings that compile code for embedded targets like the cRIO and other realtime platforms NI sells as well as the Raspi and Beaglebone support in the Lynx 3.0 package are rather based on the LLVM backend for that platform being driven from the DFIR representation that is created from the LabVIEW diagram. No intermediate C code is created and tortured in that process at any time Smiley Very Happy.

 

My understanding about the C generator is that it is best used to translate existing VI code into compilable C++ code with the understanding that you have to massage the resulting code anyhow to make it work for your specific target platform. This operandi modi does not really give me much of an advantage as if I involve C code with LabVIEW it is in fact the opposite way, by creating some C(++) code which is then integrated in LabVIEW through the shared library interface. Recompiling that code for other platforms than what LabVIEW is running on is usually more straightforward than trying to get code generated automatically by some software tool to compile for another platform.

Rolf Kalbermatter
My Blog
Message 2 of 2
(3,053 Views)