Welcome, Guest
Username: Password: Remember me
General discussions, feature requests for CodeTyphon Project and discussions that don't fit in any of the other specific CodeTyphon forum categories.
  • Page:
  • 1

TOPIC:

Crosscompile win32 -> linux386 in CT5.9 problem 7 years 2 months ago #10444

  • Premysl Beran
  • Premysl Beran's Avatar Topic Author
  • Offline
  • Junior Member
  • Junior Member
  • Posts: 48
  • Thank you received: 0
Hi there,
I use to compile my project from FPC win32 to win64, i386-linux and x86_64-linux. Everything work in CT5.5. When I turned lately to CT5.9 I found that all is compiled fine except i386-linux. It state following error during linking:

C:\codetyphon\fpc\fpc32\units\i386-linux\rtl\si_c21.o: In function `SI_C21_$$__FPC_LIBC21_START':
si_c21.pp:(.text.n_si_c21_$$__fpc_libc21_start+0x27): undefined reference to `__libc_csu_fini'
si_c21.pp:(.text.n_si_c21_$$__fpc_libc21_start+0x2c): undefined reference to `__libc_csu_init'
..\Programming\Lazarus\GetControl\GetControl.lpr(49,1) Error: (9013) Error while linking
..\Programming\Lazarus\GetControl\GetControl.lpr(49,1) Fatal: (10026) There were 1 errors compiling module, stopping
Fatal: (1018) Compilation aborted
Error: C:\codetyphon\fpc\fpc32\bin\i386-win32\ppc386.exe returned an error exitcode

I tried to recompile the CrossBuild chain but it doesn't help. I also created test project and try to compile directly to i386-linux with the same error.

Can anybody help? Thanks.

Premek

Please Log in or Create an account to join the conversation.

Last edit: by Premysl Beran.

Crosscompile win32 -> linux386 in CT5.9 problem 7 years 2 months ago #10449

  • Sternas Stefanos
  • Sternas Stefanos's Avatar
  • Offline
  • Moderator
  • Moderator
  • Ex Pilot, M.Sc, Ph.D
  • Posts: 4508
  • Thank you received: 1100
Thank Sir
I think, we fix that in Lab CT 6.00
PilotLogic Architect and Core Programmer
The following user(s) said Thank You: Premysl Beran

Please Log in or Create an account to join the conversation.

Last edit: by Sternas Stefanos.

Crosscompile win32 -> linux386 in CT5.9 problem 7 years 2 months ago #10451

  • Premysl Beran
  • Premysl Beran's Avatar Topic Author
  • Offline
  • Junior Member
  • Junior Member
  • Posts: 48
  • Thank you received: 0
Hi Stefanos,
thanks for the reply and your work. Looking foreward to CT6.00.
Premek

Please Log in or Create an account to join the conversation.

Crosscompile win32 -> linux386 in CT5.9 problem 7 years 2 months ago #10452

  • Sternas Stefanos
  • Sternas Stefanos's Avatar
  • Offline
  • Moderator
  • Moderator
  • Ex Pilot, M.Sc, Ph.D
  • Posts: 4508
  • Thank you received: 1100
Sir
we test now win32 to i386-linux and the problem exists (Lab CT 6.00) :(

I think the problem is at i386-linux OS Libraries
We working on it....
PilotLogic Architect and Core Programmer

Please Log in or Create an account to join the conversation.

Crosscompile win32 -> linux386 in CT5.9 problem 7 years 2 months ago #10478

  • Premysl Beran
  • Premysl Beran's Avatar Topic Author
  • Offline
  • Junior Member
  • Junior Member
  • Posts: 48
  • Thank you received: 0
Hi Stefanos,
the error still remain also in the final CT6.00. :(

I wanted to use fpc64 and Typhon64 with cross-compiler to win64-i386-linux for my task. But unfortunately I was not able to build cross-compiler. Compilation finished with following error:

C:/codetyphon/fpcsrc/compiler/ppc.exe -Ur -Xs -O2 -n -Fui386 -Fusystems -FuC:/codetyphon/fpcsrc/rtl/units/x86_64-win64 -Fii386 -FE. -FUi386/units/x86_64-win64 -dRELEASE -di386 -dGDB -dBROWSERLOG -Fux86 -Sew pp.pas
fpcdefs.inc(249,2) Error: User defined: Cross-compiling from systems without support for an 80 bit extended floating point type to i386 is not yet supported at this time
fpcdefs.inc(249,2) Error: User defined: Cross-compiling from systems without support for an 80 bit extended floating point type to i386 is not yet supported at this time
fpcdefs.inc(249,2) Error: User defined: Cross-compiling from systems without support for an 80 bit extended floating point type to i386 is not yet supported at this time
fpcdefs.inc(249,2) Error: User defined: Cross-compiling from systems without support for an 80 bit extended floating point type to i386 is not yet supported at this time
constexp.pas(87,1) Fatal: There were 4 errors compiling module, stopping
Fatal: Compilation aborted
make[2]: *** [Makefile:4191: ppcross386.exe] Error 1
make[2]: Leaving directory 'C:/codetyphon/fpcsrc/compiler'
make[1]: *** [Makefile:4276: cycle] Error 2
make[1]: Leaving directory 'C:/codetyphon/fpcsrc/compiler'
make: *** [Makefile:2922: compiler_cycle] Error 2

Is there a chance to compile i386-linux executable from windows?

Thanks in advance

Premek

Please Log in or Create an account to join the conversation.

Crosscompile win32 -> linux386 in CT5.9 problem 7 years 2 months ago #10479

  • Premysl Beran
  • Premysl Beran's Avatar Topic Author
  • Offline
  • Junior Member
  • Junior Member
  • Posts: 48
  • Thank you received: 0
Hi Stefanos,
I investigated a little bit and as you wrote there is a problem with OS libraries. As x86_64-linux works well I saw that they used dynamic linking of libc. So I used the same trick as for x86_64 platform. I added libc.so which contains the code (ASCI) for linking, provided libc.so (from CT) I renamed to libc.so.6 and libc_nonshared.a for i386 platform. And then the compilation works. B)
All 3 files are in attachment and need to be added to binLibreries. So only those need to be updated.
With best regards
Premek

Please Log in or Create an account to join the conversation.

Last edit: by Premysl Beran.

Crosscompile win32 -> linux386 in CT5.9 problem 7 years 2 months ago #10480

  • Sternas Stefanos
  • Sternas Stefanos's Avatar
  • Offline
  • Moderator
  • Moderator
  • Ex Pilot, M.Sc, Ph.D
  • Posts: 4508
  • Thank you received: 1100
Thank Sir :silly: :silly:
fixed OS libraries are in our Server Now
PilotLogic Architect and Core Programmer

Please Log in or Create an account to join the conversation.

  • Page:
  • 1