Sometimes VIPM reports an error during the package building step. Issues that may cause package building to fail and possible solutions are listed below:
- One or more of your source files are missing dependencies. In other words, a VI is calling another VI which is missing. This can happen if your code depends on an add-on toolkit that is not installed with LabVIEW.
- You have LabVIEW files in your source with duplicate names. All your source filenames should be unique. To work around this issue, you can place VIs in libraries (*.LVLIB files) which provide name-spacing. Having VIs in separate classes also resolves this issue, since classes provide the same name-spacing as *.LVLIBs.
- You cannot have some of your source files located beneath LabVIEW. In other words, you cannot build your package, if the source is located beneath LabVIEW. VIPM supports Symbolic Paths so you don’t need to locate your source beneath LabVIEW. When VIPM builds your package it replaces your absolute references to the LabVIEW installation location with symbolic paths. This allows your package to be installed under any LabVIEW version installed in any location under Windows.
- You cannot have some of your source files cross-linking to locations outside your source folder. For example, you have a VI named test.vi in your source and you are also calling test.vi inside of LabVIEW. This typically happens when you build your package and then install it. Now, when you try to open the source VIs, LabVIEW links to the version which is installed, not your source. - you should try uninstalling your package from LabVIEW before building a new one.
If you need to keep the package installed while you develop your source code, then you should consider adding a prefix to your VIs during build. This can be done automatically by VI Package Builder in the 'Source Files Settings' page. Note, that the installed package VIs must be the renamed version.
- You cannot have VIs open (in memory) while you perform the build.
- Do not include images, text files or other non labview files inside of LVLIBs or Classes. There have been reported issues with this.
- If you have several VIs in separate folders and you are trying to build a single package that includes all of those VIs, then you must select the common folder path as your source folder. For example, if you have 'c:\source\component1' and 'c:\source\component2'. Then your source folder must be: 'c:\source'
- If you are getting Error Code 43 (see image). The problem is that you have a library (lvlib) that has missing VIs inside it. Open the project and navigate to your lvlib project items. Look for instances of VIs that are missing on disk but are still referenced in the lvlib. If you remove these VIs from your library then the package building will complete correctly.
If you are trying to build packages of a class inheritance then there are special considerations:
- When building a package of a child class separate from the parent class (one package for each class) - the child class VIs (in your source) must call the installed parent package not the parent class in the source.
- If you have several classes in separate folders and want to build a single package of all classes, then you must select the common folder path as your source folder. For example, if you have 'c:\source\class1' and 'c:\source\class2'. Then your source folder must be: 'c:\source'
- Uninstall all other packages in the the LabVIEW version you are trying to install under. This will provide a clean slate to test your new package.