建安十七年(212年),刘备进驻葭萌。张松的哥哥广汉太守张肃害怕灾难临头,就把张松的图谋禀告了刘璋,刘璋将张松收捕处死,下令所有关隘的守卫部队封锁道路。刘备大怒,掉转兵力攻打刘璋。双方战争历时近三年,期间刘璋军杀死了刘备军军师庞统,使得刘备陷入苦战。后来诸葛亮、张飞、赵云三路援军由荆州支援刘备。建安十九年(214年),刘备进兵包围成都,并派简雍劝降刘璋。当时城中有三万精良部队,粮食够支持一年,官吏百姓都想抵抗。