4D v19: Evolution of Client/Server Application Building

On Mac, application signature has become a standard, and since Big Sur, you can’t even run unsigned applications. In the past, we published a workaround to build client-server applications running on a Windows server and accepting connections from Mac clients. With the release of 4D v19, we have updated the application building in 4D to handle this case. Here is how you can build a single platform or a cross-platform application in v19.

Building a single platform application

If your server and your clients are on the same platform, be it Windows or Mac, it’s very easy to build your application:

  1. Open the Client/Server tab of the Build Application window.
  2. Check Build server application and specify a proper path to the 4D Server folder (on Windows) or application (on Mac).
  3. Check Build client application and specify a proper path to the 4D Volume Desktop folder (on Windows) or application (on Mac).
  4. You can check Allow automatic update of client application for your platform if you want to automatically update old clients. In that case, it’s important to increase the current version number.
  5. Take a moment to verify that your license and certificate are properly set in the Licenses & Certificate tab, and click on Build to build your application.

 

You will find your client and server applications inside the [name of your base]_build folder located in the same folder as your database.

Building a cross-platform application

If you need to build a cross-platform application, with both Windows and Mac clients, the procedure is different depending on whether your server is running on Windows or Mac.

If your server is running on Mac, you will also need to check Allow automatic update of Windows client application and give the path to a Windows 4D Volume Desktop folder. You can click on Build to build your server and both of your clients.

If your server runs on Windows, it’s a bit more complicated, as your application needs to be signed on Mac and compiled for Silicon:

  1. On a Mac, compile your base for all platforms.
  2. In the Build Application window, go to the Client/Server tab and check only Build client application, and if you need an automatic update, check Allow automatic update of Macintosh client application. If you use automatic update, the build will create a Mac client update. The Mac client update is the file named update.mac.4darchive located in the Upgrade4DClient folder next to your Mac client application.
  3. Then, on Windows, open the database compiled on Mac and follow the procedure to build a single platform application. If you need to upgrade your Mac client, check Allow automatic update of Macintosh client application and provide a path to the Mac client update. You can now build your cross-platform application!

 

These new v19 functionalities will streamline application building.
Of course, if you have any question about these changes, let us know on the 4D Forum.

Nicolas Brachfogel
• Product Owner & Senior Developer • Nicolas Brachfogel joined 4D in 2017 as a Senior Developer (4D Server and networking). As Product Owner to manage the release of Apple Silicon, he's in charge of writing user stories and translating them into functional specifications, as well as making sure that feature implementations meet customer needs. A graduate of the Institut Supérieur d'Informatique Appliquée (INSIA), Nicolas began his career as a software developer in 2001. Following several years coding in Java and C++, he went on to specialize in client-server development for video game companies. As a server developer/architect, he successfully worked on the server architectures of many games (Dofus Arena, Drakerz, Trivial Pursuit Go!).