First page Back Continue Last page Overview Graphics
Lessons Learned from Porting
In my experience, most portability problems come from programmer laziness, expressed as ambiguity.
Bad assumptions about objects all being 32 bits!
- IA-64 is “LP64” Integers 32 bits, Long and Pointers 64
- Compiler “implicit declaration” warnings are really errors
Mixing PIC and non-PIC at linker time is a bad idea...
Not all platforms have all features
- Serial consoles on servers
- No sound hardware on mainframes
New architectures MUST track development kernel and toolchain revisions, or upstream maintainers ignore them