Re: [Pljava-dev] PLJava build issues on Ubuntu

From: Chapman Flack <chap(at)anastigmatix(dot)net>
To:
Subject: Re: [Pljava-dev] PLJava build issues on Ubuntu
Date: 2016-03-09 23:47:43
Message-ID: 56E0B61F.5060803@anastigmatix.net
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pljava-dev

On 02/26/16 15:46, Peter Brewer wrote:

>> That one's on line 791:
>> [ERROR] /usr/include/postgresql/9.3/server/libpq/libpq-be.h:36:27: fatal
>> error: gssapi/gssapi.h: No such file or directory

> Looks like installing libkrb5-dev fixed this for me. Thanks.

For those following along at home, where we stand so far on this is:

1. The Ubuntu postgresql build enables GSSAPI, that comes separately from
the package manager, libkrb5-dev has to be installed.

2. Ubuntu also packages various bits of postgresql libraries a la carte.
The package libecpg-dev also needs to be installed.

3. As he was building 32-bit, the MAVEN_OPTS=-Xss1m is definitely needed
for the build.

4. Don't be alarmed by [ERROR] lines in the Maven pljava-so build if
the build completes and Maven calls it successful. That means the
messages were warnings. Maven seems to decide, based on seeing the
string "warning:" in a line from the compiler, whether to call it
[WARNING] or [ERROR], and gcc tends to emit ~ 4 lines for each warning,
of which only the first contains the string "warning:" and Maven
misclassifies the other three as errors. This applies to any build,
not just Ubuntu, but the question came up so this is the story.

If it works for you, do use -Pwnosign on the Maven command line
to suppress the nuisance sign conversion warnings. That *should*
leave only the ones about unsupported new types of
transaction/subtransaction listeners, mentioned in the release notes.

5. This is the current obstacle. Peter was using an Ubuntu Trusty 32-bit
build of OpenJDK 1.7.0_95.

Something about that build seems to have broken the javax.script
JavaScript engine (it's Rhino in that version) in rather strange ways,
for example, s1 + s2 where s1 and s2 are both strings, is not a string
result any more, it's a sun.org.mozilla.javascript.ConsString and
doesn't work in contexts where a string would.

I have confirmed there is no problem building with Red Hat's
OpenJDK 1.7.0_95 (64-bit), as well as with their OpenJDK 6 and 8
builds. Peter has seen the error with OpenJDK 6 and 7 on Ubuntu and
with 32-bit and 64-bit JVMs. It seems to be something Ubuntu related
that I have not seen elsewhere. The Ubuntu OpenJDK 8 works with no
problem.

It now has an Ubuntu bug report and a StackOverflow thread:
https://bugs.launchpad.net/ubuntu/+source/openjdk-7/+bug/1553654
http://stackoverflow.com/questions/35713768

It doesn't appear to affect other platforms. The main build process
now has (will, as soon as I push it) an easy workaround so the build
completes. A bad Ubuntu JVM will still fail to run the self-extracting
jar, but that's only inconvenient; the jar can be extracted the old
fashioned way and the files moved into place. I'd like to think Ubuntu
can make new Java releases that fix the problem so it doesn't seem worth
adding much more complexity to the script to try to work around it.

There is (... will be, once pushed ...) a new Building on Ubuntu page in
the documentation to cover all that.

-Chap
_______________________________________________
Pljava-dev mailing list
Pljava-dev(at)lists(dot)pgfoundry(dot)org
http://lists.pgfoundry.org/mailman/listinfo/pljava-dev

In response to

Browse pljava-dev by date

  From Date Subject
Next Message Chapman Flack 2016-03-13 22:21:03 [Pljava-dev] Second thoughts about PL/Java git branching model
Previous Message Chapman Flack 2016-03-06 20:40:23 Re: [Pljava-dev] Video Tutorial - How to Build and Install PL/Java