wxh
04-10-2006, 06:25 AM
WARNING: Background story which just adds flavor to this whole adventure precedes the actual showeq problem(s). To get to the actual showeq problems, scroll down to the long dashed line that separates the flavor from the substance. -ed.
Okay, so, the other day, I decided to try and get ShowEQ working again after a hiatus of several months...the last version that I had running was something in the early 5.x.x.x stages, but at this point, I have no idea what version that was.
So, the first sign of trouble came when I tried to get QT 3.2+ installed. I couldn't get any version of 3.2.x to compile (either the compile would fail when it got to the point where it was compiling the xft support stuff, or, if I used the -no-xft switch, it would fail later on, presumably when it was compiling stuff that was bypassed by using -no-xft). I was able to get 3.3.6 to compile, but then, when I'd do the ./configure step of building showeq, it would get upset about the QT libraries: It could find them, but when it was doing its little tests to see if it liked the libraries, it would say "something wicked happened when yada yada yada", with no clear indication of what the specific issue was.
"Well," I decided, "this install of RedHat 7.2 is probably getting a little long in the tooth anyhow. Why not get a little more with the times and see what this FC4 is that all the kids are talking about." So, I went and downloaded FC4, and spent about 10 hours trying to get it to install. No luck. It would go through the process, but then when it would come time to actually BOOT, I'd get the "grub>" prompt, and even if I manually attempted to get linux to boot, it would just abend with a kernel panic. So, I fell back to some Shrike distro CDs I'd downloaded a few months back. I installed that, and everything was going swimmingly. It booted into X just fine, and all looked good.
I downloaded QT 3.2.3, and lo and behold, it compiled and installed fine. Okay, there were some warnings about things like parameters that appeared unused in various functions here and there, but it compiled and installed. And then time for compiling showeq came.
-----------------------------------------------------------------------------------------------------------------------------
The substance of my showeq problems:
I've actually got two issues. One, i can work around, and I mention it here solely because one of the threads that I located while searching for a resolution to it implied that you guys (the devs) are somewhat flummoxed as to the cause of it, and although I don't know what the cause is, I've found a different workaround which -may- lead you to figure out what the actual problem is.
The problem I can work around is the one where, when doing ./configure, the script immediately fails, claiming that it has no idea what sort of machine I'm running on:
[root@localhost showeq-5.3.0.0]# ./configure
checking build system type... Invalid configuration `i686-pc-linux-': machine `i686-pc-linux' not recognized
configure: error: /bin/sh ./config.sub i686-pc-linux- failed
Now, I found a workaround here (yeah, I actually searched)...and that workaround was, instead of using "./configure" to use "LIBC=gnu ./configure". And that workaround actually does allow ./configure to get past the issue where it can't identify the machine on which I'm running. However, I found another workaround. Or, more to the point, I found a way to make the problem not happen at all. One of the things that I do as part of my compile process is to do an "export CC=gcc3", because it was in a "how to compile showeq for newbs" walkthrough that I found a long, long time ago. And because up until now, the configure script wouldn't succeed unless I did that. NOW, however, the configure script fails only if I DO do that. That is, if I don't export CC=gcc3, the configure script completes happily. I dunno if this will help you guys track down the problem or not, but...there you have it.
The other problem I'm having is that once the configure script completes, compilation fails:
config.status: creating Makefile
config.status: creating src/Makefile
config.status: creating conf/Makefile
config.status: creating config.h
config.status: config.h is unchanged
config.status: executing depfiles commands
Success!
Please run:
make
[root@localhost showeq-5.3.0.0]# make
make all-recursive
make[1]: Entering directory `/usr/showeq-5.3.0.0'
Making all in src
make[2]: Entering directory `/usr/showeq-5.3.0.0/src'
if g++ -DHAVE_CONFIG_H -I. -I. -I.. -I/usr/qt-x11-free-3.2.3/include -I/usr/X11R6/include -DPKGDATADIR=\"/usr/local/share/showeq/\" -I/usr/include/pcap -D_REENTRANT -O2 -Wall -g -ggdb -DDEBUG -finline-functions -DQT_THREAD_SUPPORT=1 -DDISPLAY_ICONS=false -DICON_DIR=\"/eq-icons/\" -g -O2 -MT packetcapture.o -MD -MP -MF ".deps/packetcapture.Tpo" -c -o packetcapture.o packetcapture.cpp; \
then mv -f ".deps/packetcapture.Tpo" ".deps/packetcapture.Po"; else rm -f ".deps/packetcapture.Tpo"; exit 1; fi
packetcapture.cpp: In member function `void PacketCaptureThread::start(const
char*, const char*, bool, unsigned char)':
packetcapture.cpp:98: invalid conversion from `const char*' to `char*'
packetcapture.cpp: In member function `void
PacketCaptureThread::setFilter(const char*, const char*, bool, unsigned
char, short unsigned int, short unsigned int)':
packetcapture.cpp:431: invalid conversion from `const char*' to `char*'
make[2]: *** [packetcapture.o] Error 1
make[2]: Leaving directory `/usr/showeq-5.3.0.0/src'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/usr/showeq-5.3.0.0'
make: *** [all] Error 2
Now, I also found a thread on how to potentially fix THIS problem, but I figured I'd post about it because that thread implies that the issue is an out-of-date header for pcap, and because I'm working on a completely clean install, the pcap that I've got is the one that's in the distro package linked off the front page at showeq.net, and it seems like maybe you guys would want to update that to make it more current. Or maybe not. Who knows.
** EDIT ** Nevermind...I didn't realize that pcap.h is something that's included as part of the linux install, rather than as part of showeq (this is probably due to my newbishness). In any event, I edited my pcap.h file, adding "const" in front of "char" in the declaration for pcap_lookupnet, as described in this post here:
http://www.showeq.net/forums/showthread.php?t=5374
In any event...keep up the good work. showeq is a great tool, and you all should be quite proud not only of the job you've done on it, but of the community that you've gathered around you (volatile though some of its members may be).
-w
Okay, so, the other day, I decided to try and get ShowEQ working again after a hiatus of several months...the last version that I had running was something in the early 5.x.x.x stages, but at this point, I have no idea what version that was.
So, the first sign of trouble came when I tried to get QT 3.2+ installed. I couldn't get any version of 3.2.x to compile (either the compile would fail when it got to the point where it was compiling the xft support stuff, or, if I used the -no-xft switch, it would fail later on, presumably when it was compiling stuff that was bypassed by using -no-xft). I was able to get 3.3.6 to compile, but then, when I'd do the ./configure step of building showeq, it would get upset about the QT libraries: It could find them, but when it was doing its little tests to see if it liked the libraries, it would say "something wicked happened when yada yada yada", with no clear indication of what the specific issue was.
"Well," I decided, "this install of RedHat 7.2 is probably getting a little long in the tooth anyhow. Why not get a little more with the times and see what this FC4 is that all the kids are talking about." So, I went and downloaded FC4, and spent about 10 hours trying to get it to install. No luck. It would go through the process, but then when it would come time to actually BOOT, I'd get the "grub>" prompt, and even if I manually attempted to get linux to boot, it would just abend with a kernel panic. So, I fell back to some Shrike distro CDs I'd downloaded a few months back. I installed that, and everything was going swimmingly. It booted into X just fine, and all looked good.
I downloaded QT 3.2.3, and lo and behold, it compiled and installed fine. Okay, there were some warnings about things like parameters that appeared unused in various functions here and there, but it compiled and installed. And then time for compiling showeq came.
-----------------------------------------------------------------------------------------------------------------------------
The substance of my showeq problems:
I've actually got two issues. One, i can work around, and I mention it here solely because one of the threads that I located while searching for a resolution to it implied that you guys (the devs) are somewhat flummoxed as to the cause of it, and although I don't know what the cause is, I've found a different workaround which -may- lead you to figure out what the actual problem is.
The problem I can work around is the one where, when doing ./configure, the script immediately fails, claiming that it has no idea what sort of machine I'm running on:
[root@localhost showeq-5.3.0.0]# ./configure
checking build system type... Invalid configuration `i686-pc-linux-': machine `i686-pc-linux' not recognized
configure: error: /bin/sh ./config.sub i686-pc-linux- failed
Now, I found a workaround here (yeah, I actually searched)...and that workaround was, instead of using "./configure" to use "LIBC=gnu ./configure". And that workaround actually does allow ./configure to get past the issue where it can't identify the machine on which I'm running. However, I found another workaround. Or, more to the point, I found a way to make the problem not happen at all. One of the things that I do as part of my compile process is to do an "export CC=gcc3", because it was in a "how to compile showeq for newbs" walkthrough that I found a long, long time ago. And because up until now, the configure script wouldn't succeed unless I did that. NOW, however, the configure script fails only if I DO do that. That is, if I don't export CC=gcc3, the configure script completes happily. I dunno if this will help you guys track down the problem or not, but...there you have it.
The other problem I'm having is that once the configure script completes, compilation fails:
config.status: creating Makefile
config.status: creating src/Makefile
config.status: creating conf/Makefile
config.status: creating config.h
config.status: config.h is unchanged
config.status: executing depfiles commands
Success!
Please run:
make
[root@localhost showeq-5.3.0.0]# make
make all-recursive
make[1]: Entering directory `/usr/showeq-5.3.0.0'
Making all in src
make[2]: Entering directory `/usr/showeq-5.3.0.0/src'
if g++ -DHAVE_CONFIG_H -I. -I. -I.. -I/usr/qt-x11-free-3.2.3/include -I/usr/X11R6/include -DPKGDATADIR=\"/usr/local/share/showeq/\" -I/usr/include/pcap -D_REENTRANT -O2 -Wall -g -ggdb -DDEBUG -finline-functions -DQT_THREAD_SUPPORT=1 -DDISPLAY_ICONS=false -DICON_DIR=\"/eq-icons/\" -g -O2 -MT packetcapture.o -MD -MP -MF ".deps/packetcapture.Tpo" -c -o packetcapture.o packetcapture.cpp; \
then mv -f ".deps/packetcapture.Tpo" ".deps/packetcapture.Po"; else rm -f ".deps/packetcapture.Tpo"; exit 1; fi
packetcapture.cpp: In member function `void PacketCaptureThread::start(const
char*, const char*, bool, unsigned char)':
packetcapture.cpp:98: invalid conversion from `const char*' to `char*'
packetcapture.cpp: In member function `void
PacketCaptureThread::setFilter(const char*, const char*, bool, unsigned
char, short unsigned int, short unsigned int)':
packetcapture.cpp:431: invalid conversion from `const char*' to `char*'
make[2]: *** [packetcapture.o] Error 1
make[2]: Leaving directory `/usr/showeq-5.3.0.0/src'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/usr/showeq-5.3.0.0'
make: *** [all] Error 2
Now, I also found a thread on how to potentially fix THIS problem, but I figured I'd post about it because that thread implies that the issue is an out-of-date header for pcap, and because I'm working on a completely clean install, the pcap that I've got is the one that's in the distro package linked off the front page at showeq.net, and it seems like maybe you guys would want to update that to make it more current. Or maybe not. Who knows.
** EDIT ** Nevermind...I didn't realize that pcap.h is something that's included as part of the linux install, rather than as part of showeq (this is probably due to my newbishness). In any event, I edited my pcap.h file, adding "const" in front of "char" in the declaration for pcap_lookupnet, as described in this post here:
http://www.showeq.net/forums/showthread.php?t=5374
In any event...keep up the good work. showeq is a great tool, and you all should be quite proud not only of the job you've done on it, but of the community that you've gathered around you (volatile though some of its members may be).
-w