|
|
Home » Developing U++ » U++ Developers corner » compile on one operating system for another
|
|
|
|
Re: compile on one operating system for another [message #61544 is a reply to message #61543] |
Thu, 13 March 2025 21:42   |
Novo
Messages: 1430 Registered: December 2006
|
Ultimate Contributor |
|
|
Tom1 wrote on Thu, 13 March 2025 11:10Hi Novo,
You mean from within TheIDE using clang? Would you like to share the details on how to do that, maybe even bm file(s)?
Best regards,
Tom
Hi Tom,
I use llvm-mingw.
I use llvm-mingw with umk to compile with a buildbot service in my homelab and with TheIDE to compile on desktop.
Below is a bm file from the buildbot service.
BUILDER = "CLANG";
COMPILER = "x86_64-w64-mingw32-clang++";
COMMON_OPTIONS = "";
COMMON_CPP_OPTIONS = "-Wall -Wno-logical-op-parentheses -std=c++17";
COMMON_C_OPTIONS = "";
COMMON_LINK = "";
COMMON_FLAGS = "WIN32";
DEBUG_INFO = "2";
DEBUG_BLITZ = "1";
DEBUG_LINKMODE = "1";
DEBUG_OPTIONS = "-O0";
DEBUG_FLAGS = "";
DEBUG_LINK = "";
RELEASE_BLITZ = "1";
RELEASE_LINKMODE = "1";
RELEASE_OPTIONS = "-O3 -ffunction-sections -fdata-sections";
RELEASE_FLAGS = "";
RELEASE_LINK = "-Wl,--gc-sections";
DEBUGGER = "gdb";
ALLOW_PRECOMPILED_HEADERS = "0";
DISABLE_BLITZ = "0";
PATH = "/home/buildbot/.local/soft/llvm-mingw/git/bin;/home/buildbot/.local/soft/llvm-mingw/git/x86_64-w64-mingw32/bin;/home/buildbot/.local/soft/upp/2022.2/SDL2/lib/x64;/home/buildbot/.local/soft/upp/2022.2/pgsql/x64/bin;/home/buildbot/.local/soft/upp/2022.2/mysql/lib64;";
INCLUDE = "/home/buildbot/.local/soft/upp/2022.2/SDL2/include;/home/buildbot/.local/soft/upp/2022.2/pgsql/x64/include;/home/buildbot/.local/soft/upp/2022.2/mysql/include;/home/buildbot/.local/soft/upp/2022.2/openssl/include;";
LIB = "/home/buildbot/.local/soft/upp/2022.2/SDL2/lib/x64;/home/buildbot/.local/soft/upp/2022.2/pgsql/x64/lib;/home/buildbot/.local/soft/upp/2022.2/mysql/lib64;/home/buildbot/.local/soft/upp/2022.2/openssl/lib64;";
LINKMODE_LOCK = "0";
I wrote a tiny tool to generate bm files for all configurations I use.
Regards,
Novo
|
|
|
|
|
Re: compile on one operating system for another [message #61578 is a reply to message #61544] |
Wed, 19 March 2025 20:34   |
Tom1
Messages: 1301 Registered: March 2007
|
Ultimate Contributor |
|
|
Novo wrote on Thu, 13 March 2025 22:42Tom1 wrote on Thu, 13 March 2025 11:10Hi Novo,
You mean from within TheIDE using clang? Would you like to share the details on how to do that, maybe even bm file(s)?
Best regards,
Tom
Hi Tom,
I use llvm-mingw.
I use llvm-mingw with umk to compile with a buildbot service in my homelab and with TheIDE to compile on desktop.
Below is a bm file from the buildbot service.
BUILDER = "CLANG";
COMPILER = "x86_64-w64-mingw32-clang++";
COMMON_OPTIONS = "";
COMMON_CPP_OPTIONS = "-Wall -Wno-logical-op-parentheses -std=c++17";
COMMON_C_OPTIONS = "";
COMMON_LINK = "";
COMMON_FLAGS = "WIN32";
DEBUG_INFO = "2";
DEBUG_BLITZ = "1";
DEBUG_LINKMODE = "1";
DEBUG_OPTIONS = "-O0";
DEBUG_FLAGS = "";
DEBUG_LINK = "";
RELEASE_BLITZ = "1";
RELEASE_LINKMODE = "1";
RELEASE_OPTIONS = "-O3 -ffunction-sections -fdata-sections";
RELEASE_FLAGS = "";
RELEASE_LINK = "-Wl,--gc-sections";
DEBUGGER = "gdb";
ALLOW_PRECOMPILED_HEADERS = "0";
DISABLE_BLITZ = "0";
PATH = "/home/buildbot/.local/soft/llvm-mingw/git/bin;/home/buildbot/.local/soft/llvm-mingw/git/x86_64-w64-mingw32/bin;/home/buildbot/.local/soft/upp/2022.2/SDL2/lib/x64;/home/buildbot/.local/soft/upp/2022.2/pgsql/x64/bin;/home/buildbot/.local/soft/upp/2022.2/mysql/lib64;";
INCLUDE = "/home/buildbot/.local/soft/upp/2022.2/SDL2/include;/home/buildbot/.local/soft/upp/2022.2/pgsql/x64/include;/home/buildbot/.local/soft/upp/2022.2/mysql/include;/home/buildbot/.local/soft/upp/2022.2/openssl/include;";
LIB = "/home/buildbot/.local/soft/upp/2022.2/SDL2/lib/x64;/home/buildbot/.local/soft/upp/2022.2/pgsql/x64/lib;/home/buildbot/.local/soft/upp/2022.2/mysql/lib64;/home/buildbot/.local/soft/upp/2022.2/openssl/lib64;";
LINKMODE_LOCK = "0";
I wrote a tiny tool to generate bm files for all configurations I use.
Hi Novo,
Thanks for the info. It's unfortunate that Linux Mint does not have a package for llvm-mingw... so it takes a bit more effort to get it going.
Best regards,
Tom
|
|
|
Re: compile on one operating system for another [message #61625 is a reply to message #61578] |
Mon, 31 March 2025 18:00   |
Novo
Messages: 1430 Registered: December 2006
|
Ultimate Contributor |
|
|
Tom1 wrote on Wed, 19 March 2025 15:34
It's unfortunate that Linux Mint does not have a package for llvm-mingw... so it takes a bit more effort to get it going.
I personally build it from the src ...
Regards,
Novo
|
|
|
Re: compile on one operating system for another [message #61629 is a reply to message #61578] |
Tue, 01 April 2025 20:07   |
Novo
Messages: 1430 Registered: December 2006
|
Ultimate Contributor |
|
|
Tom1 wrote on Wed, 19 March 2025 15:34It's unfortunate that Linux Mint does not have a package for llvm-mingw... so it takes a bit more effort to get it going.
Actually, llvm-mingw ships prebuilt version for Ubuntu. Linux Mint is based on Ubuntu ...
Regards,
Novo
|
|
|
Re: compile on one operating system for another [message #61633 is a reply to message #61545] |
Wed, 02 April 2025 19:13  |
Novo
Messages: 1430 Registered: December 2006
|
Ultimate Contributor |
|
|
Novo wrote on Thu, 13 March 2025 16:48There is also a Mac OS X cross toolchain for Linux, FreeBSD, and OpenBSD called osxcross.
I tried to set it up several years ago but haven't finished the project.
I was able to make it work. U++ requires compiler-rt installed. It took me quite a lot of time to figure out.
Regards,
Novo
|
|
|
Goto Forum:
Current Time: Fri Apr 25 12:43:02 CEST 2025
Total time taken to generate the page: 0.00879 seconds
|
|
|