Wireshark-dev: Re: [Wireshark-dev] compiling asn.1 dissectors in Linux

From: Guy Harris <guy@xxxxxxxxxxxx>
Date: Mon, 11 Apr 2016 13:33:35 -0700
On Apr 11, 2016, at 1:13 PM, Born In <d3c1978@xxxxxxxxx> wrote:

> Thank you. Was able to get past this. 
> 
> Have another seemingly basic question. How do you append a suffix to the version number of custom compiled version of wireshark?
> The Windows method of using an environment variable doesn't seem to be working in Linux

There are multiple build systems for Wireshark:

	1) autotools (UN*X-only - *maybe* you can try it on Windows with Cygwin, but we don't support it);

	2) nmake (Windows-only)

	3) CMake (UN*X and Windows).

With nmake and CMake, the WIRESHARK_VERSION_FLAVOR environment variable should work, on Windows or, for CMake, UN*X.

With autotools, that doesn't work - you'd have to manually edit the script.

Is there any reason not to have the configure script check WIRESHARK_VERSION_FLAVOR and, if it's set, use it, the same way the nmake files and CMake files do?

> (the basic build guide for Linux seems to be almost non-existent (compared to Windows). This may be intentional, but the not-so-brilliant folks like me have trouble with it :-) )

Wireshark was originally a UN*X program, and its build process was constructed for UN*X; building on Windows requires a lot of extra stuff, so more documentation was written for that.

> Br
> 
> On Monday, April 11, 2016 2:01 PM, Guy Harris <guy@xxxxxxxxxxxx> wrote:
> 
>> On Apr 11, 2016, at 10:48 AM, d3c1978@xxxxxxxxx wrote:
>> 
>>> How do I regenerate ASN.1 based dissectors when I change some .asn and .cfg files in wireshark/epan/dissectors/asn1/lte-rrc/ ?
>> 
>>     cd epan/dissectors/asn1/lte-rrc
>>     make
>> 
>>> I know about it in Windows (thanks to Pascal), but now am stuck with Linux (even the directory structure seems to be quite different here).
>> 
>> The only difference in the directory structure is that paths use /, rather than \, as path separators, just like other UN*Xes.  The actual directory *layout* is the same in all OSes.
>> 
>> If you're referring to the "asn1" directory having moved from the top level to being under epan/dissectors on UN*X and epan\dissectors on Windows, that's a relatively recent change that affects *all* platforms.