[lazarus] Compiler Problems - FPC team please read

Curtis White cwhite at aracnet.com
Sun Feb 4 19:20:40 EST 2001


I don't know what is wrong, but for some reason I cannot compile Lazarus
any more with the latest 1.0.5 compiler from CVS. I did a complete
update and now I get the following errors:


make[2]: Entering directory `/opt/fpc/lazarus/components/mwedit'
rm -f ../units/allunits.ppu
ppc386 -Fu../units -Fu../../lcl/units -Fu/opt/fpc/rtl/linux
-Fu/opt/fpc/fcl/linux -Fu/opt/fpc/packages/gtk -FE. -FU../units -di386
allunits.pp
Free Pascal Compiler version 1.1 [2001/02/04] for i386
Copyright (c) 1993-2000 by Florian Klaempfl
Target OS: Linux for i386
Compiling allunits.pp
35 Lines compiled, 0.7 sec
rm -f ../units/allunits.ppu
make[2]: Leaving directory `/opt/fpc/lazarus/components/mwedit'
make[1]: Leaving directory `/opt/fpc/lazarus/components'
make --assume-new=lazarus.pp lazarus
make[1]: Entering directory `/opt/fpc/lazarus'
ppc386 -Fu. -Fu./lcl/units -Fu./components/units -Fu./designer
-Fu/opt/fpc/rtl/linux -Fu/opt/fpc/fcl/linux -Fu/opt/fpc/packages/gtk
-Fi. -Fi./include -Fi./include/linux -FE. -di386 lazarus.pp
Free Pascal Compiler version 1.1 [2001/02/04] for i386
Copyright (c) 1993-2000 by Florian Klaempfl
Target OS: Linux for i386
Compiling lazarus.pp
Compiling main.pp
Compiling compileroptions.pp
Compiling main.pp
Compiling project.pp
Compiling main.pp
Compiling uniteditor.pp
Compiling editoroptions.pp
Panic : Internal compiler error, exiting.
editoroptions.pp(1014,11) Fatal: Internal error 9999
make[1]: *** [lazarus] Error 1
make[1]: Leaving directory `/opt/fpc/lazarus'
make: *** [ide] Error 2


It is really strange because in order to get even this far, I had to
type make about 6 or 7 times in the lazarus directory. It keeps erroring
out on a unit. Then I type make again and it gets past the last error
and errors out on another unit. Finally after several times of typing
make, I get to the link error below and can get no further. When I do a
make clean and try to compile, it dies on each of the following classes:

interfacebase.pp
controls.pp
forms.pp
stdctrls.pp

Each time I just do a make again and it continues on until it gets to
the next one. The last one finally gets the link error below.

It appears to not like something in editoroptions.pp. It is kind of
interesting. I commented out the code in editoroptions.pp as follows:

  procedure SetOption(ACheckBox:TCheckBox;AnOption:TSynEditorOption);
  var a:integer;
  begin
{
    if Sender=ACheckBox then
      for a:=Low(PreviewEdits) to High(PreviewEdits) do
        if PreviewEdits[a]<>nil then
          if ACheckBox.Checked then
            PreviewEdits[a].Options:=PreviewEdits[a].Options+[AnOption]
          else
            PreviewEdits[a].Options:=PreviewEdits[a].Options-[AnOption]
}
 
end;                                                                                          


Then I tried recompiling it and it almost gets there but dies on the
link for some reason. Here is the error it dies with when the code above
is commented out:

compiler.pp(90,3) Note: Local variable "NUm" not used
compiler.pp(204,3) Note: Local variable "Texts" is assigned but never
used
compiler.pp(205,3) Note: Local variable "num" not used
compiler.pp(206,3) Note: Local variable "Temp" not used
compiler.pp(223,3) Note: Local variable "Texts" not used
compiler.pp(224,3) Note: Local variable "num" not used
compiler.pp(225,3) Note: Local variable "Temp" not used
compiler.pp(41,5) Note: Private field "TCompiler.FProjectFile" is never
used
compiler.pp(42,5) Note: Private field "TCompiler.FOutputFile" is never
used
Compiling main.pp
Compiling main.pp
Compiling ./designer/designer.pp
Linking ./lazarus
/usr/bin/ld: cannot find -lxext
lazarus.pp(63,1) Warning: Error while linking
Closing script ./ppas.sh
4512 Lines compiled, 2.7 sec
make[1]: Leaving directory
`/opt/fpc/lazarus'                                                   

I don't understand why it is getting a link error like this.

I had to go into include/linux and change the "uses linux" at the top of
lazconf.inc to "uses unix". So apparently something in the compiler has
changed. I don't know what happened to the linux unit. But the unix unit
seems to fix that error. This is all really strange.

It was working just fine for me until I cycled the compiler last night.
There is something strange going on with FPC lately anyway. When I do a
cvs update of fpc, I get some strange messages I have never gotten
before:

cvs update: move away fpc/compiler/assemble.pas; it is in the way
C fpc/compiler/assemble.pas
cvs update: move away fpc/compiler/browcol.pas; it is in the way
C fpc/compiler/browcol.pas
cvs update: move away fpc/compiler/browlog.pas; it is in the way
C fpc/compiler/browlog.pas


I get this on nearly every file in the fpc directory. This just recently
started happening. I thought maybe it was something wrong with my
system, so I deleted all the files in the compiler, fcl, rtl and
packages directory and then did a cvs update to bring them all down
fresh. Then I cycled the compiler. Now I can't compile any more. 

I haven't changed anything else other than doing the updates from CVS. I
have tried doing a "make clean". I even went in and deleted every file
in the components and lcl directories and did a cvs update to refresh
them completely. I also deleted all the files from the units
directories. So it is starting completely clean. Still no luck.

Does anyone have any idea what is going on? 


Curtis






More information about the Lazarus mailing list