LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

lvlib path : change the path of VIs included in a driver lvlib

Solved!
Go to solution

Hi all,

 

I downloaded a LV driver for my OMICRON CMC256+ device on NI's website.

This driver is given as an lvlib. This lvlib has been built to be installed on <instr.lib> folder.

 

For versionning reasons, I do NOT want this driver to be installed on my <instr.lib> folder but to be part of my current dev. So I saved the lvlib and files in one of my project folder.

 

Doing this creates conflits in my project, and driver files are trying to be loaded from <instr.lib>.

 

How do I specify a new path for these VIs / lvlib ?

CLA, CTA, LV Champion
View Cyril Gambini's profile on LinkedIn
This post is made under CC BY 4.0 DEED licensing
0 Kudos
Message 1 of 6
(6,544 Views)

The thing to remember is: You have a project file. Use it.

 

If you need to move something on disk, do it through the project.

If you need to rename something, do it through the project.

 

So that can help prevent future problems. To resolve your current problem, first make sure the library and its files are not in two places -- especially if one of the places is a directory that LV searches by default. Next, make sure none of the files, or the VIs calling them, are read-only. That setting is a gotcha that can have you pulling your hair out. Finally, use the conflict-resolution features built into the project. Most of the time they do a great job.

 

Mike...


Certified Professional Instructor
Certified LabVIEW Architect
LabVIEW Champion

"... after all, He's not a tame lion..."

For help with grief and grieving.
0 Kudos
Message 2 of 6
(6,523 Views)

Hi mike,

 

To move things using the project... these things have to be visible in the project !

<instr.lib> files won't appear in the project unless you use them. If you use them, they will be placed in the dependencies.

How do you move things from the dependencies using the project ?

 

Placing directly the lvlib in one project folder indeed produces a conflict. But trying to resolve it using the conflict-resolution tool doesn't help : each resolved conflict is then replaced in the list few seconds after resolving them.

Or the buttons to resolve the conflict are grayed...

 

 conflictresolution.png

 

None of the interesting files are read-only. My project is auto-populating folders.

CLA, CTA, LV Champion
View Cyril Gambini's profile on LinkedIn
This post is made under CC BY 4.0 DEED licensing
0 Kudos
Message 3 of 6
(6,514 Views)
Solution
Accepted by topic author CyGa

After trying several solutions, if found one which works.

 

The lvlib must be saved in one of the project file. It will geenrate conficts.

Then you'll have to open each VI calling another VI in the library itself.

 

The good idea is to begin with the VI Tree (when it is available) and then continue with the examples.

Opening each of these VIs, for each VI contained you'll be prompted to choose between 2 paths  :the current path of your lvlib and the path where it's expected to be. Choose the correct path and mass compile it (CTRL+SHIFT+Run arrow), save it.

 

OMICRON C256Plus library is 100 VIs big. It contains 1 VI Tree and 5 examples. I let you imagine the number of times I had to redirect the VIs to the good path ! It took # 10 minutes just to redirect everything to the good path !! Smiley Mad

 

lvlib should reference their VIs relatively to its own path ! 

CLA, CTA, LV Champion
View Cyril Gambini's profile on LinkedIn
This post is made under CC BY 4.0 DEED licensing
Message 4 of 6
(6,510 Views)

Actually, lvlibs do reference their VIs relative to their own path.

 

In terms of your original problem, you could have installed a VI into your project from the library where it was located in the inst.lib directory. This makes it visible in the project with no conflicts because there is only one copy of the VIs on disk. This also makes the lvlib visible in the project "Files" view, from whence you can move the library and its VIs to where you want them. Do not copy them, MOVE them. Never have more than one copy of a VI on your computer at a time.

 

You can also reference the moved files in the project directly or leave them in dependencies.

 

Mike..


Certified Professional Instructor
Certified LabVIEW Architect
LabVIEW Champion

"... after all, He's not a tame lion..."

For help with grief and grieving.
0 Kudos
Message 5 of 6
(6,503 Views)

Hi Mike,

 

I would really be very interested to see all these steps in pictures...

Try with the OMICRON C256Plus for LV2012.

CLA, CTA, LV Champion
View Cyril Gambini's profile on LinkedIn
This post is made under CC BY 4.0 DEED licensing
0 Kudos
Message 6 of 6
(6,497 Views)