QB45 had various libraries you could compile into your program. For instance, if you wanted the smallest possible executable, you would only include the libraries needed in the program. For instance, if your program didn't have any error traps, you could leave the /E and /X switches out of your manual compilation routine. I almost always complied with the library switches o/s/e/x. I wonder why?
Pete
PS the /o switch substituted the BCOM45 library for the standard BRUN45 one. I made stand alone exes that way. Also, /s compiled the routine with quoted strings in the object, rather than including the symbol table. This saved memory for programs using extensive string variables.