I have not been able to finf a way to link program without unittest if I link with library archives which has been compile with -unittest.
The if just one of the .a/.o has been compile with -unittest the main program is linked with unittest.
This means that you have to recompile all the libraries or else the main just run the unittest.
This has changed after the dmd compiler --DRT-testmode=run-main was introduced.
I don't know if the dmd/linker has a switch which can force unittest out of the linking process?
Best
Carsten
Comment #1 by r.sagitario — 2020-07-18T06:43:50Z
I guess you didn't mean to set component "visuald".
I don't think you can easily strip the unittests, because they are referenced by the ModuleInfo that is generated for each module. A workaround might be to embed the testmode setting into the executable:
extern(C) __gshared string[] rt_options = [ "testmode=run-main" ];
Comment #2 by robert.schadek — 2024-12-07T13:40:33Z