Welcome, Guest
Username: Password: Remember me
CodeTyphon Cross-Build Development, discussions and problems
  • Page:
  • 1

TOPIC:

Cross Build - Windows32/64/Linux 32/64 4 years 2 months ago #15140

  • Chad Adams
  • Chad Adams's Avatar Topic Author
  • Offline
  • Junior Member
  • Junior Member
  • Posts: 54
  • Thank you received: 0
I am crossbuilding fine. However, I am building 4 targets, win32/64 and linux 32/64.

how can i automate my build ide so when i hit CTL-F9 it builds all 4 targets without manually building each? Or can I?

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

Cross Build - Windows32/64/Linux 32/64 4 years 2 months ago #15141

  • Sternas Stefanos
  • Sternas Stefanos's Avatar
  • Offline
  • Moderator
  • Moderator
  • Ex Pilot, M.Sc, Ph.D
  • Posts: 4538
  • Thank you received: 1116
Mothod 1: Multi-Modes Project

a) Go to your project Options => "Compiler Options" and click on Modes button.




b) ADD and rename ALL Build Modes you want. Leave "Default" Mode for HostOS Build.




c) Setup your Mutli-Modes Project
--"Config and Target"
--"Additions and Overrides"
--etc
for every "Mode" you project has.




d) Go to TyphonIDE=>Run=>"Compile many Modes"






--select the "Modes" you want to build
--and click on "OK" button

TyphonIDE will try to build ALL selected "Modes"



Mothod 2: Multi-Project

a) You can save your project with different name and options like:
--project-i386-linux-gtk
--project-86_64-linux-gtk
--project-win32
--project-win64

b) Create a new CT Multi-Project with the above projects
c) Open your Multi-Project and build anything you want.



Mothod 3: Multi-Project with Multi-Modes Projects

The combination of above Method1 and Method2....


.
PilotLogic Architect and Core Programmer
Attachments:

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

Last edit: by Sternas Stefanos.

Cross Build - Windows32/64/Linux 32/64 4 years 2 months ago #15142

  • Chad Adams
  • Chad Adams's Avatar Topic Author
  • Offline
  • Junior Member
  • Junior Member
  • Posts: 54
  • Thank you received: 0
Thanks I got it working!

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

Cross Build - Windows32/64/Linux 32/64 2 weeks 1 day ago #18708

  • Roman
  • Roman's Avatar
  • Offline
  • Junior Member
  • Junior Member
  • Posts: 110
  • Thank you received: 0
I installed СT in Linux Mint and made sure that my project compiles and works in this OS.
Now I want to build a project for Linux from Windows. What should I do to make СT start building the project for this OS?
I tried, but got the following linker errors:

Is something missing?

The settings are as follows:
 
 
 
Attachments:

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

Last edit: by Roman.

Cross Build - Windows32/64/Linux 32/64 2 weeks 1 day ago #18709

  • Matis A.
  • Matis A.'s Avatar
  • Away
  • Moderator
  • Moderator
  • Posts: 1129
  • Thank you received: 170
LinuxMint don't have QT4 libraries, removed before 4 years I thing.
The Only Linux distribution has QT4 libraries now is Fedora

CT on latest Fedora 41 support MultiArch (32/64) and MultiPlatfom for GTK2, QT4, QT5 and QT6
PilotLogic Core Programmer

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

Last edit: by Matis A..

Cross Build - Windows32/64/Linux 32/64 2 weeks 1 day ago #18710

  • Roman
  • Roman's Avatar
  • Offline
  • Junior Member
  • Junior Member
  • Posts: 110
  • Thank you received: 0
So what do I need to fix?
 
Attachments:

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

Last edit: by Roman.

Cross Build - Windows32/64/Linux 32/64 2 weeks 1 day ago #18711

  • Matis A.
  • Matis A.'s Avatar
  • Away
  • Moderator
  • Moderator
  • Posts: 1129
  • Thank you received: 170
Just follow this method
but for x86_64-linux CPU-OS

Use libraries like:
x86_64-linux-fd
x86_64-linux

PS: For Host OSes that CT can install/build, my suggestion is to use a Virtual Machine with Target CPU-OS.
Βlind CrossBuild it's NOT the best way...
 
PilotLogic Core Programmer

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

Last edit: by Matis A..

Cross Build - Windows32/64/Linux 32/64 1 week 5 days ago #18718

  • Roman
  • Roman's Avatar
  • Offline
  • Junior Member
  • Junior Member
  • Posts: 110
  • Thank you received: 0

