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/x86-64 7 years 6 months ago #9977

  • Void
  • Void's Avatar Topic Author
  • Offline
  • New Member
  • New Member
  • Posts: 6
  • Thank you received: 0
Hi, i need help with porting my windows project to desktop linux. I have 3 targets (crosscompiling from win32):
- win32 (desktop) - successful
- linux arm (raspberry) - successful
- linux i386 or x86-64 (desktop) - failed with errors:

target i386:
C:\codetyphon\binLibraries\x86_64-linux\crti.o: file not recognized: File format not recognized

target x86-64:
c:\codetyphon\fpc\fpc32\bin\i386-win32\x86_64-linux-ld.exe: cannot find -lrt

I'm not sure where to find -lrt ... I tried to move project to linux machine and compile it there but codetyphon on Linux has serious problem with TIdTCPServer (After placing on form blank error displayed and most of component properties are inaccessible). I need to find a way how to execute my app on linux systems with x86 processors. Thanks for suggestions.

Win64 crossbuild element i386 and x86-64 fails with error:

Could Not Find C:\codetyphon\fpcsrc\compiler\*.exe
Could Not Find C:\codetyphon\fpcsrc\compiler\utils\*.exe
Could Not Find c:\codetyphon\fpcsrc\utils\*.exe
Could Not Find c:\codetyphon\fpcsrc\fpcmade.*
Could Not Find c:\codetyphon\fpcsrc\Package.fpc
Could Not Find c:\codetyphon\fpcsrc\*.ppu
Could Not Find c:\codetyphon\fpcsrc\compiler\*.o
Could Not Find c:\codetyphon\fpcsrc\packages\*.o
Could Not Find c:\codetyphon\fpcsrc\ide\*.o
Could Not Find c:\codetyphon\fpcsrc\installer\*.o
Could Not Find c:\codetyphon\fpcsrc\utils\*.o
Could Not Find c:\codetyphon\fpcsrc\packages\xforms\fd2pascal*

A subdirectory or file ..\..\fpc\fpc64 already exists.
File not found - *.*
0 File(s) copied

???????????????????????????????????????????????????????????
[ERROR]: win64 Cross Element for i386-linux Param:xxxx NOT Exists
sorry, Cross Build procedure STOP
???????????????????????????????????????????????????????????

Environment:
Win10 64bit
CT 5.8

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

Last edit: by Void.

Crosscompile win32 - linux386/x86-64 7 years 6 months ago #9980

  • Sternas Stefanos
  • Sternas Stefanos's Avatar
  • Offline
  • Moderator
  • Moderator
  • Ex Pilot, M.Sc, Ph.D
  • Posts: 4506
  • Thank you received: 1100
Thanks Sir
1) We will check and fix pl_Indy problem with TIdTCPServer on Linux
2)C:\codetyphon\binLibraries\x86_64-linux\ OS libraries are for Linux64 target

3) On windows FPC64 has cross-build problems, use FPC32
PilotLogic Architect and Core Programmer

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

Crosscompile win32 - linux386/x86-64 7 years 6 months ago #9982

  • Void
  • Void's Avatar Topic Author
  • Offline
  • New Member
  • New Member
  • Posts: 6
  • Thank you received: 0
Hi thanks for answer I checked it one more time and rebuilded x86-64 packaged. Tested clean project - ok.

With indy TidTCPserver again target x86-64:
c:\codetyphon\fpc\fpc32\bin\i386-win32\x86_64-linux-ld.exe: cannot find -lrt

So i think lrt is something related to indy.

(btw more indy server are problematic on linux)

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

Crosscompile win32 - linux386/x86-64 7 years 6 months ago #9983

  • Sternas Stefanos
  • Sternas Stefanos's Avatar
  • Offline
  • Moderator
  • Moderator
  • Ex Pilot, M.Sc, Ph.D
  • Posts: 4506
  • Thank you received: 1100
"(btw more indy server are problematic on linux)"

Yes and this is the main problem...
PilotLogic Architect and Core Programmer
The following user(s) said Thank You: Void

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

Crosscompile win32 - linux386/x86-64 7 years 6 months ago #9984

  • Void
  • Void's Avatar Topic Author
  • Offline
  • New Member
  • New Member
  • Posts: 6
  • Thank you received: 0
Ok I´m sorry i found in my recents, that angelo solved that before with renaming library librt.so.1 To librt.so. (www.pilotlogic.com/sitejoom/index.php/fo...indy-crossbuild#9480)

After renaming library was compilation successful :) Thank you for help and time.

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

Last edit: by Void.

Crosscompile win32 - linux386/x86-64 7 years 6 months ago #9985

  • Sternas Stefanos
  • Sternas Stefanos's Avatar
  • Offline
  • Moderator
  • Moderator
  • Ex Pilot, M.Sc, Ph.D
  • Posts: 4506
  • Thank you received: 1100
Please Sir
Download OS libraries again and test...

-lrt =librt.so Not exist in old OS libraries

so we add a renamed librt.so.1 => librt.so

and have fun....:)
PilotLogic Architect and Core Programmer
The following user(s) said Thank You: Void

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

Last edit: by Sternas Stefanos.

Crosscompile win32 - linux386/x86-64 7 years 6 months ago #9986

  • Void
  • Void's Avatar Topic Author
  • Offline
  • New Member
  • New Member
  • Posts: 6
  • Thank you received: 0
Yes working now (after renaming).

Sternas Stefanos wrote: Please Sir
Download OS libraries again and test...

-lrt =librt.so Not exist in old OS libraries

so we add a renamed librt.so.1 => librt.so

I am waiting for the results

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

Last edit: by Void.
  • Page:
  • 1