The speedy winger, often hailed as the most creative of the Zambian players, has failed to pass a fitness test on a groin injury and will not feature in Wednesday’s game in Johannesburg.
It will come as a blow to the African champions as they look for a morale-boosting win over the African Nations Cup hosts.
Kalaba was injured in September playing for his Congolese club TP Mazembe Englebert against Esperance of Tunisia in the African Champions League but Zambian officials called him up despite his spell out of the game to check on his condition.
But Zambia still have a virtually full squad for the game including a return for the Dutch based striker Jacob Mulenga.
He missed their last two Nations Cup qualifiers against Uganda because of injury and a family bereavement.
Zambia also recalled Collins Mbesuma, one of five players based at South African Premier Soccer League clubs.
Mbesuma has played against South Africa in four previous internationals but never scored.
The Zambians were still awaiting the arrival of midfielder Chisamba Lungu, who plays in the Russian second division. He is the last of a strong group of expatriate players to make their way to Johannesburg.