- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Dear all,
I am compiling my code where I used some external libraries. I have some function calls from this external library.
call my_external_library_function(arg1,arg2,arg3,arg4)
At this line I get the following error:
Error 4 error #6285: There is no matching specific subroutine for this generic subroutine call.
How can I fix this error?
Thank you very much for your help,
Link Copied
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Do you have a module, include file or INTERFACE block that declares my_external_library_function as a generic interface? I will comment that snippets and paraphrases of code, accompanied by incomplete error message text, makes it difficult to help you.
The message in general says that you have referenced a generic procedure but that the arguments you supplied don't match the signature of any declared specific item in that generic declaration.
If you'd like more help, please show a small but complete source that demonstrates the problem. If you're unable to do that, then show the actual source line, the actual and complete text of the error message (including source file name, line number, and offending identifier, the declarations of all actual arguments in the call and the declaration of the generic interface along with the interfaces of all of the specific names listed for the generic.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi Steve,
Thanks for your reply. The problem was solved by fixing an inconsistency I had in the number of arguments in
call my_external_library_function(arg1,arg2,arg3,arg4).
After fixing this, now I get another error at the linking step. I would need to build Release or Debug version x64. How can I fix the below error? I have attached the screenshot from the error,
Thank you in Advance,
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
You have a mixed C++/Fortran application and have different settings between the two languages for the run-time library type. Make sure they agree. One of the projects is using the non-debug DLL libraries and the other the debug static libraries. Fix the inconsistency - using the DLL libraries is preferable.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Dear Steve,
I have a pure FORTRAN program and the external libraries I am using are FORTRAN as well. What could be causing my error and how which settings could fix this?
Please let me know if you need any more info.
Thanks in Advance,
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
The setting is Fortran > Libraries > Use Run-Time Library. Both your executable and static library project need to have the same setting here.
An alternative, which I generally prefer, is to set the property Fortran > Libraries > Disable OBJCOMMENT directives... to Yes in the static library project only. This will then rely on the executable project to pull in the correct libraries.
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page