LabWindows/CVI

cancel
Showing results for 
Search instead for 
Did you mean: 

Activate selective compîle with Build command

Hello,

 

I'm migrating a project from CVI 8.1 to 2013 and build process is very long because all files and instruments are recompile, even if not modified.

As I've a big component stabilized, not changin now, I loose lots of time.

With version 8.1, excepted on Rebuild All command, only modified files were recompiled.


How can I reach back this operation mode?

0 Kudos
Message 1 of 14
(5,101 Views)

Hello R1M!

 

From what I've understood by reading your post, you are reporting the fact that CVI is rebuilding your entire application from a Build operation, even if those files have not been modified. Is that correct?

 

If so, I'm suspect that the cause of the project rebuild may be triggered by the Version Info build setting. Does your project have the version information auto-increment flag turned on? The flag is set by adding a "+" to the Numeric Information fields from the Build » Target Settings » Version Info dialog. If so, when building a Release configuration, CVI 2013 performs a rebuild of the entire project. This is closely linked to a recent bugfix (#429548) found in CVI 2013 f1 Patch.

 

I would also like you to provide more information about your project build settings:

  • What kind of specific build settings did you change from the default settings in CVI 8.1 and applied on the project that you have now imported to CVI 2013?
  • For which build configurations (Debug or Release) does the rebuild action occur?
0 Kudos
Message 2 of 14
(5,088 Views)

You understood right the request.

 

Version information are 1.0.0.0 without + sign 😞 and I build in debug version, not yet release.

 

I just opened the 8.1 project in 2013 environment.

0 Kudos
Message 3 of 14
(5,083 Views)

Hello again R1M!

 

One anomaly that could have happened on your machine, could be related to your date/time setting of your machine. For instance, if the modified date of your project files (e.g. instruments, source files, header files) is later than your system date, you can run into the situation, where the CVI build determines that your sources always need to be rebuilt, because your files are always newer. This can especially happen when creating your projects on virtual machines, copying them over to other VMs that aren't in time sync.

 

For instance if you modify a file in CVI 2013 from your imported project, after building the project a second time, that file might not get rebuilt again, since the modification date of that file is synced with your system time.

 

Was this information of any help?

 

If this explanation doesn't apply to your case, it would be very useful if you could indicate some build settings that you changed from the default settings in CVI 8.1, so that we can determine the cause of this symptom.

0 Kudos
Message 4 of 14
(5,067 Views)

Sources are modified on the compiling and executing machine. No issue with times.

 

For options, I can't list the options I looked in and may be changed during discovering tests.
 😞

0 Kudos
Message 5 of 14
(5,041 Views)

So if the 2 options above do not apply to your case, I would like to request from you that you upload your project containing some files (a small amount of files) that you can still reproduce the issue, over to our incoming FTP website: ftp://ftp.ni.com/incoming/

We also need to know the exact CVI 2013 version you are using (either 2013 or f1 Patch?). If there are also additional steps we need to follow in order to reproduce the symptom (other than opening the 8.1 project in CVI 2013 and doing 2 builds), please mention them.

 

I need this information so that I can reliably try to reproduce the scenario, to determine if this is a bug and provide you with a workaround.

 

Thank you, and best regards!

0 Kudos
Message 6 of 14
(5,034 Views)

I'm in touch with French NI support and they look at the issue, for this "all rebuild" point and also for an other application one.

I'll upload to your link the project "MARC TEST.zip" and you will see if you are able to see something. Please modify in the first #define BOARD_TO_BE_USED to DEMO_BOARD and you may have to install drivers to get the application go to operations.

0 Kudos
Message 7 of 14
(5,025 Views)

Hello R1M,

 

  1. I tried reproducing the problem, but didn't see the symptom at all. In your original post, you mentioned that you were using a CVI 8.1 project. However, the project you provided in the zip archive is a CVI 2013 project. Were you maybe trying to perform modifications on the project using CVI 2013? I would like to request the CVI 8.1 version of your project, so that I can more reliably perform this verification on our side.
  2. Another possible explanation for your problem could be related to network drive time stamps, as this was the case for other issues in the past. Are you storing and accessing your project from a network location, or is the project located locally on your machine?
  3. Although I asked you to confirm that about the fact that CVI is rebuilding the project you imported into CVI 2013 when you are doing a build, I would also want you to confirm that this is happening on EACH build operation, not just on the first one. I'm asking this because it is expected that CVI 2013 would rebuild the project on the first time, because of changes in debug information between the two compiler versions.

 

Thank you!

0 Kudos
Message 8 of 14
(4,931 Views)
Item1: Of course, I've been working for months on this test program toi validate migration from XPe to WE7 and kept only the current CVI2013 projet for daily use. I'll look for the original 8.1 projet and try again to open it with 2013 environment. Anyway, I'ml still looking for the option to compile only necessary stuff! Item2: files are strored locally on the machine, all timestamps are the same, I assume. As not modified files are also compiles, it's not a quesion of saving the files. Item3: Yest at any time, all the work is done. I can make Ctrl+M to compile 1 file, checking C rules, and then a Build, all are recopmiled. I can launch theapplication in debug mode (with green arrow), even if just built application, all files are rebuilt. I I want to immediatly launch again the application with the arrow, it is built once more! It is very difficult to trust CVI2013 and work on a real appplication in such conditions!
0 Kudos
Message 9 of 14
(4,922 Views)

Hello R1M!

 

Having the original 8.1 version could be helpful for us, but if you claim you can reproduce the problem with the exact copy of the CVI 2013 project you sent us, then this could be enough.

 

  1. You mentioned "checking C rules" when you compile your project files. Are you referring to any custom build steps (located at Build » Build Steps...) that your project is performing when a build occurs? If any custom build steps are chaning any source or binary dependencies, this could cause the build system to recompile other files as well.
  2. Have you tried deleting the project build configuration directory corresponding to the build configuration (e.g. 32-bit Debug) in which you claim you are seing this rebuild? For instance, does CVI still rebuild all files after you remove the cvibuild.<project-name> directory from disk? What happens after you do a clean (Build » Clean)?
  3. Does the problem still occur after you update CVI with the latest f1 patch?
  4. Could you share with us the CVI log that CVI outputs when you are seing this behaviour (e.g. when you import the project in CVI 2013 and when the re-build is incorrectly triggered by CVI)? In order to enable CVI logging you can open the Configure LabWindows/CVI Logging utility found at C:\Program Files\National Instruments\CVI2013\bin. Please enable Build, Fatal, Error, Warning, Temp, Info and Trace message types and log the output into a text file. Then you can send this file to our incoming FTP server, so that I can examine the logging output.

Thank you!

0 Kudos
Message 10 of 14
(4,904 Views)