LabWindows/CVI

cancel
Showing results for 
Search instead for 
Did you mean: 

error: Undefined symbol DiscardAsyncTimer in *.obj

Solved!
Go to solution

This picture describes my problem:

CVI_Error.png

As suggested in "Linker error: Undefined symbol CRC referenced in .obj"

1. I have included the file asynctmr.h from CVI2013\toolslib\toolbox

2. You can verify that the *.h contains the function definition.

3. But still, building the project gives the error undefined symbol.

4. I tried browsing my *.prj, and indeed within my functions I do not see DiscardAsyncTimer. Why?

0 Kudos
Message 1 of 4
(4,002 Views)

Adding the function panel  (asynctmr.fp)  to your project  doesn't help ?

Message 2 of 4
(3,973 Views)
Solution
Accepted by mcespedes

There are actually two ways to add an instrument (i.e. a .fp object) to a CVI project:

  1. Load the instrument into Instrument menu (Instrument >> Load... menu function)
  2. Insert the instrument in the Library tree (Library >> Customize... menu function)

Both permit to use instrument functions taking care of compile and link with the only precaution to #include the proper file in the source modules where you are using them (but the IDE will warn you and add the files by itself in the correct place).

In the first case, adding the .fp to the project too shortens CVI load time since some compiling is no more needed for instrument functions.

The second option is preferrable in my opinion for instruments you plan to use extensively in all of your projects since you do no more need to manually add those modules to every new project you start.



Proud to use LW/CVI from 3.1 on.

My contributions to the Developer Community
________________________________________
If I have helped you, why not giving me a kudos?
Message 3 of 4
(3,958 Views)

I tried the 2nd approach and it works to remove the link error. Thanks.

0 Kudos
Message 4 of 4
(3,935 Views)