Wireshark mailing list archives

Re: RPM and inter-plugin dependencies‏


From: Alex Lindberg <alindber () yahoo com>
Date: Fri, 30 Nov 2012 08:27:18 -0800 (PST)

Just a thought, but does your plugin require a library that is on your build system but not on your install system?

A missing library will keep a plugin from running.

Alex Lindberg


________________________________
 From: Austin Albright <chuckbubba777 () hotmail com>
To: Wireshark-dev <wireshark-dev () wireshark org> 
Sent: Friday, November 30, 2012 8:43 AM
Subject: [Wireshark-dev] RPM and inter-plugin dependencies‏
 

 


 
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: