Jump to content
Excelsior Forums


  • Content count

  • Joined

  • Last visited

Posts posted by DavePritchard

  1. Hi Hady,  many thanks for the reply.

    ncurses is not on the system,  I have just tried everything on another system which has ncurses installed, but the ncurses files are different, there are no -dev files,

    Also I forgot that I need to include /usr/local/xds  in the PATH.   So I failed to get it working.  I copied all  the ncurses files found in lib64 on the other system, back to the first system, but the same error occured.  Downloading files is a problem as I am using PC-Linux with KDE-4 which is no longer supported, the other system has KDE-5 Plasma, which is all bugs, but does have  ncurses installed    .   RPM's are  listed  listed for many other distros but not for PC_Linux,  So I need a little more time to sort my way through this.


    *******   CONTINUED  on  the 19-April-18  The Latest failures  *********

    (*   With system still using KDE4  *)

    [root@localhost Downloads]# rpm -i libtinfo-5.9-alt10.x86_64.rpm
    error: Failed dependencies:
            terminfo = 5.9-alt10 is needed by libtinfo-5.9-alt10.x86_64
            rpmlib(SetVersions) is needed by libtinfo-5.9-alt10.x86_64

    [root@localhost Downloads]# rpm -i terminfo-5.9-59.1.x86_64.rpm
    warning: terminfo-5.9-59.1.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID 3dbdc284: NOKEY
            file /usr/share/terminfo/r/rxvt-cygwin from install of terminfo-5.9-59.1.x86_64
    conflicts with file from package ncurses-5.9-9pclos201

    [ USING FIND : ncurses-5.9-9pclos201  NOT FOUND, terminfo-5.9-59.1.x86_64 NOT FOUND ]

    (*   From the above it would appear that ncurses is installed somewhere, but I cannot fine it *)

    Your search rpmlib(SetVersions) did not match any entry in database.

    [root@localhost Downloads]# rpm -i libncurses-devel-5.9-alt10.x86_64.rpm
    error: Failed dependencies:
            libncurses = 5.9-alt10 is needed by libncurses-devel-5.9-alt10.x86_64
            libtinfo-devel = 5.9-alt10 is needed by libncurses-devel-5.9-alt10.x86_64

    [root@localhost Downloads]# rpm -i libncurses-5.9-alt11.i586.rpm
    error: Failed dependencies:
            libtinfo = 5.9-alt11 is needed by libncurses-5.9-alt11.i586
            libgpm.so.1 >= set:jgGopviN0XPf is needed by libncurses-5.9-alt11.i586


    So into dependency hell,  and the conclusion , I seem to be getting nowhere, so I will try with the system running KDE5 ( as buggy as it is

    At least it has the following ncurses installed :


    (* But a different error has shown up as follows. *)

    * [./p0/src/Latin.mod 27.12 F425]
    * file open error: "FIO.sym" no such file
    errors  1, no warnings, lines   27, time  0.01
    [dave@localhost xds]$


    This and similar errors looks to me like the Topspeed  bits are not being accessed, but as everything was copied over from the other system I am stumped  as to why.  and I still don't know if the original error will be cleared or not.   .


    Dave P..

  2. Hi,   I am stuck again,  I have compiled a small programme "Latin.mod"   xc =m Latin.mod   ( converted from Topspeed )

    Although the files compile without errors,  it still fails.

    The following indicates the problem, or problems, but it is meaning less to me.

    [ CODE ]

    files: 6  errors: 0(21)  lines 8737  time: 0:00  speed 1747400 l/m
    gcc  -o Latin obj/Kb1.o obj/Latin.o obj/Latin0.o obj/Menus.o obj/Mylib.o  /usr/local/xds/lib/x86/libts.a /usr/local/xds/lib/x86/libxds.a  -lm -lncurses
    /usr/bin/ld: /usr/local/xds/lib/x86/libts.a(xtsConM.o): undefined reference to symbol 'curs_set'
    /lib64/libtinfo.so.5: error adding symbols: DSO missing from command line
    collect2: error: ld returned 1 exit status
    tmp.mkf:33: recipe for target 'Latin' failed
    make: *** [Latin] Error 1
    external command fault 2:
    make -f tmp.mkf
    [dave@localhost xds]$

    [ END CODE ]

    If someone could explain what I need to do to resolve this, and get a working programme, I will be very happy, any assistance welcome.

    Best Regards  Dave P..


  3. Hi  Konstantin ,  Many thanks for the reply,

    as an ageing hobby coder, I am on a steep learning curve, and really appreciate the help.

    I checked in the xds/sym directory,  Mylib.sys is in there.

    [ CODE ]

    [dave@localhost xds]$ xc Test.mod -lookup=*.sym=.;path_to_Mylib.sym
    XDS Modula-2 v2.40 [x86, v1.50] - build 10.05.2005
    Compiling "p0/src/Test.mod"

    * [p0/src/Test.mod 25.07 F425]
    * file open error: "MyLib.sym" no such file
    FROM  $MyLib   IMPORT  GetKey, Colors, RetainColors, RestoreColors,
    errors  1, no warnings, lines   25, time  0.01
    bash: path_to_Mylib.sym: command not found

    [ END CODE ]

    So I re-compiled the Mylib.def module;  then re-compiled the Mylib.mod module

    then tried compiling the Test.mod module again.

    [ CODE ]

    Compiling "./p0/def/Mylib.def"
    no errors, no warnings, lines  940, time  0.03, new symfile

    Compiling "./p0/src/Mylib.mod"
    no errors, warnings  2, lines 2552, time  0.10

    * [./p0/src/Test.mod 25.07 F425]
    * file open error: "MyLib.sym" no such file
    FROM  $MyLib   IMPORT  GetKey, Colors, RetainColors, RestoreColors,
    errors  1, no warnings, lines   25, time  0.01

    [ END CODE ]

    The following is the xc.red file,  this is in the xds directory

    xc.*   = /usr/local/xds/bin
    *.tem  = /usr/local/xds/bin
    *.sym  = ./sym;/usr/local/xds/sym/x86
    *.a    = .;/usr/local/xds/lib/x86
    *.o    = ./obj
    *.def  = ./def;./p0/def
    *.mod  = ./src;./p0/src
    *.ob2  = ./src
    *.prj  = .

    [ END ]

    I believed that the xc.red file did not work, however I have just tried again and all seems OK.

    [dave@localhost xds]$ xc Mylib.mod
    XDS Modula-2 v2.40 [x86, v1.50] - build 10.05.2005
    Compiling "p0/src/Mylib.mod"

    Dave P..



  4. Hi, 

    I have compiled a module Mylib.mod, it compiles with no errors, and 2 warnings, I then tried to compile another module Test.mod

    which imports from Mylib,  but get an error "No sym file"

    [ CODE     Compile Mylib.mod ]

    [dave@localhost xds]$ xc ./p0/src/Mylib.mod
    XDS Modula-2 v2.40 [x86, v1.50] - build 10.05.2005
    Compiling "./p0/src/Mylib.mod"

    * [./p0/src/Mylib.mod 743.11 W903]
    * function result is not used
        Ch := $RdKey();

    * [./p0/src/Mylib.mod 2430.11 W903]
    * function result is not used
        Ch := $RdKey();
    no errors, warnings  2, lines 2552, time  0.14

    [ END CODE ]

    Here I tried to compile Test.mod,   Which imports from Mylib

    [ CODE    Compile Test.mod ]

    [dave@localhost xds]$ xc ./p0/src/Test.mod
    XDS Modula-2 v2.40 [x86, v1.50] - build 10.05.2005
    Compiling "./p0/src/Test.mod"

    * [./p0/src/Test.mod 25.07 F425]
    * file open error: "MyLib.sym" no such file
    FROM  $MyLib   IMPORT  GetKey, Colors, RetainColors, RestoreColors,
    errors  1, no warnings, lines   25, time  0.00

    [ END CODE ]

    Both Mylib.def and Test.def compile no problems.  

    Are the warnings causing the problem ?   or am I missing something   ?.

    [The CODE causing the warnings follows,  + a similar procedure ]

    PROCEDURE FlushKeyBoard;
      Ch : CHAR;

      WHILE KeyPressed() DO
        Ch := RdKey();                               (* Ok so Ch does nothing, but I don't need it to *)
      END;  (* while *)
    END FlushKeyBoard;

    [ END CODE ]

    Any advice as to why there is no sym file ,  and what I need to do to get around this problem

    would be most welcome.   Dave P..

    One other thing,  as these are library modules, where do I put them after they are compiled, so that I can import them into an application module.?.








  5. Hi cypok     Many thanks for the reply, I am getting there slowly

    There was an obj directory already in p0,  but not in the xds directory,  so I  created one in xds, and Menus.o was created after compiling. So all good there.

    Warnings, Woops, in changing some troublesome FOR loops to WHILE loops I left out the need to increment the loop variable,

    Now .no errors, no warnings     Wonderful,   Thanks again,

    Dave P..

  6. Hi,   I am still struggling to get my first module compiled,  to start with I am trying to convert some Topspeed  library modules  written back in the 90's.

    The first one is Menus.mod,  the Def file compiles Ok,  I use the Menus module in several programmes , and have eliminated  errors associated with FOR Loops etc,

    but now I get the following  file create error,  I  assumed that the compiler would create this if the module compiled Ok.   So has anyone any ideas as to why this error is occurring ?

    * [*** 0.00 F424]
    * file create error: "obj/Menus.o" no such file
    errors  1, warnings 28, lines 1917, time  0.18
    [dave@localhost xds]$


    28 Warnings are listed !,       constant condition eliminated ,      redundant code eliminated ,    unreachable code,    possibly used before definition.

    The code compiled Ok with Topspeed and worked without bugs, so when I see the word "eliminated"    To me that indicates that the code is not

    included and compiled,  but the lines  most certainly are required !.

    So what is the effect of these Warnings ?         one procedure from Menus.mod  is listed , with the associated Warnings.

    Any help with these issues would be most welcome..    Dave P..


    PROCEDURE SetDepthWidth;                                    [ ONE OF THE Menus.mod MODULE PROCEDURES  ]
      ThisX, LastX,
      ThisY, LastY : CARDINAL;

       CurrentItem := 1;
       ChoiceWidth := 1;
       ChoiceDepth := 1;
       CurrentRec  := MenuPtrs^.Choices;

       WHILE CurrentItem <= NumChoices DO
           IF CurrentItem > 1 THEN                                      (* This line = constant condition eliminated,     W902  *)
              CurrentRec := CurrentRec^.Next;                   (* This line = unreachable code,    W311 *)
           WITH CurrentRec^ DO
              ThisX := xPos;                                                        (* This line = redundant code eliminated ,     W900 *)
              ThisY := yPos;                                                        (* This line = redundant code eliminated,      W900  *)
           IF CurrentItem = 1 THEN                                     (* This line =   constant condition eliminated,     W902 *)
              LastX := ThisX;
              LastY := ThisY;
               IF ThisX > LastX THEN                                      (* This line = unreachable code   W311, +  possible use before definition  $LastX,     W304 *)
                   INC( ChoiceWidth );                                           (* This line = unreachable code *)
                   LastX := ThisX;
               IF ThisY > LastY THEN                                      (* This line = unreachable code   +  possible use before definition     $LastY,     W304 *) 
                   INC( ChoiceDepth );                                           (* This line = unreachable code *)
                   LastY := ThisY;
           END;  (* if *)
        END;  (* while *)
    END SetDepthWidth;








  7. I am trying to convert some Topsped M2 library modules to XDS
    I have only just started using XDS and I am running into problems.

    I am having a problem understanding the following two errors.
    The code is as follows

    [ CODE ]   (* This bit is Ok,  for Info only *)
      MenuDefnPtr = POINTER TO MenuDefn;

      MenuDefn = RECORD
       MenuProc : PROC;         (* Proc. to use while waiting for a responce *)
       (* Other bits of code *)
    [ END CODE ]     (* No problem here *)

    When a Menu is displayed and awaits a key press, if Menu Proc has been
    allocated a procedure of type PROC the procedure will be called. and
    will return to the Menu on completion or a Key press.

    PROCEDURE SetMenuProc( MenuPtrs : Menu; NewProc : PROC );
    this is set to NULLPROC when not required.   (* in Topspeed *)
       MenuProc := NULLPROC;

    I changed NULLPROC to NIL but neither works.
    * [./p0/src/Menus.mod 556.19 E029]
    * incompatible types:
        "PROCEDURE [Modula] ()"
        MenuProc      $:= NULLPROC;
    [ END Original ]

    * [./p0/src/Menus.mod 556.19 E029]
    * incompatible types:
        "PROCEDURE [Modula] ()"
        MenuProc      $:= NIL;      
    [ END Changed ]


    Another Error that I cannot understand.

    * [./p0/src/Menus.mod 412.28 W325]
    * possible ambiguity; two-char array passed
        PosTilde  := Pos( Name,$'~' );

    How can '~' be a two char array, I believe CHAR is One Byte.

    Any help to resolve these two problems would be most welcome.

    Dave P..


  8. Hi Lion.

    Thanks for the Info,  unfortunately I am running Linux, so stuck in the 1980;s on the command line.

    At present I am working on some library modules that I wrote way back, once these compile Ok then I can move on to a few programmes  written about the

    same time,  I have compiled a couple of Def files Ok,  and am happy about an error in a .mod file, as it simply needs another .def file to be compiled first.

    Then onto the next step,  building a programme, finding where it is,  and what it's called,  and running it.

    I have a laptop with XP on it which I can take away with me  this has XDS installed, and opens with an editor,  so may do some work with it  while traveling,

    So far I have found using the command line not as bad as I first thought, but a Linux IDE would be nice. anyway I have cleared a couple of problems and

    feel a bit more confident using XDS.

    Thanks again for the info   Dave P..

  9. Hi, Many thanks for a clear and helpful  reply.

    I have just tried  <* +TOPSPEED +>      DEFINITION MODULE Menus;

    Checked and it works fine, 

    I have only just started to use the compiler,  and have not used a Project file as I just wanted

    to compile a simple Def Module to get going with it ,  one step at a time !.

    Thanks again  Dave P..





  10. Hi,  This is a follow on from my Re-direction query, that's sort of solved.

    I have tried to compile a simple Definition file but get an error on line1

    the file "Menus.def" was used with Topspeed under DOS ., The only change is the

    inclusion of -TOPSPEED+ at the beginning , without it there is a shed load of errors

    But I cannot figure out why the e008 error on line 1,

    Any help with this problem would be most welcome.


    [dave@localhost xds]$ xc ./p0/def/Menus.def
    XDS Modula-2 v2.40 [x86, v1.50] - build 10.05.2005
    Compiling "./p0/def/Menus.def"

    * [./p0/def/Menus.def 1.01 E008]
    * expected symbol  "MODULE"
    errors  1, no warnings, lines    1, time  0.00

    [END CODE]

    Line 1of the file  =   -TOPSPEED+ DEFINITION MODULE Menus;



    expected symbol %s (symbol)

    The compiler expects the given symbol at the indicated position. The symbol may be one of the following:

         |       ;       :       .       [       ]       :=
         (       )       {       }       ,       =       ..
         DO      END     OF      THEN    TO      UNTIL   IMPORT


    Dave P..

  11. Many thanks for the Reply.

    XDS re-installed, just the same. i've made some progress with the file Name and the Path.

    Seems  that the Dos file name "MENUS..DEF" is unacceptable, but "Menus.def" is Ok.

    Although the xc.red file in the xds directory has   *.def  = ./def;./p0/def

    I have to use xc ./p0/def/FileName  on the command line, not sure why ?

    So now I can get the compiler to work, but immediately hit an error problem, as this is unrelated

    to this post I have started a new post for the error problem.


    Dave P..









  12. Hi,  I am desperately in need of some help, I  am trying to convert a few simple programs written with Topspeed M2 back in the 90's.

    However I cannot seem to get the redirection file to work,  I am using  PC- Linux-OS.

    usr/local.xds/bin   is in the $PATH        and      XDS is installed in /usr/local.

    I have created a sub directory of the xds directory   /p0,   and xcwork from p0 has created the  def, obj, src, sym  directories.

    I have put 2 files in xds/p0/def     they are  mylib.def  and  mylib.mod

    PART of REDIRECTION FILE   in the xds directory. =

    *.def  = ./def;/p0/def      also tried       *.def  = ./usr/local/xds/p0/def
    However I always get a  "no such file"  Error

    [dave@localhost xds]$ xc mylib.def
    file open error: "mylib.def" no such file

    I even tried putting  the mylib.def file in  usr/local/xds/def/xds      with other def files.

    and every other combination that I can think of,  always the   SAME Error

    Any help / suggestions  most welcome