Flanked by two heavily armed guards, Roof made his first court appearance on Friday via video link from a Charleston detention center. The 21-year-old faces charges of nine counts of murder and possession of a firearm during the commission of a violent crime.
The suspected terrorist remained silent throughout the hearing, answering only to tell the judge his age and that he was unemployed.
A bond of $1 million (881,000 euros) was set on the weapons charge, but no bail was set for the murder charges. Roof will remain in custody until his next court appearance on October 23.
'No room for hate'
Relatives of six women and three men killed on Wednesday during a Bible study group appeared at Charleston county court on Friday to speak of their loss.
The daughter of one victim told Roof, "I forgive you."
"We are the family that love built. We have no room for hate. So we have to forgive," another relative said.
Roof allegedly opened fire at worshippers at the nearly 200-year-old church on Wednesday night. He was arrested a day later in North Carolina, about 350 kilometers (220 miles) from Charleston, and brought back to South Carolina.
According to law enforcement sources quoted by US media, Roof confessed to the attack and said his goal was to start a race war. He also reportedly told police that he "almost didn't go through with it because everyone was so nice to him," sources told broadcaster NBC, but ultimately, he decided to "go through with his mission."
Roof - whose Facebook page includes a picture of him wearing the flags of former white supremacist regimes in South Africa and Rhodesia - had allegedly complained to a former friend that "blacks were taking over the world."
US Justice Department spokeswoman Emily Pierce said on Friday that the shooting is being investigated as "an act of domestic terrorism."
ksb/sms (Reuters, AFP, AP, dpa)