Results 1 to 7 of 7

Thread: Porting Simba to Lazarus 1.6.4, FPC 3.0.2 (Windows)

  1. #1
    Join Date
    Dec 2006
    Location
    Banville
    Posts
    3,914
    Mentioned
    12 Post(s)
    Quoted
    98 Post(s)

    Default Porting Simba to Lazarus 1.6.4, FPC 3.0.2 (Windows)

    EDIT: Same error on the corresponding Linux release, what I was testing with was 1.6.2. On Windows I receive the following:

    Code:
    Hint: (11030) Start of reading config file C:\Lazarus\fpc\3.0.2\bin\x86_64-win64\fpc.cfg
    Hint: (11031) End of reading config file C:\Lazarus\fpc\3.0.2\bin\x86_64-win64\fpc.cfg
    Free Pascal Compiler version 3.0.2 [2017/02/27] for x86_64
    Copyright (c) 1993-2017 by Florian Klaempfl and others
    (1002) Target OS: Win64 for x64
    (3104) Compiling Simba.lpr
    (3104) Compiling C:\Users\R0b0t1\Documents\Projects\Simba\Units\MMLAddon\mmlpsthread.pas
    C:\Users\R0b0t1\Documents\Projects\Simba\Units\MMLAddon\mmlpsthread.pas(63,4) Warning: (2024) User defined: REMOVEME
    (3104) Compiling C:\Users\R0b0t1\Documents\Projects\Simba\Units\MMLAddon\LPInc\Classes\lpClasses.pas
    (3104) Compiling C:\Users\R0b0t1\Documents\Projects\Simba\Units\MMLAddon\LPInc\Classes\miniLCL\lplclcomctrls.pas
    C:\Users\R0b0t1\Documents\Projects\Simba\Units\MMLAddon\LPInc\Classes\miniLCL\lplclcomctrls.pas(720,95) Warning: (5066) Symbol "TabIndexAtClientPos" is deprecated: "Will be deleted in next major Lazarus release, use IndexOfPageAt"
    C:\Users\R0b0t1\Documents\Projects\Simba\Units\MMLAddon\LPInc\Classes\miniLCL\lplclcomctrls.pas(780,55) Error: (5038) identifier idents no member "IndexOfTabAt"
    C:\Users\R0b0t1\Documents\Projects\Simba\Units\MMLAddon\LPInc\Classes\miniLCL\lplclcomctrls.pas(888,55) Warning: (5043) Symbol "IsUnpaged" is deprecated
    lplclcomctrls.pas(1365) Fatal: (10026) There were 1 errors compiling module, stopping
    Fatal: (1018) Compilation aborted
    Error: C:\Lazarus\fpc\3.0.2\bin\x86_64-win64\ppcx64.exe returned an error exitcode
    Why is there what appears to be code from the LCL duplicated in MML? Can it be removed or does it need to be fixed?
    Last edited by R0b0t1; 05-16-2017 at 09:05 PM.
    The jealous temper of mankind, ever more disposed to censure than
    to praise the work of others, has constantly made the pursuit of new
    methods and systems no less perilous than the search after unknown
    lands and seas.

  2. #2
    Join Date
    Dec 2006
    Location
    Banville
    Posts
    3,914
    Mentioned
    12 Post(s)
    Quoted
    98 Post(s)

    Default

    I've since learned this is part of the LAPE bindings, however I'm still not sure what to replace the missing member with.
    The jealous temper of mankind, ever more disposed to censure than
    to praise the work of others, has constantly made the pursuit of new
    methods and systems no less perilous than the search after unknown
    lands and seas.

  3. #3
    Join Date
    Dec 2006
    Location
    Sydney, New South Wales, Australia
    Posts
    4,603
    Mentioned
    15 Post(s)
    Quoted
    42 Post(s)

    Default

    Get the same thing on Arch, using the latest version of Lazarus + FPC:

    Code:
    ..Simba/Units/MMLAddon/LPInc/Classes/miniLCL/lplclcomctrls.pas(780,55) Error: (5038) identifier idents no member "IndexOfTabAt"
    You may contact me with any concerns you have.
    Are you a victim of harassment? Please notify me or any other staff member.

    | SRL Community Rules | SRL Live Help & Chat | Setting up Simba | F.A.Q's |

  4. #4
    Join Date
    Dec 2006
    Location
    Banville
    Posts
    3,914
    Mentioned
    12 Post(s)
    Quoted
    98 Post(s)

    Default

    Quote Originally Posted by Daniel View Post
    Get the same thing on Arch, using the latest version of Lazarus + FPC:

    Code:
    ..Simba/Units/MMLAddon/LPInc/Classes/miniLCL/lplclcomctrls.pas(780,55) Error: (5038) identifier idents no member "IndexOfTabAt"
    This seems to be something changed in Lazarus 1.6.4 (and FPC 3.0.2, but the LCL is part of Lazarus; the previous release was 1.6.2/3.0.0). Deleting the function containing the error and the LAPE binding is sufficient to get Simba to compile, but a proper fix involves making sure the functionality isn't under some other name.

    There are deprecation warnings that should be addressed as well referencing changes in the next release. Going forward all of the warnings should probably be gone over again if not removed.
    The jealous temper of mankind, ever more disposed to censure than
    to praise the work of others, has constantly made the pursuit of new
    methods and systems no less perilous than the search after unknown
    lands and seas.

  5. #5
    Join Date
    Dec 2010
    Posts
    483
    Mentioned
    30 Post(s)
    Quoted
    328 Post(s)

    Default

    Not sure of the difference, but I have seen FPC 3.0 code use TPageControl's IndexOfTabAt without issue. Is it really necessary to use a TCustomTabControl?

  6. #6
    Join Date
    Dec 2006
    Location
    Banville
    Posts
    3,914
    Mentioned
    12 Post(s)
    Quoted
    98 Post(s)

    Default

    Quote Originally Posted by the bank View Post
    Not sure of the difference, but I have seen FPC 3.0 code use TPageControl's IndexOfTabAt without issue. Is it really necessary to use a TCustomTabControl?
    I have no idea. It looks to me like the function and its wrapper transparently provide an LCL class to the LAPE interpreter. Does anyone know if the class in question can or should be substituted out, the other added in addition to this one, or this one maintained with whatever functionality it still has?
    The jealous temper of mankind, ever more disposed to censure than
    to praise the work of others, has constantly made the pursuit of new
    methods and systems no less perilous than the search after unknown
    lands and seas.

  7. #7
    Join Date
    Nov 2011
    Location
    England
    Posts
    3,072
    Mentioned
    296 Post(s)
    Quoted
    1094 Post(s)

    Default

    It was moved to protected visibility and is later made public in TPageControl (The class you would actually use), just delete it. If you want to keep compatibility add the missing methods to TPageControl wrappers.

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •