Am 24.08.2015 um 21:23 schrieb Mark Thomas:
On 24/08/2015 16:40, Alten, Jessica-Aileen wrote:

We'd love to provide Windows binaries for mod_jk, but they are a real
pain in the neck to actually build: they require very specific build
environment, and the library must be built in such a way that it's
compatible with the web server in which it's running (e.g. httpd
1.3/2.2/2.4 or IIS 5/6/7/8/9, proper architecture (32/63) and chipset
(x86/x86-64/itanium/alpha). It's gotten to the point where it's tough
to provide all of those combinations with any regularity.

I understand that it is difficult - perhaps too difficult for the developers of 
this module, but the average Windows admin or Java programmer should do this? ;)
There were binaries of this module at least for the last 10 years!
I'm very disappointed on this attitude. You are closing out the whole 
Windows/IIS world.

Yes, we (the Tomcat community) has a problem here.

We needed a jk release to address a security issue that had been made
public before we were ready. The developers that normally work on jk
have been quiet lately so one of the other Tomcat developers stepped up
to do the release. The source code side of things is relatively simple
but the binaries are not and the document build process is not
sufficient to generate a binary release.


This is the documented build process for ISAPI:
http://svn.apache.org/viewvc/tomcat/jk/trunk/native/iis/README?view=annotate

We don't have the equivalent 'How to build a release' documentation.

It is not at all clear how release builds (which options have been used,
what have they been compiled with / against?) have been built in the
past so it is next to impossible to reproduce a similar build.

Unfortunately, I don't believe they provide builds for the ISAPI
redirector for IIS. If that's what you need... umm...

Umm - yes - this is what I need.

There are a couple of options:

Hope the jk committers provide enough information to document the
release process so anyone can run it.

Figure out how to build something that works for you and share that with
the Tomcat community so anyone can build it. Then one of the active
Tomcat committers will be able to include the binary in the next release
(and provide an official binary for this release).

I just tried the isapi_redirector build using VC 2010 and the Makefile.amd64. No additional flags, just setting up the compiler with "setenv /Release /x64" (as usual for MSVC) before running it. Then changing into the iis src directory and running "nmake -f Makefile.amd64" which results in Release_amd64/isapi_redirect.dll (the IIS plugin) and Release_amd64/isapi_redirect.pdb (the symbol file needed for debugging). The build was done on Windows 7 64 Bits Professional, but I think that is less important then the MSVC version used.

Since I'm using the 2010 compiler, the produced binary has a dependency on the MSVCR100.dll runtime library, which must be installed independently on the system if not yet available, but at least there are redistributables for it provided by Microsoft, see https://www.microsoft.com/en-US/download/details.aspx?id=5555. I have checked the dependency using the "depends.exe" dependency walker (similar to Unix/Linux ldd), see http://www.dependencywalker.com/.

I'd hope that the usual runtime library compatibility issues are not the problematic for the ISAPI redirector as for mod_jk on Windows. Maybe IIS can cope better with plugins using different versions of the runtime libs. I definitely don't have a version 6 compiler to prevent using the newer runtime libs.

@Jessica: which CPU architecture are you using: x86 (32 Bit), x64 (64 Bits) or even Itanium 64? Which OS version do you have? If you are willing to test, I can provide an example binary from which we might learn, how well it works and whether that type of build is suitable for others as well.

Regards,

Rainer


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org
For additional commands, e-mail: users-h...@tomcat.apache.org

Reply via email to