Silverfrost Forums

Welcome to our forums

GET_DEFAULT_WINDOW@ missing

12 Aug 2016 10:10 #17872

Hi,

a customer just got his FTN95 v8.05 (upgrade from 2.54) and has run into troubles when trying the 64-bit FTN95. He is getting unresolved externals when linking. For example GET_DEFAULT_WINDOW@ and DRAW_LINE@ were missing. I suggested to replace the latter by DRAW_LINE_BETWEEN@ but GET_DEFAULT_WINDOW@ still is missing. I guess this is not available with FTN95/Clearnwin+ 64-bit, right? Any idea what to do? Thank you

Kind regards

Joerg Kuthe QT software

12 Aug 2016 11:41 #17873

This may be in clearwin.ins and is shown to be:

C_EXTERNAL GET_DEFAULT_WINDOW@ 'get_default_window':INTEGER*4

Try Include <clearwin.ins> in the required subprogram or enter the single line above or insert: USE CLRWIN as appropriate.

I'm sure Paul will know the answer.

Ian

12 Aug 2016 12:32 #17874

DRAW_LINE@ is available via INCLUDE <dbos.ins>.

GET_DEFAULT_WINDOW@ should be available via INCLUDE <clearwin.ins> but the associated get_default_window is not currently exported by clearwin64.dll.

This bug is easy to fix and I could upload a new set of DLLs but they may not work with the current release of FTN95 etc..

13 Aug 2016 9:42 #17875

Thanks for your answers. I had already tried that. So here is my test program (just to see what the linker is saying):

program tst
   WINAPP
   USE CLRWIN
   IMPLICIT NONE
   INCLUDE <DBOS.INS>
   !x INCLUDE <clearwin.INS>
   INTEGER iH
   ! print*, 'hallo'
   iH =  GET_DEFAULT_WINDOW@()
   CALL DRAW_LINE@(0,0,150,100, 11)
   CALL DRAW_LINE_BETWEEN@(0,0,150,100, 11)
end program

And this is what I find in the output window:

Compiling file: tst2.f95 E:\Temp\FTN95\tst2.F95(7) : warning 242 - Variable IH has been given a value but never used Compilation completed with no errors. Linking... Creating executable file E:\Temp\FTN95\Debug\x64\tst.exe The following symbols were not defined: __win_draw_line get_default_window Linking completed.

Any ideas for workarounds?

Joerg

13 Aug 2016 10:05 #17876

Joerg

Yes you are right draw_line@ requires __win_draw_line and this is also missing from the export table.

For the moment draw_line_between@ must be used.

In the sample code, get_default_window@ does not do anything. Try commenting it out or post a sample where iH is used so that I can see what it does.

Please login to reply.