avr-gcc isn't a good test substitute in this case. AVR devices are harvard architecture. This means, code and data address space are separate. Functions called with a pointer to their data (such as printf) cannot know whether it points to code or data address space. Accessing one or the other requires totally different machine instructions. avr-gcc therefore HAS to put the printf parameters into data section or else they weren't accessible to printf. Except you use the printf_P() variant and define the parameters with the PSTR macro (which puts them into program section)
Of course this won't help you with your original problem, but should be considered when you try to track down the issue with a "this works, and this won't" comparison. JMGross ----- Ursprüngliche Nachricht ----- Von: Martin An: mspgcc-users@lists.sourceforge.net Gesendet am: 23 Dez 2010 05:47:32 Betreff: Re: [Mspgcc-users] Combining multiple object files into a relocatable file and error in relocation entry. [...] I wondered if this problem is specific to msp430, so I tried to compile that some source files for avr: In this case avr-gcc decided to put the printf arguments into the .data section, but otherwise the addends are correct for all three printf statements. ------------------------------------------------------------------------------ Learn how Oracle Real Application Clusters (RAC) One Node allows customers to consolidate database storage, standardize their database environment, and, should the need arise, upgrade to a full multi-node Oracle RAC database without downtime or disruption http://p.sf.net/sfu/oracle-sfdevnl _______________________________________________ Mspgcc-users mailing list Mspgcc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mspgcc-users