Intel® Fortran Compiler
Build applications that can scale for the future with optimized code designed for Intel® Xeon® and compatible processors.
Announcements
Intel Customer Support will be observing the Martin Luther King holiday on Monday, Jan. 17, and will return on Tues. Jan. 18.
For the latest information on Intel’s response to the Log4j/Log4Shell vulnerability, please see Intel-SA-00646
26851 Discussions

Detailed Fortran Compiler output listing of externals wanted...

TonyRichards
Novice
184 Views

I am having trouble with building a converted DVF project.

The problem is an external reference not being found.

When I click on the main program file in Solution explorer and select 'Compile' from the options, the only out put I see is a very short listing:

1>------ Build started: Project: MULTILAYER, Configuration: Debug Win32 ------
1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Microsoft\VC\v160\Microsoft.CppCommon.targets(238,5): warning MSB8018: No outputs specified for item "MULTILAYER.f90". Its custom build command will be skipped.
1>Done building project "MULTILAYER.vcxproj".
========== Build: 1 succeeded, 0 failed, 0 up-to-date, 0 skipped ==========

So all I know is that there are no apparent Fortran programming errors. Big deal!

What I want is the output for the linker which should list the entry points within the program or subprogram that is being compiled, so that they can be properly found by the linker either in a generated list of links within the program and its sub-programs, or within a list of compiled libraries that must be searched.

 

How can I get this? which option is available?

thanks in advanced

0 Kudos
2 Replies
Steve_Lionel
Black Belt Retired Employee
168 Views

You have two options. The first is to ask the compiler for a listing file - this will include a cross reference of all symbols used in the source. But that's a per-source-file option. The second is to ask the linker for a link map. By default it will list all of the global symbols and where they came from. In addition, you can use the "Show Progress" linker option to show, for each object file processed, which external references it contained and which libraries were searched.

mecej4
Black Belt
157 Views

I suspect that the failure to even attempt compiling one source file (MULTILAYER.f90), possibly because of an error in the project build rules, is causing the "missing external" error at link time.

A cross-reference listing may well show the external symbol defined in the source file that I just named, but you may have to look elsewhere to ascertain the reasons for its not getting compiled.

Reply