Unsuccessful Installation

Hi

I'm having trouble installing by the TMS Smart Setup/ Both the GUI and the TMS Dashboard.

I've installed FNC Core successfully. However, when I try to insall FNC UI Pack, it is not installing properly.

I've attached the log file.
logs.zip (35.5 KB)

From your logs, I cannot see issues?

There are no errors, but FNC UI Pack is not installed in the IDEs for both Delphi 11 and 12.

I see the following in the log:

--- Skipped products in platforms ---
[INFO ] [2025-06-11 12:45:18.084] tms.fnc.uipack in delphi11.android32 (tms.fnc.core not set to be installed in that configuration)
[INFO ] [2025-06-11 12:45:18.084] tms.fnc.uipack in delphi11.android64 (tms.fnc.core not set to be installed in that configuration)
[INFO ] [2025-06-11 12:45:18.084] tms.fnc.uipack in delphi11.iosdevice64 (tms.fnc.core not set to be installed in that configuration)
[INFO ] [2025-06-11 12:45:18.084] tms.fnc.uipack in delphi11.macos64intel (tms.fnc.core not set to be installed in that configuration)
[INFO ] [2025-06-11 12:45:18.084] tms.fnc.uipack in delphi11.win32intel (tms.fnc.core not set to be installed in that configuration)
[INFO ] [2025-06-11 12:45:18.084] tms.fnc.uipack in delphi11.win64intel (tms.fnc.core not set to be installed in that configuration)
[INFO ] [2025-06-11 12:45:18.084] tms.fnc.uipack in delphi12.android32 (tms.fnc.core not set to be installed in that configuration)
[INFO ] [2025-06-11 12:45:18.084] tms.fnc.uipack in delphi12.android64 (tms.fnc.core not set to be installed in that configuration)
[INFO ] [2025-06-11 12:45:18.084] tms.fnc.uipack in delphi12.iosdevice64 (tms.fnc.core not set to be installed in that configuration)
[INFO ] [2025-06-11 12:45:18.084] tms.fnc.uipack in delphi12.iossimulator64arm (tms.fnc.core not set to be installed in that configuration)
[INFO ] [2025-06-11 12:45:18.084] tms.fnc.uipack in delphi12.macos64arm (tms.fnc.core not set to be installed in that configuration)
[INFO ] [2025-06-11 12:45:18.084] tms.fnc.uipack in delphi12.macos64intel (tms.fnc.core not set to be installed in that configuration)
[INFO ] [2025-06-11 12:45:18.084] tms.fnc.uipack in delphi12.win32intel (tms.fnc.core not set to be installed in that configuration)
[INFO ] [2025-06-11 12:45:18.084] tms.fnc.uipack in delphi12.win64intel (tms.fnc.core not set to be installed in that configuration)
[INFO ] [2025-06-11 12:45:18.084] tms.fnc.uipack in delphi12.win64xintel (tms.fnc.core not set to be installed in that configuration)
[INFO ] [2025-06-11 12:45:18.084]

Almost all these platforms are installed and FNC Core WAS installed for all these platforms.

Can you please send your tms.config.yaml file you have in your Smart Setup folder?

tms.config.zip (3.3 KB)

I think I know what might be happening. We should have a fix soon.

Tx. Kindly let me know when you have the fix.

I have another issue. When I use the "TMS Dashboard" desktop application to install different products, many times my computer crashes. Not sure if it's using a lot of resources. FYI, it is the ONLY application that crashes my computer. Not always, but sometimes. So, I NEVER install more than 1 product at a time. But still, if my computer crashes during a product installation, that product is shown as installed, but it is NOT. Moreover, most of the times, I have to uninstall all related products and reinstall them one by one. E.g., if I'm installing FNC Maps and the computer freezes, I have to uninstall ALL FNC products and reinstall them.

We aren't aware of computer crashes with smartsetup (I myself build products all the time with all 64 cores at 100% ), but it does indeed use a lot of resources as it tries to compile all at once. (In my machine, this means that a FlexCel build for release went from 8 hours to 45 minutes).

But if you are having issues, one thing you can do is to modify "build cores" in tms.config.yaml:

# general options that are not "per product".
tms smart setup options:

  # 0 means use the optimum for the cores in the machine (default). 1 means single core. 2 two cores and so on.
  build cores: 0

Instead of "0" (which will use all of your existing cores), you can write something like 1 or 2 here. It is not guaranteed that this will be the maximum number of threads used (because Delphi's parallel library doesn't guarantee it), but it should remove some of the pressure during the build.

