12-08-2017
10:00 AM
- last edited on
12-17-2024
06:26 PM
by
Content Cleaner
Hello
I am trying to create a .out shared library in C++ for use with the Labview 2015 Model Interface Toolkit
on a cRIO-9024 running Vxworks.
I am using the gnu toolchain provided here http://ftp.ni.com/pub/devzone/tut/updated_vxworks63gccdist.zip in a Windows XP environment and compiling against the 2015 NIVeristand Model Framework.
The shared library is intended to read a set of parameters from a text file before executing its update step.
I can successfully create and run the library without the file reading component, however when I attempt to use the functions in fstream (specifically the ifstream object) the library builds and links apparently without errors but on deployment to the cRIO gives the error:
Model Interface Toolkit : Failed to load file model
My suspicion is that I am not linking against the correct libraries although attempting to link against libstdc++.a (which I believe is needed for fstream) makes no difference. I would like to ask
1. Does anyone have experience of a similar issue? Is it necessary to explicitly link against libstdc++.a?
2. Is there a way of obtaining more detail on the error than the 'Failed to load...' messsage?
3. Is there a particular version of the Vxworks kernel required to use the file reading functionality?
I have attached the makefile I am using .
Many thanks.
Nathan
12-13-2017
03:09 AM
- last edited on
12-17-2024
06:30 PM
by
Content Cleaner
1) I've not seen this issue previously. There is some information about compiling models using the NI Veristand Model Framework here: https://www.ni.com/docs/en-US/bundle/labview-model-interface-toolkit-api-ref/page/vsmithelp/mit_shar...
There is also a list of known issues here: https://www.ni.com/en/support/documentation/bugs/15/ni-veristand-2015-known-issues.html
2) The only information about the message fail to load with model interface toolkit I can find is here: http://ae.natinst.com/public.nsf/webPreview/AB7C4E0338DB20E586257EB400720708?OpenDocument
3) As far as I know a .out should work on Vxworks, there is information on compatability here: http://zone.ni.com/reference/en-XX/help/372846G-01/veristand/model_support/
01-16-2018 08:33 AM
Thanks for your reply. My suspicion is that the issue might be with the VxWorks Kernel configuration. In order to use the iostream class (which is needed for fstream) , the VxWorks Kernel configuration needs to include this functionality . I have not managed to figure out which configuration is installed by Labview .