Re: Problem with gkrellfire plugin

Jack <[email protected]> Thu, 11 Apr 2019 21:07:14 -0400
Newsgroups gmane.comp.gnome.apps.gkrellm
Message-ID <[email protected]>
On 4/11/19 7:53 PM, Stefan Gehn wrote:
> On 11/04/2019 22:19, Jack Ostroff wrote:
>> On 2019.04.11 13:20, Jack wrote:
>>> On 2019.04.11 04:37, Peter Humphrey wrote:
>>>> On Wednesday, 10 April 2019 23:58:26 BST you wrote:
>>>>> A gkrellm_init_plugin() function is supposed to be in each plugin 
>>>>> so something is wrong with the gkrellfire plugin.  Maybe it is 
>>>>> corrupted or the plugin has had symbols stripped.
>>
>> [snip....]
>>
>> Something is definitely strange.  If I unpack the source, and do 
>> "grep init gkrellfire.c" I get
>>
>> // All GKrellM plugins must have one global routine named init_plugin()
>> __declspec(dllexport) GkrellmMonitor 
>> *gkrellm_init_plugin(win32_plugin_callbacks* calls)
>> GkrellmMonitor *gkrellm_init_plugin()
>
> The above signature is quite outdated. The win32 part is not needed 
> anymore and for Unix systems it does not mark the function as exported.
> Please try making the init function signature look like this, i.e. 
> prefix it with G_MODULE_EXPORT:
>
> G_MODULE_EXPORT
> GkrellmMonitor *gkrellm_init_plugin()
>
> Also, if needed, add the following include somewhere at the top:
> #include <gmodule.h>
>
> I wouldn't be surprised if either the default compiler configuration 
> or one of the dependencies (glib, gmodule, gtk+2) sneaks in a 
> "-fvisibility=hidden" which will only export symbols marked as such.
>
> Regards,
> Stefan

Stefan,

Thanks for the suggestions, but I'm just a user, not the author of the 
plugin.  As I saId in a later response, I solved my problem (and 
Peter's, who started this thread) by noting that the Makefile didn't 
actually include gkrellfire.o when linking gkrellfire.so.

Jack