But still, if my computer crashes during a product installation, that product is shown as installed, but it is NOT. Moreover, most of the times, I have to uninstall all related products and reinstall them one by one. E.g., if I'm installing FNC Maps and the computer freezes, I have to uninstall ALL FNC products and reinstall them.

I am not sure about dashboard, but smartsetup is built from the start to be very resilient to any crashes: It keeps a detailed list of what was done until the moment it crashes, and should not try to reinstall anything that already worked fine. This was the reason we started developing it. (I was very tired of a 8-hour build of FlexCel in all delphis/all platforms crashing for some random error like an antivirus going crazy, and having to restart all again).

So it might not be possible to do if from dashboard (I don't really know right now), but you can always go to the comand line, cd to the folder where tms.config.yaml is, and type:

tms build

This should finish installing whatever was left from before the crash.

Ps: The fix for this was already commited, we should publish a new version very soon.

I'm guessing when the update is published, TMS Smart Setup will be updated automatically when run. Correct?

Depends in how you call smartsetup. I believe Dashboard will indeed automatically download it.
If using the command line, it will warn you about a new version, but not download it automatically.
To update from the command line, you need to type tms self-update

By the way, 1.9 was already released and should have this fixed

A post was split to a new topic: SmartSetup not installing dependencies

Updated TMS Smart Setup to the latest version 1.9. Unfortunately, the problem still persists. I've attached the log file that includes the tms.config.yaml file. I think the problem is the same as before.
logs.zip (41.4 KB)

I am not sure what can be happening now: Originally I could reproduce your issue and it was related to a bug introduced in 1.8 to handle different products having different configurations.

But now it shoudn't be happening, and I can't reproduce it here. I will investigate today to see if I can figure out what it is, but in the meantime, if you go to the command line, cd to the folder where you are installing, and do:

tms build -full

Does the problem still happen? If it doesn't then this might be related to partial builds, so I would know where to start looking

I could reproduce it, and it was indeed related to partial builds.
We just released 1.10 which should have this fixed for good :folded_hands:
In fact, the full code was removed so if it still manages to show the message it will be something :slightly_smiling_face:

Hi. Before update 1.10 was released, I installed all the FNC components. Except FNC Core all the other installations were problematic like before. After installing all the FNC products, like you asked above, I ran:

tms build -full

Everything was OK after that.

So, I didn't install any products to test version 1.10.

Hi. Coming back to the crash issue, just wanted to let you know, that I checked and evertime I run "tms update", "tms build" or "tms build -all", my CPU goes to 100%.

Have you set "build cores" to 1 or 2? (see Unsuccessful Installation - #9 by adrian )

By default, smartsetup is designed to use all the cores you have, so going to 100% is expected and desirable (as long as it doesn't crash, why wouldn't you want to use all the CPU you have in order to finish faster?). But, if it is crashing or you prefer to not use all the cpu in the installer, you can manage that with "build cores".

As said, myself, I use them all, all of the time, and I haven't seen any crashes. It took years to get to the point where it is that stable (building delphi projects in parallel is very tricky). But being able to use all cores to install was the reason I started smartsetup. It allowed me to bring the time to build FlexCel in all delphis from XE to 12, all platforms, from 8 hours to 45 minutes. Here you can see a "normal" FlexCel build in my machine.

If the 100% usage is happening with "build cores" = 1 please let us know, that should not happen.

Hi. I'm using "build cores: 2". My PC has 10 cores and 20 logical processors.
So, is 100% usage normal?

No, that shouldn't be normal. I tried it here, and with build cores: 2 it never goes over 50%, but:

  1. There have been many changes since 1.10, and some affect threading. So it might be that 1.10 uses more cpu. It is probably good that we wait until you can retry it with 2.0 when it it published next week
  2. I just checked, and "build cores" only applies to the build itself, not to parallel downloading or uninstalling, where indeed, it could go to 100%. While I guess it was technically right (it was "build cores", not "download cores"), I've fixed that here so it applies to all parallel operations and the fix should be available in 2.0. This might be the cause of the issue you are seeing, because if we download with all the cores and then limit the threadpool, delphi parallel library might keep it unlimited.

Other than that: Delphi parallel library doesn't guarantee that 'build cores' = 2 will only use 2 cores, but well, it shouldn't use them all. Also when compiling there might be a full core or more used by the Antivirus, and there might be others processes like indexing processes, etc that also run. When you get time to recheck it with 2.0, it would be good to know how much of the cpu is used by smartsetup, and how much by other processes like the antivirus.

I will investigate if something else could be happening, but no, with build cores=2 you shouldn't get 100% cpu.

We've just released 2.0, I wonder if you can try it and report if you still see 100% usage?