Hundreds of people in the South African capital Pretoria demonstrated on Friday against a visit by U.S. President Barack Obama, marching near a hospital where anti-apartheid hero Nelson Mandela lay critically ill.

Flying on board Air Force One from Senegal, Obama paid tribute to Mandela who as South Africa's first black president led the nation out of apartheid, but said he was not seeking a "photo op" with the ailing statesman.