View Issue Details

IDProjectCategoryView StatusLast Update
0020362PackagesDatabasepublic2011-10-11 17:18
ReporterTommi Prami Assigned ToVincent Snijders  
Status resolvedResolutionfixed 
Product Version0.9.30.1 (SVN) 
Fixed in Version0.9.31 (SVN) 
Summary0020362: dwarf debug information causes problems in WinCE
DescriptionIf I add sqlite3laz package into project stops from Compiling

Error is :

C:\lazarus\components\sqlite\sqlitecomponenteditor.pas(63,58) Hint: Parameter "User" not used
C:\lazarus\components\sqlite\lib\arm-wince\wince\sqlitecomponenteditor.s: Assembler messages:
C:\lazarus\components\sqlite\lib\arm-wince\wince\sqlitecomponenteditor.s:2718: Error: unknown pseudo-op: `.secrel32'
C:\lazarus\components\sqlite\lib\arm-wince\wince\sqlitecomponenteditor.s:2726: Error: unknown pseudo-op: `.secrel32'
C:\lazarus\components\sqlite\sqlitecomponenteditor.pas(332) Error: Error while assembling exitcode 1
C:\lazarus\components\sqlite\sqlitecomponenteditor.pas(332) Fatal: There were 2 errors compiling module, stopping

Additional InformationLazarus Revision : 32543
FPC : 2.4.4

Test App included. Just Open the Project and try to build it
TagsNo tags attached.
Fixed in Revision
Attached Files


related to 0020029 resolvedFelipe Monteiro de Carvalho FPC Linking error in Free Pascal for WinCE "unknown pseudo-op .secrel32" 


2011-09-28 15:31 (127,523 bytes)

Tommi Prami

2011-09-29 13:30

reporter   ~0052277


Got the Comment that this is FPC issue. Is there an workaround or is there new FPC (Unstable) release that supports the WinCE platform?


Tommi Prami

2011-09-29 13:31

reporter   ~0052278

(and Could someone Confirm this, or is this just something wrong in my system...)

Tommi Prami

2011-10-07 08:35

reporter   ~0052703

Workaround from Ludo Brands (Thanks man!!!)

"In Lazarus Package/Open Package File select sqlite3laz.lpk in the
components\sqlite directory, click on options and in CompilerOptions/Linking
select stabs. Close and compile. This should compile fine. When compiling
your project the package won't be rebuild."

Works... At least when the Culprit is some package... Hope this would get Official fix to either support the Dwarf-debug info on WinCE (or some other way...)


Ludo Brands

2011-10-07 09:03

developer   ~0052707

The background for the workaround:
- .secrel32 pseudo code is used only for dwarf debug code. According to gas and gcc mailing lists .secrel32 was pretty much invented for dwarf. Support for .secrel32 was introduced in gas 2.16. The arm cross assembler provided with fpc 2.4.4 for wince is 2.15.94. So the 2.4.4 wince platform doesn't support dwarf debugging info.
- latest lazarus defaults to dwarf debug info and even when the project options specify stab or no debug info, automatically compiled packages are compiled with dwarf. Compiling manually the package with stabs is just a workaround to avoid automatic recompiling.

Vincent Snijders

2011-10-11 00:55

manager   ~0052846

Can you test with a fpc 2.5.1 based snapshot? They have newer binutils, that might support this assembler?

Ludo Brands

2011-10-11 10:15

developer   ~0052855

The arm cross assembler is still 2.15.94 in the fpc 2.5.1 based snapshot.

It works fine with the binutils version found here: It requires a few cygwin dll's and using the external linker. The internal linker fails with "Failed reading coff file, illegal reloctype $000F while reading xxx". I guess this is the .secrel32 reloctype.

I didn't find any self contained cross assembler for wince newer than the one distributed with fpc. All ARM cross assembling seems to focus on EABI.

Vincent Snijders

2011-10-11 11:49

manager   ~0052861

Ludo, thanks for testing. I assumed that the Lazarus snapshots used the latest from fpcbuild repository, but I had to copy them on the correct location on the build machine. I just did that.

Ludo and Tommi, can you test with the new snapshots?

Ludo Brands

2011-10-11 16:55

developer   ~0052869

New arm-wince-as.exe (version 2.21.1) works fine with dwarf. External linker is also needed here. 2.5.1 also throws "illegal reloctype $000F " errors.

Vincent Snijders

2011-10-11 17:18

manager   ~0052871

I will close this issue. I suggest you open a new issue in the fpc project for the internal linker for arm-wince, if such an issue doesn't yet.

Issue History

Date Modified Username Field Change
2011-09-28 15:31 Tommi Prami New Issue
2011-09-28 15:31 Tommi Prami File Added:
2011-09-28 15:31 Tommi Prami Widgetset => WinCE
2011-09-29 13:30 Tommi Prami Note Added: 0052277
2011-09-29 13:31 Tommi Prami Note Added: 0052278
2011-10-07 08:35 Tommi Prami Note Added: 0052703
2011-10-07 09:03 Ludo Brands Note Added: 0052707
2011-10-07 10:35 Felipe Monteiro de Carvalho LazTarget => 0.99.0
2011-10-07 10:35 Felipe Monteiro de Carvalho Status new => acknowledged
2011-10-07 11:03 Felipe Monteiro de Carvalho Summary WinCE app with the sqlite3laz package wont compile => dwarf debug information causes problems in WinCE
2011-10-07 15:44 Vincent Snijders Relationship added related to 0020029
2011-10-11 00:55 Vincent Snijders Note Added: 0052846
2011-10-11 00:55 Vincent Snijders Status acknowledged => feedback
2011-10-11 00:55 Vincent Snijders Target Version => 0.99
2011-10-11 10:15 Ludo Brands Note Added: 0052855
2011-10-11 11:49 Vincent Snijders Note Added: 0052861
2011-10-11 16:55 Ludo Brands Note Added: 0052869
2011-10-11 17:18 Vincent Snijders Status feedback => resolved
2011-10-11 17:18 Vincent Snijders Fixed in Version => 0.9.31 (SVN)
2011-10-11 17:18 Vincent Snijders Resolution open => fixed
2011-10-11 17:18 Vincent Snijders Assigned To => Vincent Snijders
2011-10-11 17:18 Vincent Snijders Note Added: 0052871