I think this depends on society.

I think reason is historic.

English occupation had its effect on spreading weapons on US. American civil war had its effect too.

sticking to the post which focuses on US, I would say the article of right to bare arms has its historic roots. at the time where the states were united, there were big meetings and states leaders had to give measures (like the right to protest and free expression) in order to assure every state that it won't be controlled. Rights to have arms may have been one of the measures put in place to achieve union of the states. This might a big obstacle in banning weapons as it might be viewed as violation of constituition.