I was trying to create wrappers for my GStreamer Plugins (for glib libraries).
I changed all the name of functions, data tyoes, structure names, macro names etc. according to my naming convention.
eg: gint will be gbobint. GType will be GBobType.
I have edited all the header files and made corresponding wrapper functions for those functions that I am using in my plugins.
I have made changes in my plugins also.
With out any error or warning I have created a shared library for that wrappers.
ie, my plugins will call wrapper functions, from wrapper functions we will call original glib funtion.
I have edited all the header files which is coming under glib,gmodule and gobject.
After compiling my edited plugin with my wrapper library I got library for plugin( that is what I want).
But after compiling this library I am geting undefined references.
Like Undefined reference to IA__g_boxed_free __attribute.
I am geting somany like this.
Actualy this is there in gobjectalias.h like
extern __typeof (g_boxed_free) IA__g_boxed_free __attribute((visibility(“hidden”)));
#define g_boxed_free IA__g_boxed_free
There is a corresponding .c file for this header file.Its name is gobjectaliasdef.c.In that file it is showing like;
extern __typeof (g_boxed_copy) g_boxed_copy __attribute((alias(“IA__g_boxed_copy”), visibility(“default”)));
These header file and c file belongs to gobject.
So far I have not made any wrapper file for these gobjectalias.h file.
I am not able to understand from where it comes and how to solve it .
And how should I change this header file according to my naming convention?
Currently I have given like:
extern __typeof (g_bob_boxed_copy) IA__g_boxed_copy __attribute((visibility(“hidden”)));
#define g_bob_boxed_copy IA__g_boxed_copy
Please help.And one more thing I am geting lots of undefined reference like this.
Iam running this on Fedora 6.
Please give your suggestions as early as possible.