<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title></title>
</head>
<body>
<div>To resolve the references inclusion of header files "CPythonAdaptorAPI.h" and "CAdaptorAPI.h" in FECxxAdaptor.cxx
was required, as they declare the missing functions.
<br />
Afterwards, I provided the corresponding procedure interfaces in the Fortran files and finally got through the static
linking stage.
<br />
<br />
Now, when I start the RUN_TESTS project, the Fortran90FullExampleTest fails due to a segmentation fault:
<br />
<br />
1/1 Test #1: Fortran90FullExampleTest .........***Exception: SegFault 8.48 sec
<br />
1>
<br />
1> 0% tests passed, 1 tests failed out of 1
<br />
1>
<br />
1> Label Time Summary:
<br />
1> CATALYST = 8.48 sec (1 test)
<br />
1> PARAVIEW = 8.48 sec (1 test)
<br />
1>
<br />
1> Total Test time (real) = 8.48 sec
<br />
1>
<br />
1> The following tests FAILED:
<br />
1> 1 - Fortran90FullExampleTest (SEGFAULT)
<br />
1> Errors while running CTest
<br />
1>C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V140\Microsoft.CppCommon.targets(133,5): error MSB3073: The
command "setlocal
<br />
1>C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V140\Microsoft.CppCommon.targets(133,5): error MSB3073:
C:\cmake\bin\ctest.exe --force-new-ctest-process -C Debug
<br />
1>C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V140\Microsoft.CppCommon.targets(133,5): error MSB3073: if
%errorlevel% neq 0 goto :cmEnd
<br />
1>C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V140\Microsoft.CppCommon.targets(133,5): error MSB3073: :cmEnd
<br />
1>C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V140\Microsoft.CppCommon.targets(133,5): error MSB3073: endlocal
& call :cmErrorLevel %errorlevel% & goto :cmDone
<br />
1>C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V140\Microsoft.CppCommon.targets(133,5): error MSB3073:
:cmErrorLevel
<br />
1>C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V140\Microsoft.CppCommon.targets(133,5): error MSB3073: exit /b
%1
<br />
1>C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V140\Microsoft.CppCommon.targets(133,5): error MSB3073: :cmDone
<br />
1>C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V140\Microsoft.CppCommon.targets(133,5): error MSB3073: if
%errorlevel% neq 0 goto :VCEnd
<br />
1>C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V140\Microsoft.CppCommon.targets(133,5): error MSB3073: :VCEnd"
exited with code 8.
<br />
<br />
Does anybody know how to solve this?
<br />
<br />
Best,
<br />
Thomas
<br />
<br />
<div>
<div>Am Donnerstag, 10. November 2016 19:10 schrieb thomasblome@startmail.com:
<br />
</div>
<blockquote type="cite">
<div>Hi Andy,
<br />
<br />
The linker error concerning the missing main method was due to a wrong solution setup of the Fortran90FullExample in
VS.
<br />
The CMakeLists file provided generates only one single (C++) project in VS, which means all .f90 files will be ignored
by the compiler (it's impossible to have a single Fortran/C++ mixed language project in VS).
<br />
To solve this I had to configure the CMakeLists file to create a library from FECxxAdaptor.cxx and link it with the
Fortran90FullExample.
<br />
<br />
Other linker & compiler errors occurred with regards to mpi:
<br />
1) the target_link_libraries command in the CMakeLists file links ${MPI_Fortran_LIBRARIES} to the fortran
project,
<br />
but it forgets to link with msmpifec.lib (see also:
http://public.kitware.com/pipermail/cmake/2016-February/062861.html).
<br />
2) The specification of an include directory (containing header mpifptr.h) was missing.
<br />
<br />
Another problem arose when it comes to the the by hand name mangling for fortran in FECxxAdaptor.cxx.
<br />
To get rid of that I introduced function interfaces in the FEFortranAdaptor.f90 file and now it works independently of
the Fortran compiler used.
<br />
<br />
Now, there are only five remaining linker errors as shown below:
<br />
<br />
LNK2019: unresolved external symbol COPROCESS referenced in function TCP_mp_TESTCOPROCESSOR
FEFortranAdaptor.obj
<br />
LNK2019: unresolved external symbol COPROCESSORINITIALIZEWITHPYTHON referenced in function MAIN__
FEDriver.obj
<br />
LNK2019: unresolved external symbol COPROCESSORFINALIZE referenced in function MAIN__
FEDriver.obj
<br />
LNK2019: unresolved external symbol NEEDTOCREATEGRID referenced in function TCP_mp_TESTCOPROCESSOR
FEFortranAdaptor.obj
<br />
LNK2019: unresolved external symbol REQUESTDATADESCRIPTION referenced in function TCP_mp_TESTCOPROCESSOR
FEFortranAdaptor.obj
<br />
<br />
In the ParaViewCatalystUsersGuide_v2 the missing symbols appear to be declared in CAdaptorAPI.h and CPythonAdaptorAPI.h
(but NEEDTOCREATEGRID),
<br />
but I can't just include them in the Fortran code.
<br />
<br />
Can you tell me how to resolve those missing references?
<br />
<br />
Best,
<br />
Thomas
<br />
<br />
<div>
<div>Am Mittwoch, 26. Oktober 2016 18:47 schrieb Andy Bauer <andy.bauer@kitware.com>:
<br />
</div>
<blockquote type="cite">
<div>
<div dir="ltr">
<div>
<div>
<div>Hi Thomas,
<br />
</div>
I really don't know about this. Do you get the same behavior if you don't link with Catalyst? Can you create a simple
helloworld.f90 example that works?
<br />
</div>
Best,</div>
Andy</div>
<div>
<div>On Wed, Oct 26, 2016 at 3:39 AM, <span dir="ltr"><<a href=
"mailto:thomasblome@startmail.com">thomasblome@startmail.com</a>></span> wrote:
<blockquote style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
<div>Hi Andy,
<br />
<br />
I have changed both lines from coproc to main, but the error message remains the same.
<br />
<br />
Best,
<br />
Thomas
<div>
<div>
<div>Am Montag, 24. Oktober 2016 22:00 schrieb Andy Bauer <<a href=
"mailto:andy.bauer@kitware.com">andy.bauer@kitware.com</a>>:
<br />
</div>
<blockquote type="cite">
<div>
<div dir="ltr">
<div>
<div>
<div>
<div>Hi Thomas,
<br />
</div>
If you change from coproc to main in the "program" and "end program" lines in FEDriver.f90 does that fix the problem?
<br />
</div>
I'm working on a fix for this but don't have access to any MSVS compilers.
<br />
</div>
Thanks,</div>
Andy</div>
<div>
<div>On Sat, Oct 22, 2016 at 1:46 PM, <span dir="ltr"><<a href=
"mailto:thomasblome@startmail.com">thomasblome@startmail.com</a>></span> wrote:
<blockquote style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
<div>Hello,
<br />
<br />
I'm trying to compile the Fortran90FullExample using MSVS (Intel Fortran Compiler 2017 and Visual C++ 2015 compiler).
<br />
Doing so I'm getting following linker error:
<br />
<br />
Error LNK2019 unresolved external symbol main referenced in function "int __cdecl
__scrt_common_main_seh(void)" (?__scrt_common_main_seh@@YAHXZ) Fortran90FullExample.
<br />
<br />
Obviously, the source code doesn't contain a main method at all, since the entry point is given by the fortran program
in file 'FEDriver.f90'.
<br />
Nevertheless, I guess the compiler internally creates a main method, and the linker cannot resolve the reference due to
a name mangling problem, as there are different compilers involved. But I'm not quite sure about that, nor how to solve
it, at that matter.
<br />
<br />
Can you give me a hint how to solve that problem?
<br />
<br />
Kind regards,
<br />
Thomas</div>
<br />
_______________________________________________
<br />
Powered by <a target="_blank" href="http://www.kitware.com">www.kitware.com</a>
<br />
<br />
Visit other Kitware open-source projects at <a target="_blank" href=
"http://www.kitware.com/opensource/opensource.html">http://www.kitware.com/opensource/opensource.html</a>
<br />
<br />
Search the list archives at: <a target="_blank" href=
"http://markmail.org/search/?q=Paraview-developers">http://markmail.org/search/?q=Paraview-developers</a>
<br />
<br />
Follow this link to subscribe/unsubscribe:
<br />
<a target="_blank" href=
"http://public.kitware.com/mailman/listinfo/paraview-developers">http://public.kitware.com/mailman/listinfo/paraview-developers</a>
<br />
</blockquote>
</div>
</div>
</div>
</blockquote>
</div>
</div>
</div>
</blockquote>
</div>
</div>
</div>
</blockquote>
</div>
</div>
</blockquote>
</div>
</div>
</body>
</html>