Rebuilding the Elements RTL

Hello,

I think that the RTL is a pretty good start but I can already see things that I’m going to want to add / change / debug. Aside from downloading the RTL2, IslandRTL, and possibly the DelphiRTL repositories on GitHub what is required? Do you have any documentation available?

The following items are currently downloaded / installed:

  • RemObjects Elements with Visual Studio 2015 - 10.0.0.2287
  • NetBeans with JDK 8
  • Android Studio IDE (android-studio-ide-173.4720617-windows)
  • RTL2, IslandRTL repositories

I’m guessing I’ll need to install CrossBox on the Mac mini. Same for Ubuntu Linux?

Thanks!

Depends on what need, really.

For one, you don’t need a remote server to build Island/Linux projects (at all), not for Cocoa static libraries (for Cocoa executables, apps and dynamic libraries, you’ll need a connection to the Mac). So all three libraries should build locally for all platforms, all you need is a recent Elements, and the Java SDK, to build the Cooper versions. (you don’t even need Netbeans, Android Studio or the Android SDK, for this)

Also FTR, for when you do need to connect to a Mac (or Linux, for debugging/testing), all you need is SSH, since the new CrossBox 2 no longer requires the CrossBox app. See https://docs.elementscompiler.com/Tools/CrossBox/CrossBox2/.

Apart form that, just check out the projects, open them, and build.

  • Island RTL has no dependencies
  • Elements RTL will depend omg Island RTL (for Island only, of course). If you make changes to Island RTL that Elements RTL needs to see, you’ll want to adjust the references in your local project so that their hint path points to your own built copy of Island RTL.
  • Delphi RTL will depend on Elements RTL, for all platforms

What changes/additions do you foresee? We should coordinate.

Marc,

Thanks for the info!

I’ve developed a large library of code that the other developers on my team utilize for creating applications. I want to start migrating this library to Elements and would like to implement some additional .NET compatibility things so I have less code to touch up.

For example. there’s a lot of “String.Empty” and “String.IsNullOrEmpty()” in my code. These are just the first things that pop into my head as I write this (it’s been a long day). I suppose if you support extension methods I could go that route too.

I’ll work at getting my list together over the next week or so.

1 Like