LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

access to vi in packed library which is not in top level

Hello.
I'm facing the following challenge with LabVIEW 2019 packed libraries:

I am creating a packed library which will be used in TestStand test sequences.
This is my overview of the project structure:

balthasar_0-1691159421771.png

As can be seen, there is 1 .lvlib which will be the top level library, and several other libraries which are included in the project.
One of those included libraries I want to be accessible directly from the packed library.
But when the packed library is created I can only select VI from the top level library and not from any included library:

balthasar_1-1691159883702.png

balthasar_3-1691160215293.png

In the TestStand sequences I want to use VIs from both the top level library and the included library, but it is not selectable from the packed library even though the VIs are inside of it.
The included libraries used to be separate packed libraries, but now they are included from Git submodules.
The goal was to have just 1 packed library to use all functions in this project, instead of multiple packed libraries.

I tried to move the included library in the hierarchy to be a sublibrary of the top level library but that required saving the library which would result in modifying the Git project the library comes from.
I also tried to use the VIs directly from TestStand instead of using the packed library but then TestStand fails to find dependencies correctly.
I considered creating wrappers but that would be a lot of wasted effort, especially that the top level of included library already consists of wrappers.

At his point I have no idea how to make the VIs from included library visible in the packed library so that I can select them in TestStand so I'm asking for advice.
Thanks in advance.

 





0 Kudos
Message 1 of 5
(697 Views)

You can't.

 

What you can do is turn the other library into a PPL, use the ppl version instead of the source version from your new library, and then you can use both with proper linking.

~ The wizard formerly known as DerrickB ~
Gradatim Ferociter
0 Kudos
Message 2 of 5
(646 Views)

Thank you for the answer.
Unfortunately for me this means that I will have to:

  • revert the work done (previously these libraries were packed libraries)
  • keep the packed libraries in git which I wanted to avoid (wanted to keep just source in git)
0 Kudos
Message 3 of 5
(601 Views)

Try using the LabVIEW Solution Builder.  It can build all of the PPLs from a single project and do it in order so that dependent PPLs are build before those who will need them.  It works by replacing the library with the freshly build PPL behind the scenes.  I use it for my main reuse libraries and HAL.  Saves a lot of time and frustration.  The only change you will need to do is add build specifications for the PPLs.


GCentral
There are only two ways to tell somebody thanks: Kudos and Marked Solutions
Unofficial Forum Rules and Guidelines
"Not that we are sufficient in ourselves to claim anything as coming from us, but our sufficiency is from God" - 2 Corinthians 3:5
Message 4 of 5
(583 Views)

I went the other way, I'm using whole library from source, I just had to additionally specify the lvproj to make all dependency work

0 Kudos
Message 5 of 5
(560 Views)