Host OSes that CT can install/build, my suggestion is to use a Virtual Machine with Target CPU-OS.
Βlind CrossBuild it's NOT the best way...


 
What is the point of cross-building then? If I develop in a virtual OS for the same OS, then it cannot be called cross-building. In this case, it should be recognized that CT does not provide cross-building, being only a multi-platform solution...

P.S. By default, when selecting a widget library, СT IDE does not include the corresponding library search path, this path must be included manually in the project properties. If you do this, the build errors I described disappear. But the application does not work in Linux... I have not yet understood the reason.

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

Last edit: by Roman.

Cross Build - Windows32/64/Linux 32/64 6 days 3 hours ago #18722

  • Roman
  • Roman's Avatar
  • Offline
  • Junior Member
  • Junior Member
  • Posts: 110
  • Thank you received: 0
I continue trying to cross-build projects, and I still need help.

So, in Windows 10/64 I create a new project with these settings:





In advance, I downloaded all the necessary libraries and compiled cross-assembly tools, as stated in the recommendations www.pilotlogic.com/sitejoom/index.php/wi...r-rasberry-pi-2.html

The project compiled successfully.

I moved the executable file to a virtual machine with LinuxMint, set the necessary rights, but when I run it I get an exception message:



Then I copy the project folder to the virtual machine and open the project in CT without changing anything in it.

Build - Ok, Run....

 

Another exception, but a completely different one!

Finally, I create exactly the same application in a virtual machine with a form and a single button, I don't make any project settings (I leave everything by default) - and the application starts and works perfectly!

What's going on? Why doesn't the cross-build work, and even the Windows project doesn't work in СT Linux?

Am I doing something wrong?

Project source attached.
Attachments:

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

Last edit: by Roman.

Cross Build - Windows32/64/Linux 32/64 6 days 1 hour ago #18723

  • Matis A.
  • Matis A.'s Avatar
  • Away
  • Moderator
  • Moderator
  • Posts: 1129
  • Thank you received: 170
The Problem is the libraries
We can NOT provide libraries for latest Linux or Unix anymore.

Why?
Libraries for Linux and Other Unix OSes needed to <<Link>> by the FreePascal compiler
are to complex now.

Sub-libraries are system-libraries, GTK2-libraries or QT6-libraries etc.
are the /usr/lib directory of a Linux distribution without the links files.


 
PilotLogic Core Programmer
The following user(s) said Thank You: Roman

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

Last edit: by Matis A..

Cross Build - Windows32/64/Linux 32/64 5 days 10 hours ago #18725

  • Roman
  • Roman's Avatar
  • Offline
  • Junior Member
  • Junior Member
  • Posts: 110
  • Thank you received: 0

We can NOT provide libraries for latest Linux or Unix anymore.
 
Can your words be interpreted as "CT is no longer a cross-platform development system, since it does not allow developing applications for another OS in one OS"?

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

Cross Build - Windows32/64/Linux 32/64 5 days 9 hours ago #18726

  • Matis A.
  • Matis A.'s Avatar
  • Away
  • Moderator
  • Moderator
  • Posts: 1129
  • Thank you received: 170
CT support Android and WASM crossbuild.

If you find or create the libraries, CT support anything you want.

We will provide new Linux Libraries when this OS have stable system-libraries and stable sub-libraries.
We can't provide libraries for every Linux Distribution, and update these libraries in every Kernel or sub-libraries update.

Things in current Linux state, are NOT so simple as you think.

One simple sample of Linux problem:
The choice of Xorg or Wayland or anything else, in a Linux Distribution,
effect system-libraries for CT.

In current Linux state and Other Unix OSes, the above libraries NOT work together
you must select only one

We must wait ...
 
PilotLogic Core Programmer
The following user(s) said Thank You: Roman

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

Last edit: by Matis A..

Cross Build - Windows32/64/Linux 32/64 5 days 9 hours ago #18727

  • Roman
  • Roman's Avatar
  • Offline
  • Junior Member
  • Junior Member
  • Posts: 110
  • Thank you received: 0
Thank you, sir. I really thought that libraries don't change that often and that much.
Unfortunately, this ruins all my plans...

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

Cross Build - Windows32/64/Linux 32/64 5 days 9 hours ago #18728

  • Matis A.
  • Matis A.'s Avatar
  • Away
  • Moderator
  • Moderator
  • Posts: 1129
  • Thank you received: 170
As you want.
PilotLogic Core Programmer

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

  • Page:
  • 1