[MSEide-MSEgui-talk] Compilation error with FPC 3.2.0

classic Classic list List threaded Threaded
88 messages Options
12345
Reply | Threaded
Open this post in threaded view
|

[MSEide-MSEgui-talk] Compilation error with FPC 3.2.0

Graeme Geldenhuys
Hi,

I get a compilation error when using FPC 3.2.0:

  No matching implementation of interface found


It works fine when I compile with FPC 3.0.4 though.

=================================
...snip...
mseedit.pas(27,32) Hint: Unit "mseifiglob" not used in mseedit
mseedit.pas(683,19) Hint: Unit "msedataedits" not used in mseedit
Compiling ./lib/common/container/msesumlist.pas
msewidgetgrid.pas(324,34) Hint: Parameter "index" not used
msewidgetgrid.pas(303,32) Hint: Parameter "avalue" not used
msewidgetgrid.pas(310,31) Hint: Parameter "avalue" not used
msewidgetgrid.pas(308,31) Hint: Parameter "avalue" not used
msewidgetgrid.pas(555,2) Hint: Unit "msereal" not used in msewidgetgrid
msegraphedits.pas(126,19) Error: No matching implementation for
interface method "getdefaultifilink:iificlient;" found
msegraphedits.pas(1214,1) Fatal: There were 1 errors compiling module,
stopping
Fatal: Compilation aborted
Error: /data/devel/fpc-3.2.0/x86_64-linux/bin/ppcx64 returned an error
exitcode
[msegui (master)]$
=================================



Regards,
  Graeme

--
fpGUI Toolkit - a cross-platform GUI toolkit using Free Pascal
http://fpgui.sourceforge.net/

My public PGP key:  http://tinyurl.com/graeme-pgp


_______________________________________________
mseide-msegui-talk mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/mseide-msegui-talk
Reply | Threaded
Open this post in threaded view
|

Re: [MSEide-MSEgui-talk] Compilation error with FPC 3.2.0

fredvs
Hello Graeme:

Here result of compilation of last mseide with fpc 3.0.2. on Debian 9.8:

<http://mseide-msegui-talk.13964.n8.nabble.com/file/t2/mseide_fpc302.png>

Free Pascal Compiler version 3.0.2 [2017/02/05] for x86_64
Copyright (c) 1993-2016 by Florian Klaempfl and others
Target OS: Linux for x86-64
Compiling mseide.pas
...
Linking mseide
/usr/bin/ld: warning: link.res contains output sections; did you forget -T?
663118 lines compiled, 70.8 sec

Did you try to remove all *.ppu. *.o and friends before compilation?
Sometimes, with fpc, -B parameter is not enough to clean all.

Fre;D

 



--
Sent from: http://mseide-msegui-talk.13964.n8.nabble.com/


_______________________________________________
mseide-msegui-talk mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/mseide-msegui-talk
Reply | Threaded
Open this post in threaded view
|

Re: [MSEide-MSEgui-talk] Compilation error with FPC 3.2.0

fredvs
>Did you try to remove all *.ppu. *.o and friends before compilation?
> Sometimes, with fpc, -B parameter is not enough to clean all.

It is the reason why I highly prefer to always use the -FUadirectory
parameter.
In that case all the *.ppu and friends are in same directory and easy to
delete.


Fre;D



--
Sent from: http://mseide-msegui-talk.13964.n8.nabble.com/


_______________________________________________
mseide-msegui-talk mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/mseide-msegui-talk
Reply | Threaded
Open this post in threaded view
|

Re: [MSEide-MSEgui-talk] Compilation error with FPC 3.2.0

Graeme Geldenhuys
In reply to this post by fredvs
On 24/04/2019 12:27, fredvs wrote:
> Free Pascal Compiler version 3.0.2 [2017/02/05] for x86_64

You are using FPC 3.0.2, which is why it is working. I said 3.0.2 and
3.0.4 works fine. The compilation error only occurs with FPC 3.2.0 (the
release candidate of the next FPC release). I haven't tried FPC Trunk,
because I consider trunk too unstable, but assume the same issue would
occur.

And yes, my build script ALWAYS clears out old compiled units before I
do a compilation. Years of experience with FPC has taught me any other
way is very unreliable. :-)

My build script:

================[go-linux.sh]=====================
#!/bin/sh

