Difference between revisions of "SDK Compatibility"
Revision as of 21:47, 5 June 2012
This page has not been completed. Parts may be missing or reorganized before completed. Information is provided as-is and may have errors.
The original fx-9860-derived "miniSDK" contains some strange design decisions. Some of these have been improved in libfxcg, mostly by moving header files around and renaming some functions. The full list of renamed functions is given in Category:Renamed Syscalls.
Many older programs will not compile successfully with the new libfxcg. If the symbol _FXCG_MINICOMPAT is defined at compile-time, the legacy symbols will be provided and mapped to the new names, and the legacy headers will become available. It is strongly recommended that all new development use the new names exclusively.
In most cases, this should involve simply adding a command-line argument to the compiler invocation to define the symbol. For example, in the typical Makefile:
CFLAGS=-m4a-nofpu -mb -Os -mhitachi -Wall -nostdlib -I../include -lfxcg -lgcc -L../lib -D_FXCG_MINICOMPAT
If you use the minicompat mode and find something that doesn't work as expected, consider it a bug and please report it.