There are many reasons for the synthesis step to be taking a long time.
If the generated HDL does not fit on the FPGA or very close to maximum available part count on the FPGA can lead to long synthesis times.
Please refer to your synthesis tool documentation on the best practices to improve synthesis times.