Hi devs, I'm trying to build 9.0.0.M1 from sources to test the HTTP2 functionalities. I haven't built Tomcat + tcnative before so I may be doing something wrong...
I run Ubuntu 15.10 here. Running just 'ant' downloads tomcat-native.tar.gz (1.2.2) to base.path. But this file is just copied in ./output/build/bin/, it is not untar-ed. So I've checked in build.xml and saw that at line 1927 it copies the .dll files, as part of "dist-static" target. Executing "ant dist-target" leads to: 1) trydownload: [get] Getting: http://www.apache.org/dist/tomcat/tomcat-connectors/native/1.2.2/binaries/tomcat-native-1.2.2-win32-bin.zip and testexist: [echo] Testing for /tmp/tc9/commons-daemon-1.0.15/windows/prunmgr.exe and trydownload: [get] Getting: http://www.apache.org/dist/commons/daemon/binaries/windows/commons-daemon-1.0.15-bin-windows-signed.zip [get] To: /tmp/tc9/download-530232362.zip and the same for makensis.exe Why win32 ?! Later I see the Unix versions being downloaded too, so maybe it just download everything and then decides which ones to actually use. Not a big issue. 2) at step "extras-commons-logging" it fails with: extras-commons-logging: [gunzip] Expanding /tmp/tc9/commons-logging-1.1.3/commons-logging-1.1.3-src.tar.gz to /tmp/tc9/apache-tomcat-9.0.0.M1-src/output/extras/logging/commons-logging-src.tar [untar] Expanding: /tmp/tc9/apache-tomcat-9.0.0.M1-src/output/extras/logging/commons-logging-src.tar into /tmp/tc9/apache-tomcat-9.0.0.M1-src/output/extras/logging BUILD FAILED /tmp/tc9/apache-tomcat-9.0.0.M1-src/build.xml:1651: Error while expanding /tmp/tc9/apache-tomcat-9.0.0.M1-src/output/extras/logging/commons-logging-src.tar java.io.IOException: Error detected parsing the header at org.apache.tools.tar.TarInputStream.getNextEntry(TarInputStream.java:292) at org.apache.tools.ant.taskdefs.Untar.expandStream(Untar.java:165) at org.apache.tools.ant.taskdefs.Untar.expandFile(Untar.java:114) at org.apache.tools.ant.taskdefs.Expand.execute(Expand.java:132) at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:292) at sun.reflect.GeneratedMethodAccessor4.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:497) at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106) at org.apache.tools.ant.Task.perform(Task.java:348) at org.apache.tools.ant.Target.execute(Target.java:435) at org.apache.tools.ant.Target.performTasks(Target.java:456) at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1393) at org.apache.tools.ant.Project.executeTarget(Project.java:1364) at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41) at org.apache.tools.ant.Project.executeTargets(Project.java:1248) at org.apache.tools.ant.Main.runBuild(Main.java:851) at org.apache.tools.ant.Main.startAnt(Main.java:235) at org.apache.tools.ant.launch.Launcher.run(Launcher.java:280) at org.apache.tools.ant.launch.Launcher.main(Launcher.java:109) Caused by: java.lang.IllegalArgumentException: Invalid byte 32 at offset 7 in ' {NUL}' len=8 at org.apache.tools.tar.TarUtils.parseOctal(TarUtils.java:134) at org.apache.tools.tar.TarUtils.parseOctalOrBinary(TarUtils.java:172) at org.apache.tools.tar.TarEntry.parseTarHeader(TarEntry.java:912) at org.apache.tools.tar.TarEntry.parseTarHeader(TarEntry.java:899) at org.apache.tools.tar.TarEntry.<init>(TarEntry.java:323) at org.apache.tools.tar.TarInputStream.getNextEntry(TarInputStream.java:290) ... 19 more $ tar xvf commons-logging-src.tar works just fine, but it seems the Java library used for untar-ing doesn't like the content I'll try with apache-tomcat-9.0.0.M1.tar.gz + http://tomcat.apache.org/native-doc/ (configure+make) Cheers Martin