LabWindows/CVI

cancel
Showing results for 
Search instead for 
Did you mean: 

CVI2013 Batch Build

I am trying to perform a batch build (Build-->BatchBuild...) using CVI 2013 for a workspace that contains eight DLLs and one EXE.  When performing the batch build, I get different results depending on which project is set active.  

 

Each of the nine modules build successfully on their own, but may not necessarally build as part of a batch build, depending on the active project.

 

When the .exe project is selected, I get build errors on four of the modules  when performing a batch build.  Of the eight .dll projects, there are three I can potentially select where no errors occur.

 

Note that build order does not change from trial to trial, just the active project.

 

The errors are all "Undefined Symbol" errors.  For example:

error: Undefined symbol '_TSUI_ReportViewGetBorders@12' referenced in "c:\Program Files (x86)\National Instruments\Shared\CVI\instr\TestStand\API\msvc\tsutil.obj".

 

Why does the batch build behavior change depending on the active project?  Is there something I can change to make the build behave independent of the active project?

0 Kudos
Message 1 of 8
(5,288 Views)
I have a few questions:
- Do any of your projects depend on the build output of any other project in the workspace?
- Are you including FPs in some but not all of your projects?
- Are you including link libraries (.lib) files in some but not all of your projects?
Daniel Dorroh
National Instruments
0 Kudos
Message 2 of 8
(5,259 Views)

In response to your questions:

- Do any of your projects depend on the build output of any other project in the workspace? No
- Are you including FPs in some but not all of your projects? Yes
- Are you including link libraries (.lib) files in some but not all of your projects? Yes

0 Kudos
Message 3 of 8
(5,254 Views)

Thanks, pruscha.

 

What version of LabWindows/CVI 2013 are you using? (First release? w/ f1 patch? SP1? SP2?)

 

Can you show an example project tree configuration which reproduces this problem?

Daniel Dorroh
National Instruments
0 Kudos
Message 4 of 8
(5,114 Views)

Regarding the version, I am using Service Pack 1 for CVI 2013.

 

With respect to the project structure, it is as follows:

projstruct.png

When UI_CTE is selected as the active project I am unable to complete the batch build, but if I select ODBC or MTDF as the active project the builds complete without error.

0 Kudos
Message 5 of 8
(5,092 Views)

I found another way of replicating the problem described above without using "Batch Build".

ctews.png

When Limits is set as the active project, I can right-click on Limits and select Build without link errors.

 

When UI_CTE is set as the active project, if I right click on Limits and select Build, I get the following link errors:

linkerr.png
All link errors point to the "tsutil" object. UI_CTE itself builds without error.

 

Please note both UI_CTE (.exe) and Limits (.dll) both use tsutil.fp as an instrument file.

0 Kudos
Message 6 of 8
(4,981 Views)

Hi, pruscha!

 

I reproduced the problem, and I can confirm that this is a defect in the build system. A change was made in LabWindows/CVI 2013 such that users can now build projects that are not set as the active project. This issue appears to be happening because the build system is not handling function panel auto-load lists properly when the project being built is not the active project. 

 

Luckily, there is an easy work around.

 

In your case, you should add the function panel, tsuisupp.fp, to the Limits project, and this build error should go away. tsutil.fp declares tsuisupp.fp as a dependency in its function panel auto-load list, and tsuisupp.fp is not being loaded at build time. This is causing the undefined symbol errors in regard to tsuisupp.

Daniel Dorroh
National Instruments
Message 7 of 8
(4,867 Views)

Hi Daniel,

 

Thanks, that did the trick!  

 

In addition to adding the function panel tsuisupp.fp to Limits and three other errant DLL projects, I needed to add tsui.fp to one of these before I was able to clear all link errors. 

 

Best Regards,

 

-Paul

0 Kudos
Message 8 of 8
(4,855 Views)