Sign in Join

Live chat for Free Pascal, Lazarus, Delphi and every Pascal programmer.

Mailing lists / fpc-devel / 2008-05

OS/2 build failure

8 messages · 4 people · –

Reply by email Subscribe to this list Your subscription

Read-only archive. Use j and k to move between messages.

Dave Parsons

Hi,

For a while now I've been getting the following error when building from svn (2.3.1 from 20 mins ago).
The last known good build I have is from 3rd. Jan but I think it was ok in Feb also. I build about once a month but don't always do an install.
I've looked at the change history for all the files which seem to be involved but I can't see which change caused the problem.

Any ideas?

Dave F:/fpc/fpcbuild/fpcsrc/compiler/ppc386.exe -Ur -Xs -O2 -n -Fu../../rtl/units/os2 -Fu../../packages/fcl-base/units/os2 -Fu../../packages/fcl-xml/units/os2 -Fisrc -FE. -FUunits/os2 -di386 -dRELEASE src/chmcmd.lpr f:\gcc-3.3.5-csd1\usr\i386-pc-os2-emx\bin\ld.exe: symbol `_excptregptr' defined more than once in F:\FPC\FPCBUILD\FPCSRC\RTL\UNITS\OS2\system.o chmcmd.lpr(42) Error: Error while linking chmcmd.lpr(42) Fatal: There were 1 errors compiling module, stopping Fatal: Compilation aborted make[4]: *** [chmcmd.exe] Error 1 make[4]: Leaving directory `F:/fpc/fpcbuild/fpcsrc/packages/chm' make[3]: *** [chm_all] Error 2 make[3]: Leaving directory `F:/fpc/fpcbuild/fpcsrc/packages' make[2]: *** [packages_all] Error 2 make[2]: Leaving directory `F:/fpc/fpcbuild/fpcsrc' make[1]: *** [build-stamp.i386-os2] Error 2 make[1]: Leaving directory `F:/fpc/fpcbuild/fpcsrc' make: *** [fpcsrc/build-stamp.i386-os2] Error 2

Reply by email

Tomas Hajny
to Dave Parsons: For a while now I've been getting the following error when building from svn (2.3.1 from…
Dave Parsons wrote 21 lines
Hi, For a while now I've been getting the following error when building from svn (2.3.1 from 20 mins ago). The last known good build I have is from 3rd. Jan but I think it was ok in Feb also. I build about once a month but don't always do an install. I've looked at the change history for all the files which seem to be involved but I can't see which change caused the problem. Any ideas? -- Dave F:/fpc/fpcbuild/fpcsrc/compiler/ppc386.exe -Ur -Xs -O2 -n -Fu../../rtl/units/os2 -Fu../../packages/fcl-base/units/os2 -Fu../../packages/fcl-xml/units/os2 -Fisrc -FE. -FUunits/os2 -di386 -dRELEASE src/chmcmd.lpr f:\gcc-3.3.5-csd1\usr\i386-pc-os2-emx\bin\ld.exe: symbol `_excptregptr' defined more than once in F:\FPC\FPCBUILD\FPCSRC\RTL\UNITS\OS2\system.o

Being back from the US now, I hope to be able to have a look at it in foreseeable future.

Tomas

Reply by email

Dave Parsons
to Felipe Monteiro de Carvalho: You could try this: http://wiki.lazarus.freepascal.org/How_To_Help_Developing_Lazarus#Deal…
Felipe Monteiro de Carvalho wrote

Yes thanks, I have been doing just that.

I started by checking out a new tree of fpc, not fpcbuild which I have been using until now, with the last revision which worked, r9623.

These are the results using a 2.2 snapshot from 3-11-07: r9623 good
r9800 fail, exeinfo problems
r9803 good
r10000 fail, unknown directory imlib
r10100 fail, missing endif in packages/makefile
r10103 fail, unknown directory test
...
r10888 to 10994:
-------------------------------------------------------------------------- make[4]: Leaving directory `F:/fpc2/fpc/packages/fcl-db/src/sqldb' make[3]: Leaving directory `F:/fpc2/fpc/packages/fcl-db' make -C fcl-image all
make[3]: Entering directory `F:/fpc2/fpc/packages/fcl-image' F:/EMX/BIN/mkdir.exe -p units/os2
F:/fpc2/fpc/compiler/ppc386.exe -Ur -Xs -O2 -n -S2h -Fu../../rtl/units/os2 -Fu../../packages/pasjpeg/units/os2 -Fu../../packages/hash/units/os2 -Fu../../packages/paszlib/units/os2 -Fu../../packages/fcl-base/units/os2 -FE. -FUunits/os2 -di386 -dRELEASE src/fpimgcmn.pp Fatal: Compilation aborted
An unhandled exception occurred at $000209DF :
EAccessViolation : Access violation
$000209DF

An unhandled exception occurred at $0001F23F :
EAccessViolation :
$0001F23F
-------------------------------------------------------------------------- Revision 10888 is:
Modified Mon May 5 18:46:55 2008 UTC (12 days, 16 hours ago) by micha
* regenerate Makefiles to get armeb-linux support globally (also arm-darwin, so it seems)

The 'unknown directory test' appears to be still left over from the restructuring at the beginning of this year.

It should be noted that although the build process did not complete, the compiler itself appears to have built ok.

The second thing to notice is that the fpcbuild tree fails with a different error, '_excptregptr defined twice'.

The results are the same in both cases when I use my 2.3.1 compiler from 3rd. Jan.

HTH,
Dave

Reply by email

Dave Parsons
to Tomas Hajny: Being back from the US now, I hope to be able to have a look at it in foreseeable future.…
Tomas Hajny wrote 16 lines
On Tue, May 13, 2008 09:05, Dave Parsons wrote: > Hi, > > For a while now I've been getting the following error when > building from svn (2.3.1 from 20 mins ago). > The last known good build I have is from 3rd. Jan but I think > it was ok in Feb also. I build about once a month but don't > always do an install. > I've looked at the change history for all the files which seem > to be involved but I can't see which change caused the problem. Being back from the US now, I hope to be able to have a look at it in foreseeable future. Tomas

The problem seems to be that _excptregptr is defined in system.pas and prt0.as but it was only recently exposed by the makefile regeneration.
I've changed it here as follows:-

Index: system.pas
=================================================================== --- system.pas (revision 11013)
+++ system.pas (working copy)
@@ -484,7 +484,7 @@

 var
-  ExcptReg: PExceptionRegistrationRecord; public name '_excptregptr';
+  ExcptReg: PExceptionRegistrationRecord; external name '_excptregptr';
 {$ifdef SYSTEMEXCEPTIONDEBUG}
 var
===================================================================

However, now I have another problem:-
make[4]: Leaving directory `F:/fpc/fpcbuild/fpcsrc/packages/tcl' make[3]: *** No rule to make target `opengl_all', needed by `gtk1_all'. Stop. make[3]: Leaving directory `F:/fpc/fpcbuild/fpcsrc/packages' make[2]: *** [packages_all] Error 2
make[2]: Leaving directory `F:/fpc/fpcbuild/fpcsrc' make[1]: *** [build-stamp.i386-os2] Error 2
make[1]: Leaving directory `F:/fpc/fpcbuild/fpcsrc' make: *** [fpcsrc/build-stamp.i386-os2] Error 2

