soccer jersey forums.silverfrost.com :: View topic - iFort linker called from Plato always includes ClearWin64
forums.silverfrost.com Forum Index forums.silverfrost.com
Welcome to the Silverfrost forums
 
 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

iFort linker called from Plato always includes ClearWin64

 
Post new topic   Reply to topic    forums.silverfrost.com Forum Index -> Plato
View previous topic :: View next topic  
Author Message
jlb



Joined: 21 Oct 2020
Posts: 67

PostPosted: Fri May 31, 2024 11:16 am    Post subject: iFort linker called from Plato always includes ClearWin64 Reply with quote

When building a project containing only the following source file with the x64 Intel compiler called using Plato, the ClearWin64.lib library is always linked. Can this be avoided?
Code:
PROGRAM console
  WRITE(*,*)'Hello World'
END PROGRAM console

This has the unwanted effect of requiring the executable to be shipped with the corresponding DLL.
Back to top
View user's profile Send private message
mecej4



Joined: 31 Oct 2006
Posts: 1897

PostPosted: Fri May 31, 2024 4:04 pm    Post subject: Reply with quote

The distribution of runtime library routines is different between 32- and 64-bit versions of Silverfrost Fortran. For your test program, the 64-bit versions of routines WSF1@@, CH@WSF and WSF2@ are in CLEARWIN64.dll. The corresponding 32-bit versions are in SALFLIBC.DLL

Type
Code:
ftn95 /help

and search for "64 bit" to see the details.
Back to top
View user's profile Send private message
jlb



Joined: 21 Oct 2020
Posts: 67

PostPosted: Fri May 31, 2024 4:27 pm    Post subject: Reply with quote

mecej4

Thanks for that clarification. I understand this when I use the FTN95 compiler (32 and 64 bit), but not when I use the Intel iFort 64 bit compiler that is called from a Plato project.
Back to top
View user's profile Send private message
PaulLaidler
Site Admin


Joined: 21 Feb 2005
Posts: 8018
Location: Salford, UK

PostPosted: Fri May 31, 2024 6:39 pm    Post subject: Reply with quote

jlb

Plato does include a reference to clearwin64.dll when compiling and linking using iFort and the reference is only needed for programs that use the ClearWin+ library.

The assumption is that programs that don't use ClearWin+ will use the iFort IDE or the command line in order to create release versions.
Back to top
View user's profile Send private message AIM Address
PaulLaidler
Site Admin


Joined: 21 Feb 2005
Posts: 8018
Location: Salford, UK

PostPosted: Fri May 31, 2024 7:03 pm    Post subject: Reply with quote

jlb

You could look at the file called BuildLog created by Plato when building an executable or DLL.

You could modify this to remove the reference to clearwin64.lib and make it into a batch file. You could run this batch file from a command line or create a macro in Plato in order to attach an accelerator key and run it that way.
Back to top
View user's profile Send private message AIM Address
jlb



Joined: 21 Oct 2020
Posts: 67

PostPosted: Sat Jun 01, 2024 4:57 pm    Post subject: Reply with quote

Paul

Thank you for the detailed explanations. I had lost sight of the fact that the main purpose of using iFort and gfortran under Plato is to use Clearwin+. A short note in the help file about this assumption, which implies linking with the Clearwin64 library, might be useful for beginners like me.
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic    forums.silverfrost.com Forum Index -> Plato All times are GMT + 1 Hour
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © 2001, 2005 phpBB Group