Error: LNK2019: unresolved external symbol

Error: LNK2019: unresolved external symbol

Hi all,

I have to apologize for being a complete beginner in Fortran. I just started doing some programming and tried to use the Array Visualizer. When I run one to the sample projects, everything works well, so the software must be correctly installed. However, if I set up my own project and program, I get the following error message when calling any of the AV function:

Error: LNK2019: unresolved external symbol _AVSTARTWATCH referenced in function _MAIN__

For some time I thought that I was just making a programming mistake. However, even when I create my own project from sratch and simply copy and paste the code of one of Intels sample programs into a blank file within my own project, I still get the same error messages. Could somebody please let me know what I am doing wrong?

Thanks a lot!
Felix

5 posts / 0 new
Last post
For more complete information about compiler optimizations, see our Optimization Notice.

I havent worked with AV yet, but do you have to include some modules or libs for that? Maybe you forgot this in your project.

Markus

Markus,

Thanks for your response. It is very likely that I have to include some libs for it. I followed the Intel instructions and included the /include and /lib paths. It says I will also have to link with the AvFRT.lib and with ole32.lib... I am not sure what that means I thought that writing

use AvFRT woudl do the trick. Could you tell me how I can "link" my project to these libs?

Thanks!
Felix

Never Mind. I found the solution. You have to add

/SUBSYSTEM:CONSOLE AvFRTd.lib ole32.lib oleaut32.lib

under Additional Options in the project properties. To get there:

under Properties(of current project - get there with right click on project name) --> Linker --> Command Line

It's not clear to me why this line couldn't be included in all new fortran projects... would have saved me a lot of trouble.

Felix

Hallo Felix,

if you start a new project as a "console" application then your subsytem is automatically set to Console. Another way of setting the AV options is to go to
Properties -> Linker -> System -> Subsystem and set it to "Console"
and
Properties -> Linker -> Input -> Additional Dependencies where you can input the libraries
AvFRTd.lib ole32.lib oleaut32.lib (for the debug version)
or
AvFRT.lib ole32.lib oleaut32.lib (for your release version)

Hope this helps

Vasilis

Login to leave a comment.