I don't know whether you read my earlier reply concerning the crash in the 'fpc' checkout, but it is still there. I can not find any differences apart from the slightly different directory structure, but it is still there and consistent irrespective of which compiler, make or whatever I use.

Cheers,
Dave

Reply by email

Marco van de Voort
to Dave Parsons
Show quoted text 13 lines
On Wed, 14 May 2008 23:32:04 +0200 (CEST), Tomas Hajny wrote: > > The last known good build I have is from 3rd. Jan but I think > > it was ok in Feb also. I build about once a month but don't > > always do an install. > > I've looked at the change history for all the files which seem > > to be involved but I can't see which change caused the problem. > > Being back from the US now, I hope to be able to have a look at it in > foreseeable future. The problem seems to be that _excptregptr is defined in system.pas and prt0.as but it was only recently exposed by the makefile regeneration.

Speaking of OS/2, can sb quick-look at the FAQ page ( http://www.hu.freepascal.org/faq.var ) to see if the 1.0.6 stuff can be moved to the wiki ?

Reply by email

Tomas Hajny
to Marco van de Voort
Marco van de Voort wrote 17 lines
> On Wed, 14 May 2008 23:32:04 +0200 (CEST), Tomas Hajny wrote: > > > The last known good build I have is from 3rd. Jan but I think > > > it was ok in Feb also. I build about once a month but don't > > > always do an install. > > > I've looked at the change history for all the files which seem > > > to be involved but I can't see which change caused the problem. > > > > Being back from the US now, I hope to be able to have a look at it in > > foreseeable future. > > The problem seems to be that _excptregptr is defined in system.pas > and prt0.as but it was only recently exposed by the makefile > regeneration. Speaking of OS/2, can sb quick-look at the FAQ page ( http://www.hu.freepascal.org/faq.var ) to see if the 1.0.6 stuff can be moved to the wiki ?

Not sure if I understand the question properly, but if you want to cleanup current FAQ by moving references to problems only relevant for very old version to some other place, the OS/2 related one doesn't need any special exception as long as you keep the current version there - "1.0.6 and higher" is still applicable for the latest versions, because the requirement for TZ environment variable comes from unzip.dll which is still used.

Tomas

Reply by email

Marco van de Voort
to Tomas Hajny
Show quoted text 13 lines
On Mon, May 19, 2008 17:30, Marco van de Voort wrote: > > Speaking of OS/2, can sb quick-look at the FAQ page ( > http://www.hu.freepascal.org/faq.var ) to see if the 1.0.6 stuff can be > moved to the wiki ? Not sure if I understand the question properly, but if you want to cleanup current FAQ by moving references to problems only relevant for very old version to some other place, the OS/2 related one doesn't need any special exception as long as you keep the current version there - "1.0.6 and higher" is still applicable for the latest versions, because the requirement for TZ environment variable comes from unzip.dll which is still used.

Yeah, I noticed meanwhile. We could remove the double heading though.

Reply by email