It might work except that packet-ncp-sss.c depends on a symbol from
packet-ncp.c .
Gilbert Ramirez wrote:
Yes, PYTHON is the issue, and yes, this is an attempt to remove ncp2222
from wireshark in the absence of PYTHON. But, that attempt is broken.
Good find.
Gilbert
On Wed, May 9, 2012 at 11:19 AM, Beth <beth.tridium@xxxxxxxxx
<mailto:beth.tridium@xxxxxxxxx>> wrote:
I've run into a puzzling issue here, perhaps someone can explain it
to me.
I'm simply trying to build "all", but I get an unresolved external
symbol in libwireshark.dll : ett_nds
I've tracked down the definition of this symbol in
packet-ncp.c.save, which is NOT part of the build.
packet-ncp.c is empty. This seemed strange, since I just checked
out a clean copy of the repository
head from SVN - I'd have expected it to build correctly right out of
the box.
After going in circles for some time, including deleting and
re-checking out the source code,
I discovered the following snippet in epan/dissectors/Makefile.nmake:
packet-ncp2222.c: ..\..\tools/ncp2222.py
!IFDEF PYTHON
@echo Making packet-ncp2222.c
$(PYTHON) "../../tools/ncp2222.py" -o packet-ncp2222.c
!ELSE
@echo Faking packet-ncp2222.c...
@echo Python is required to build the NCP disector
@echo Hiding packet-ncp.c...
mv packet-ncp.c packet-ncp.c.save
touch packet-ncp.c $@
!ENDIF
So it's happening because I haven't defined PYTHON. I can fix that
(missed a step in setting up the new PC I guess),
but shouldn't wireshark build correctly either way? Otherwise why
have the ifdef at all? You could just have nmake fail
if python isn't defined.
I'm asking these questions in order to make sure defining PYTHON
really is the issue, and not something
else that will crop up another way once I fix this particular thing.
Thanks for any input,
b.