> > If I use -pie with ld, and use crt1.o instead of Scrt1.o, it still > > works. So what is the point of switch from crt1.o to Scrt1.o when > > -no-pie is removed from gcc options. P. S. it won't work with vanilla binutils and glibc. If it works on your system it means the distro developers did some hacks (beautiful or ugly, anyway) again. That's what I meant by stating "features and difficulties from real-world systems" in previous posts. At least I won't suggest someone to start learning Linux from Ubuntu... Too many "hacks" there. -- Xi Ruoyao <xry111@xxxxxxxxxxxxxxxx> School of Aerospace Science and Technology, Xidian University