From mboxrd@z Thu Jan 1 00:00:00 1970 From: Timur Tabi Date: Thu, 19 Jun 2008 13:44:21 -0500 Subject: [U-Boot-Users] Non-static global variables cause relocation to fail Message-ID: <485AA905.9030907@freescale.com> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de I tried to find documentation on this, but couldn't. I've discovered, on PowerPC 85xx systems at least, that the mere presence of a non-static global variable, even if it isn't used by any code, will cause relocation to fail. Exactly how it fails, I can't say, but U-Boot does hang. If I make the global variable static, the problem goes away. Note that I have no code that actually references the variable. It just sits there, occupying space. Fortunately, the data structure doesn't need to be non-static. I just forgot to put 'static' in its definition. Of course, it would have been nice to know this up front. Can someone explain why this is the case? Do I need to do anything special in my code to access global variables, static or not static? -- Timur Tabi Linux kernel developer at Freescale