Wireshark mailing list archives

Re: RPM and inter-plugin dependencies‏


From: Jaap Keuter <jaap.keuter () xs4all nl>
Date: Fri, 30 Nov 2012 21:44:53 +0400

Hi Austin, 

Forget about the #include. That's for the compiler to know which file to include in the compilation. This has nothing 
to do with the object code you're distributing. 

You state that there's a detailed error message, but you never quote it. What does it tell you?

trunk-1.6 SVN head now is version 1.6.12 now (rolled over to 1.6.13 already)

Thanks,
Jaap

Send from my iPhone

On 30 nov. 2012, at 18:43, Austin Albright <chuckbubba777 () hotmail com> wrote:


Wireshark Gurus,

First things, first...
My development system is RHEL v5.6 and as it doesn't support a "new" enough version of GTK, my work uses the v1.6.9 
SVN head.

That said, I have created my own plugin, it builds and works great on the system I've developed it on.  However, when 
I build the RPM, and install the RPM on another machine (identical to my development system minus all the source 
code) I always get a "couldn't load module" error.  The error message is quite detail and so I know it is because my 
plugin is using some common functions from the wimax plugin (i.e. wimax_tlv.c).

I include the wimax_tlv.h in my source as follows:
#include <plugins/wimax/wimax_tlv.h>

While grasping at straws I even tried:
#include "plugins/wimax/wimax_tlv.h"

Neither #include format made a difference.  My build of Wireshark worked regardless on my development system and gave 
the same exact "couldn't load module" error on the production system.

I don't get any warnings or complaints about the "#include <plugins/wimax/wimax_tlv.h>" on my development system when 
compiling or building the RPM, but it sure seems to have a problem with it on the production system.

One other notable thing is that on my development system when I start Wireshark and look at the plugins listing 
(Help->About->Plugins) my plugin is listed, but on the production system where Wireshark was installed using my RPM, 
it is not listed in the plugins listing.  I followed the directions for creating and including a plugin in 
README.plugin, but obviously I've missed something.  Also, my plugin library does get placed in 
/usr/lib/wireshark/plugin/<version>/ on the production system when I install my RPM.

I really don't want to have a redundant copy of the code in my custom plugin's directory so that I won't have to 
worry about merging corrections\updates.  I even grep'ed my entire Wireshark directory on my development system 
looking for another dissector or plugin that included a header from another plugin\dissector and found one 
(gtk/voip_calls.c) which contains a #include of a header from a dissector (gtk/voip_calls.c:60:#include 
<plugins/unistim/packet-unistim.h>).  So it seems like what I'm doing should work, but clearly I'm in over my head.  
Any suggestions would be much appreciated.

Thanks,
Austin
___________________________________________________________________________
Sent via:    Wireshark-dev mailing list <wireshark-dev () wireshark org>
Archives:    http://www.wireshark.org/lists/wireshark-dev
Unsubscribe: https://wireshark.org/mailman/options/wireshark-dev
            mailto:wireshark-dev-request () wireshark org?subject=unsubscribe
___________________________________________________________________________
Sent via:    Wireshark-dev mailing list <wireshark-dev () wireshark org>
Archives:    http://www.wireshark.org/lists/wireshark-dev
Unsubscribe: https://wireshark.org/mailman/options/wireshark-dev
             mailto:wireshark-dev-request () wireshark org?subject=unsubscribe

Current thread: