Well, I think that I finally got the GTK-Fortran libraries to compile using ifort, thanks to your script and your tip about using / instead of -.
It compiles the .f90 files and generates .mod and .obj files (instead of .o files). I tried correcting all instances of *.o to *.obj within the script, but it still fails to compile any of the examples.
Compiling the examples…
bazaar
Intel(R) Visual Fortran Intel(R) 64 Compiler for applications running on Intel(R) 64, Version 19.1.1.216 Build 20200306
Copyright (C) 1985-2020 Intel Corporation. All rights reserved.
link: unknown option – s
Try ‘link --help’ for more information.
But I don’t see a ‘–s’ anywhere in the script, so I’m not sure what that’s about.
After this success, I pulled the files and the compiled libraries into my actual project in VS and it was able to successfully compile there as well. So now I just have to troubleshoot my actual code to be compatible with the Intel Fortran Compiler, which I could certainly use help with, but I feel like I have already asked for too much help here as is, so feel free to ignore the following troubleshooting.
On the lines that follow the format
use gtk, only: gtk_events_pending, gtk_main, …etc
I get errors of the format
error #6580: Name in only-list does not exist or is not accessible. [GTK_EVENTS_PENDING]
but only on some of them, seemingly randomly.
If I comment out all of the ‘, only:’ portions, then these errors go away.
I then run into errors on the function from JuliaSets:
recursive subroutine pending_events ()
do while(IAND(gtk_events_pending(), run_status) /= FALSE)
boolresult = gtk_main_iteration_do(FALSE) ! False for non-blocking
end do
end subroutine pending_events
Giving:
error #6404: This name does not have a type, and must have an explicit type. [IAND]
error #6404: This name does not have a type, and must have an explicit type. [GTK_EVENTS_PENDING]
error #6363: The intrinsic data types of the arguments must be the same. [IAND]
error #6404: This name does not have a type, and must have an explicit type. [GTK_MAIN_ITERATION_DO]
Next, in my main program code, at the top on the line
use handlers
It gives me the error:
error #7002: Error in opening the compiled module file. Check INCLUDE paths. [HANDLERS]
Which I don’t understand because it’s declared in the same file, just like in the examples included with the GTK-Fortran library.
And then a bunch of errors not liking the ‘c_ptr’ declaration:
error #6457: This derived type name has not been declared. [C_PTR]
So, still a long way to go I imagine, but I’d call this major progress! Thank you so much for you help so far!