It's not weak, it's just not good at casting the spells it wants to cast that day, unlike Clerics, Druids, Paladins, Artificers, and Wizards.
People complaining about this lack of versatility does not warrant you telling them to play a different class.
I'm not kicking them out of the class, but not every class was meant to be enjoyable for everyone.
Personally I dislike playing wizards and avoid it if I can. There's nothing necessarily wrong with wizards in general, I just don't like their playstyle. If someone advised me to play a different class, I wouldn't find it offensive, mean, or dismissive.
Hopefully no one thinks that I'm telling them that they aren't allowed to play a sorcerer, but just like how not all types of games work in every game system, not all playstyles work in all classes.
People have multiple complaints about all the classes in the game. Barbarians don't have enough out-of-combat stuff, Bards don't do enough damage, Clerics can't heal well enough, druids are too reliant on wildshape, fighters start to need magic items, monks rely on short rests, rogues can't NOVA, paladins suck at range, wizards are too squishy.
There are always things to push these weakness out, but a weakness is still a weakness even when you try to apply a bandaid to it. The player should recognize the weakness and decide they would like to play despite it.
If you want to play sorcerer even though you don't like the playstyle, by all means. But distaste for it afterwards should not be a surprise, and it shouldn't be assumed that something's wrong just because you don't enjoy it.
A class could be perfectly designed from levels 1-20 and you still can't guarantee it will be fun for everyone who uses it.