You have only obligations when you distribute the results. Whatever you do in your private basement is completely unaffected by that. The GPL gives you freedom to do whatever you please. That's the whole point of it!
When you distribute binaries resulting form work based on GPL code than the people receiving those binaries (and only them) are eligible to get alongside the source code which allows them to rebuild the binaries you distributed to them. That makes sure that those other people also have the same freedom as you to do whatever they please with the programs and code. So the GPL preserves freedom among users of GPL code.