rm units/x86_64-linux/*

/data/devel/fpc-3.2.0/x86_64-linux/bin/fpc \
  -O2 -XX -Xs \
  -Mobjfpc -Sh -Fcutf8 \
  -FUunits/x86_64-linux \
  -Fu${PWD}/lib/common/* \
  -Fu${PWD}/lib/common/kernel/linux \
  -Fi${PWD}/lib/common/kernel \
  -o./mseide \
  apps/ide/mseide.pas
============================================


Regards,
  Graeme

--
fpGUI Toolkit - a cross-platform GUI toolkit using Free Pascal
http://fpgui.sourceforge.net/

My public PGP key:  http://tinyurl.com/graeme-pgp


_______________________________________________
mseide-msegui-talk mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/mseide-msegui-talk
Reply | Threaded
Open this post in threaded view
|

Re: [MSEide-MSEgui-talk] Compilation error with FPC 3.2.0

fredvs

The compilation error only occurs with FPC 3.2.0

This time was one too much.
Now I have cleaned my glazes with very hot water, strong soap, 3 times.

OK, sorry, yes, the same for FPC 3.1.x, Martin did not enable yet compatibility for > 3.0.4.

Hum, do you think it is already time to make msegui compatible for fpc  > 3.0.4?

Fre;D

 


De : Graeme Geldenhuys <[hidden email]>
Envoyé : mercredi 24 avril 2019 13:45
À : [hidden email]
Objet : Re: [MSEide-MSEgui-talk] Compilation error with FPC 3.2.0
 
On 24/04/2019 12:27, fredvs wrote:
> Free Pascal Compiler version 3.0.2 [2017/02/05] for x86_64

You are using FPC 3.0.2, which is why it is working. I said 3.0.2 and
3.0.4 works fine. The compilation error only occurs with FPC 3.2.0 (the
release candidate of the next FPC release). I haven't tried FPC Trunk,
because I consider trunk too unstable, but assume the same issue would
occur.

And yes, my build script ALWAYS clears out old compiled units before I
do a compilation. Years of experience with FPC has taught me any other
way is very unreliable. :-)

My build script:

================[go-linux.sh]=====================
#!/bin/sh

rm units/x86_64-linux/*

/data/devel/fpc-3.2.0/x86_64-linux/bin/fpc \
  -O2 -XX -Xs \
  -Mobjfpc -Sh -Fcutf8 \
  -FUunits/x86_64-linux \
  -Fu${PWD}/lib/common/* \
  -Fu${PWD}/lib/common/kernel/linux \
  -Fi${PWD}/lib/common/kernel \
  -o./mseide \
  apps/ide/mseide.pas
============================================


Regards,
  Graeme

--
fpGUI Toolkit - a cross-platform GUI toolkit using Free Pascal
http://fpgui.sourceforge.net/

My public PGP key:  http://tinyurl.com/graeme-pgp


_______________________________________________
mseide-msegui-talk mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/mseide-msegui-talk


_______________________________________________
mseide-msegui-talk mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/mseide-msegui-talk
Reply | Threaded
Open this post in threaded view
|

Re: [MSEide-MSEgui-talk] Compilation error with FPC 3.2.0

Graeme Geldenhuys
On 24/04/2019 13:28, Fred van Stappen wrote:
> Hum, do you think it is already time to make msegui compatible for fpc  > 3.0.4?


My rule of thumb (for fpGUI and such) is to not bother with FPC Trunk.
But once the FPC team announces a Release Candidate - which will become
the next release soonish - then I start working on making fpGUI
compatible. That why, on release day, fpGUI will work fine.


I thought Martin already worked on FPC 3.2.0 compatibility though. See
the commit history using 'gitk --all'

Commit 48b6c492b0f was a merge of a 'fpc_3_2' branch dated 2018-10-12.
There are some earlier commits too, like f064ac7cd.


The FPC 3.2.0 branch is being maintained and stablised here:

  https://svn.freepascal.org/svn/fpc/branches/fixes_3_2




Regards,
  Graeme

--
fpGUI Toolkit - a cross-platform GUI toolkit using Free Pascal
http://fpgui.sourceforge.net/

My public PGP key:  http://tinyurl.com/graeme-pgp


_______________________________________________
mseide-msegui-talk mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/mseide-msegui-talk
Reply | Threaded
Open this post in threaded view
|

Re: [MSEide-MSEgui-talk] Compilation error with FPC 3.2.0

fredvs
> The FPC 3.2.0 branch is being maintained and stablised here:

Yes, but only source and compiling fpc is not my favorite game.
Anyway, if I find lot of time and lot of courage I will do it and see what
msegui + fpc 3.2.0 say.

Fre;D



--
Sent from: http://mseide-msegui-talk.13964.n8.nabble.com/


_______________________________________________
mseide-msegui-talk mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/mseide-msegui-talk
Reply | Threaded
Open this post in threaded view
|

Re: [MSEide-MSEgui-talk] Compilation error with FPC 3.2.0

Graeme Geldenhuys
On 24/04/2019 14:12, fredvs wrote:
> Yes, but only source and compiling fpc is not my favorite game.

I have been using the same compilation script for the last 7 years and
it hasn't failed me yet. Just one reminder:

  A newer FPC may only be compiled with the latest _released_ FPC
  version.

My directory structure is as follows:

/data/devel/fpc-<ver>/
    +- src
    +- go.sh


Where <ver> is the version of FPC. ie: "fpc-3.0.4" or "fpc-3.2.0"
and "src" is where the source code is checked out or unpacked from a
archive.

I have one ~/.fpc.cfg which uses $fpcversion and $fpctarget instead of
hard-coded version numbers. So this file NEVER needs to change even if I
switch FPC versions.


=================[go.sh]===================
#!/bin/sh

TARGET_VER=3.2.0
TARGET=x86_64-linux
COMPILER=/data/devel/fpc-3.0.4/$TARGET/bin/ppcx64

cd src

make clean
make all FPC=$COMPILER OPT="-Fl/usr/local/lib"
make install INSTALL_PREFIX=/data/devel/fpc-$TARGET_VER/$TARGET
FPC=/data/devel/fpc-$TARGET_VER/src/compiler/ppcx64

===========================================

Due to line wrapping, I've attached the go.sh script found in the
fpc-3.2.0 directory.


So after running go.sh it will build and install fpc into the same
directory structure as shown above. It is totally independent of Linux
package management. I also use the same structure for Linux, FreeBSD and
Windows.

Here is my complete directory layout of the FPC versions I test with:

/data/devel/fpc-2.6.4/
   +-go.sh
   +-src/
   +-x86_64-linux/
   +-x86_64-freebsd/
/data/devel/fpc-3.0.4/
   +-go.sh
   +-src/
   +-x86_64-linux/
   +-x86_64-freebsd/
/data/devel/fpc-3.2.0/
   +-go.sh
   +-src/
   +-x86_64-linux/
   +-x86_64-freebsd/


I deleted the fpc-2.6.2 compiler as I don't recompile 2.6.4 any more.

Regards,
  Graeme

--
fpGUI Toolkit - a cross-platform GUI toolkit using Free Pascal
http://fpgui.sourceforge.net/

My public PGP key:  http://tinyurl.com/graeme-pgp


_______________________________________________
mseide-msegui-talk mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/mseide-msegui-talk

go.sh (386 bytes) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: [MSEide-MSEgui-talk] Compilation error with FPC 3.2.0

fredvs
Hello Graeme.

Thanks for you script, I will try it.
(But, IMHO, I will still need lot of time, courage and patience).

;-)

Fre;D




--
Sent from: http://mseide-msegui-talk.13964.n8.nabble.com/


_______________________________________________
mseide-msegui-talk mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/mseide-msegui-talk
Reply | Threaded
Open this post in threaded view
|

Re: [MSEide-MSEgui-talk] Compilation error with FPC 3.2.0

fredvs
In reply to this post by Graeme Geldenhuys
About fpc 3.x.x...

I see that there is already a fpc 3.3.x!

So, what will append, first (when ?) a official release of fpc 3.1.x, then (when ?) a official release of fpc 3.2.x, then (when ?) a official release of fpc 3.3.x, ....?

 And what are the "must-have" of fpc 3.0.x vs 3.1.x vs 3.2.x vs 3.3.x?

Fre;D


_______________________________________________
mseide-msegui-talk mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/mseide-msegui-talk
Reply | Threaded
Open this post in threaded view
|

Re: [MSEide-MSEgui-talk] Compilation error with FPC 3.2.0

Graeme Geldenhuys
On 24/04/2019 16:08, Fred van Stappen wrote:
> I see that there is already a fpc 3.3.x!

Yes, that is FPC Trunk.



> So, what will append, first (when ?) a official release of fpc 3.1.x,
> then (when ?) a official release of fpc 3.2.x, then (when ?) a
> official release of fpc 3.3.x, ....?

versions numbers are define as follows

  <major>.<minor>.<maintenance>

Look at the <minor> number in the version string. All uneven version
numbers are development/unstable versions of FPC. so 2.7.x, 3.1.x, 3.3.x

All even version numbers are or become release versions of FPC. As soon
as a new stable version (branch) is created, also known as a "release
candidate", then Trunk needs a version change too.

So we had FPC 3.1.x  which will eventually become 3.2.0 release. So a
whole ago they branched the 3.2.0 release candidate, which meant Trunk
had to change too, which in turn become the next uneven number... 3.3.x


> And what are the "must-have" of fpc 3.0.x vs 3.1.x vs 3.2.x vs
> 3.3.x?

Only the even <minor> versions!

  2.4.x
  2.6.x
  3.0.x
  3.2.x
...and in the future (normally every 2 years)....
  3.4.x


FPC already announced the next "release candidate". That means they
forked Trunk and gave it the next stable version number "3.2.0" and are
now in the process on stabilising it and doing bug fixes only. Once they
are happy, it becomes the next official stable release for at least 2 years.

In summary:
  The important FPC releases now are 3.0.4 (our current stable released
  version) and 3.2.0 (our soon to be new stable release version).

  https://www.freepascal.org/faq.html#versions



Regards,
  Graeme

--
fpGUI Toolkit - a cross-platform GUI toolkit using Free Pascal
http://fpgui.sourceforge.net/

My public PGP key:  http://tinyurl.com/graeme-pgp


_______________________________________________
mseide-msegui-talk mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/mseide-msegui-talk
Reply | Threaded
Open this post in threaded view
|

Re: [MSEide-MSEgui-talk] Compilation error with FPC 3.2.0

fredvs
Thanks Graeme for that clear answer!

> I thought Martin already worked on FPC 3.2.0 compatibility though. See
>  commit history using 'gitk --all'

Hum, I fear that those commits are about FPC 3.0.x compatibility:

In mclasses.pas:

{$if FPC_FULLVERSION >= 030100} {$define mse_fpc_3_2} {$endif}

It seems that what is called mse_fpc_3_2 point to fpc 3.0.x.

Anyway, asap I will into fpc compilation (must take a break for this first)
and (try to) make msegui compatible for fpc > 3.0.x.

Fre;D



--
Sent from: http://mseide-msegui-talk.13964.n8.nabble.com/


_______________________________________________
mseide-msegui-talk mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/mseide-msegui-talk
Reply | Threaded
Open this post in threaded view
|

Re: [MSEide-MSEgui-talk] Compilation error with FPC 3.2.0

fredvs
Re-hello Graeme.

Your script is perfect but... it need to install svn to download source of
fpc 3.2.0 (and I do not find the courage).

;-(

(Things would be so much easier with GitHub).

Anyway, thanks to Sternas and his out-of-the-box CodeTyphon, I did install
fpc 3.3.1.
I will see what appends with msegui and fpc > 3.0.x asap.
 
Fre;D



--
Sent from: http://mseide-msegui-talk.13964.n8.nabble.com/


_______________________________________________
mseide-msegui-talk mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/mseide-msegui-talk
Reply | Threaded
Open this post in threaded view
|

Re: [MSEide-MSEgui-talk] Compilation error with FPC 3.2.0

Graeme Geldenhuys
On 24/04/2019 20:00, fredvs wrote:
> Your script is perfect but... it need to install svn to download source of
> fpc 3.2.0 (and I do not find the courage).

Glad the script helped. I sometimes don't bother installing SVN either.
It the case of 3.2.0 I too didn't bother with SVN. I simply downloaded a
tar.gz of the source from somewhere - can't remember where though,
otherwise I would have shared the link.

Umm, maybe it was from SourceForge.net


Regards,
  Graeme


_______________________________________________
mseide-msegui-talk mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/mseide-msegui-talk
Reply | Threaded
Open this post in threaded view
|

Re: [MSEide-MSEgui-talk] Compilation error with FPC 3.2.0

fredvs
In reply to this post by fredvs
Re-hello.

OK, I jumped into fpc 3.3.1 + msegui.

Indeed, same error:

Free Pascal Compiler version 3.3.1 [2019/04/24] for x86_64
Copyright (c) 1993-2018 by Florian Klaempfl and others
msegraphedits.pas(126,19) Error: No matching implementation for interface
method "getdefaultifilink:iificlient;" found
msegraphedits.pas(1214,1) Fatal: There were 1 errors compiling module,
stopping
Fatal: Compilation aborted

Sadly I am not a guru in interface things and I do not see what is wrong
with iificlient interface for fpc > 3.0.x.

;-(

Fre;D



--
Sent from: http://mseide-msegui-talk.13964.n8.nabble.com/


_______________________________________________
mseide-msegui-talk mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/mseide-msegui-talk
Reply | Threaded
Open this post in threaded view
|

Re: [MSEide-MSEgui-talk] Compilation error with FPC 3.2.0

PatG
In reply to this post by fredvs

On 4/24/19 3:00 PM, fredvs wrote:

> Re-hello Graeme.
>
> Your script is perfect but... it need to install svn to download source of
> fpc 3.2.0 (and I do not find the courage).
>
> ;-(
>
> (Things would be so much easier with GitHub).
>
> Anyway, thanks to Sternas and his out-of-the-box CodeTyphon, I did install
> fpc 3.3.1.
> I will see what appends with msegui and fpc > 3.0.x asap.
>  
> Fre;D
>
The source for FPC can be downloaded from the www.freepascal.org site. 
Follow the Download link on the right side of the screen.


_______________________________________________
mseide-msegui-talk mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/mseide-msegui-talk
Reply | Threaded
Open this post in threaded view
|

Re: [MSEide-MSEgui-talk] Compilation error with FPC 3.2.0

Graeme Geldenhuys
In reply to this post by fredvs
On 24/04/2019 21:22, fredvs wrote:
> Sadly I am not a guru in interface things and I do not see what is wrong
> with iificlient interface for fpc > 3.0.x.

No worries. I had a quick look and fixed the issue. Please find attached
patches. I tested with FPC 3.0.4 and FPC 3.2.0.

===============================================
Graeme Geldenhuys (2):
  Fixes compilation errors with FPC 3.2.0
  Trimmed trailing whitespace.

 lib/common/editwidgets/msegraphedits.pas | 251 ++++++++++++-----------
 lib/common/widgets/msedispwidgets.pas    |  45 ++--
 2 files changed, 149 insertions(+), 147 deletions(-)

===============================================

Regards,
  Graeme

--
fpGUI Toolkit - a cross-platform GUI toolkit using Free Pascal
http://fpgui.sourceforge.net/

My public PGP key:  http://tinyurl.com/graeme-pgp


_______________________________________________
mseide-msegui-talk mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/mseide-msegui-talk

0001-Fixes-compilation-errors-with-FPC-3.2.0.patch (1K) Download Attachment
0002-Trimmed-trailing-whitespace.patch (42K) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: [MSEide-MSEgui-talk] Compilation error with FPC 3.2.0

fredvs
> No worries. I had a quick look and fixed the issue.

Graeme, you are too strong.

Wow.

Fre;D



--
Sent from: http://mseide-msegui-talk.13964.n8.nabble.com/


_______________________________________________
mseide-msegui-talk mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/mseide-msegui-talk
Reply | Threaded
Open this post in threaded view
|

Re: [MSEide-MSEgui-talk] Compilation error with FPC 3.2.0

fredvs
In reply to this post by PatG

>The source for FPC can be downloaded from the www.freepascal.org site. 
> Follow the Download link on the right side of the screen.

Thanks Patrick.

But it seems that only source of official release fpc 3.0.4 can be downloaded on that site.

Fre;D


_______________________________________________
mseide-msegui-talk mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/mseide-msegui-talk
Reply | Threaded
Open this post in threaded view
|

Re: [MSEide-MSEgui-talk] Compilation error with FPC 3.2.0

code dz
In reply to this post by Graeme Geldenhuys
2019-04-25 1:05 UTC+02:00, Graeme Geldenhuys <[hidden email]>:

> On 24/04/2019 21:22, fredvs wrote:
>> Sadly I am not a guru in interface things and I do not see what is wrong
>> with iificlient interface for fpc > 3.0.x.
>
> No worries. I had a quick look and fixed the issue. Please find attached
> patches. I tested with FPC 3.0.4 and FPC 3.2.0.
>
> ===============================================
> Graeme Geldenhuys (2):
>   Fixes compilation errors with FPC 3.2.0
>   Trimmed trailing whitespace.
>
>  lib/common/editwidgets/msegraphedits.pas | 251 ++++++++++++-----------
>  lib/common/widgets/msedispwidgets.pas    |  45 ++--
>  2 files changed, 149 insertions(+), 147 deletions(-)
>
> ===============================================
>
> Regards,
>   Graeme
>
> --
> fpGUI Toolkit - a cross-platform GUI toolkit using Free Pascal
> http://fpgui.sourceforge.net/
>
> My public PGP key:  http://tinyurl.com/graeme-pgp
>

Hi Graeme
i remember last month i did just what you did in this patch , it
compiled ok , but other problems raises when you create a gui app
especially when create an event in the objectinspector ,


_______________________________________________
mseide-msegui-talk mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/mseide-msegui-talk
12345