Quote:
Originally Posted by Sim085
From what I understand the first command creates the linker library from the fd file. The second command is creating the header file (under the proto directory of vbcc), this is what I would include in my source files.
|
Correct.
Quote:
However I do not understand what the third command is doing.
|
It generates assembler inlines to call the library functions directly, without going over the stub routines from the linker library. vbcc generally puts these inline-headers into the
inline
directory with the name
libname_protos.h
.
It is automatically included and used as soon as you include
<proto/libname.h>
. If you want to use the stubs, you would include
<clib/libname_protos.h>
instead.
Quote:
When I open the header file generated I can see there is the following entry but I cannot identify any clib directory under my vbcc installation.
|
The clib directory is in the official NDK. All third party libraries are expected to provide their function proto types in a clib header file and follow the general naming of
clib/libname_protos.h
.
This doesn't seem to be the case with the RegExp library you found - which is also somewhat old...
Looking into the RegExpLib archive I guess that
regexp.h
is meant as proto/clib header file - it even includes pragmas for SAS/C inline calls.
You can try copying it into your clib directory and rename it to
RegExp_protos.h
. Then use it with the clib option from the "special 70" fd2pragma call. fd2pragma needs these proto types to generate valid inline functions with matching types.
EDIT: If you don't care about optimized library calls, just delete the
#include <inline/RegExp_protos.h>
from your proto-header and you're done.