What does a syntax error mean when it says: "near text "else"; expecting "end", or "(" "?
Prior to VHDL-2008, a WITH-SELECT was a concurrent construct, not a sequential one. So you could't put a WITH-SELECT clause inside a sequential process. 

Use a CASE statement instead. That will clear all the error messages and is supported across all releases of the VHDL standard.