Build issues on Ubuntu 16.04, 17.10 and 18.04-daily inside Docker
Kevin Rushforth
kevin.rushforth at oracle.com
Wed Dec 6 18:10:54 UTC 2017
We ought to get a fix for JDK-8189689 in sooner rather than later to
allow builds to continue to work on newer versions of gcc. Maybe right
after the JDK 10 RDP1 fork would be a good time.
As for the other error (the one from ant), you need 'ant' in your path
in order to build the apps. ant 1.8.2 is what we use (we had some
problems with 1.9 based versions, but I don't recall specifically if
that was something in the apps build that was failing).
It's clear from the various build problems that folks are having, that
the build instructions on the Wiki needs updating. I can take a stab at
that after the JDK 10 RDP1 deadline has passed. If anyone wants to share
their build problems, I can see about incorporating that into the Wiki.
-- Kevin
Laurent Bourgès wrote:
> Hi,
>
> My 2 cents: I reported a JavaFX build problem with GCC 6:
> https://bugs.openjdk.java.net/browse/JDK-8189689
>
> It gives a workaround for the wait() bug:
> wait(&status);
>
> Laurent
>
> 2017-12-06 10:43 UTC+01:00, Karl-Philipp Richter <krichter at posteo.de>:
>
>> Hi,
>> I'm experiencing the following issues when building OpenJFX following
>> https://wiki.openjdk.java.net/display/OpenJFX/Building+OpenJFX inside
>> Ubuntu Docker images `ubuntu:[version]` which are official and as empty
>> as possible. Afaik the build instructions or the supported list of OS is
>> quite old (only Ubuntu LTS version 14.04 and 16.04 are still supported
>> and up-to-date 17.10 and 18.04-daily are left out of the picture). My
>> motivation here is to improve the build process of OpenJFX, but not only
>> me alone. You might have you own CI, but in case you agree that the
>> following are real issues, I can only recommend GitLab CI (your own
>> instance or the one at gitlab.com) which allows to test whether build
>> instructions are working on any docker image you can image and can be
>> used parallel to existing infrastructure. I used it now to allow you to
>> reproduce the issues as easily as possible:
>>
>> For `ubuntu:14.04` and `ubuntu:16.04` I get:
>>
>> [ant:taskdef] Could not load definitions from resource
>> com/sun/javafx/tools/ant/antlib.xml. It could not be found.
>> :apps:appsJarLinux FAILED
>>
>> FAILURE: Build failed with an exception.
>>
>> * Where:
>> Build file '/builds/krichter/openjfx-8u-dev-rt/build.gradle' line: 3241
>>
>> * What went wrong:
>> Execution failed for task ':apps:appsJarLinux'.
>> > The following error occurred while executing this line:
>> /builds/krichter/openjfx-8u-dev-rt/apps/samples/build.xml:14: The
>> following error occurred while executing this line:
>>
>> /builds/krichter/openjfx-8u-dev-rt/apps/samples/Ensemble8/build.xml:158:
>> Problem: failed to create task or type
>> javafx:com.sun.javafx.tools.ant:application
>> Cause: The name is undefined.
>> Action: Check the spelling.
>> Action: Check that any custom tasks/types have been declared.
>> Action: Check that any <presetdef>/<macrodef> declarations have
>> taken place.
>> No types or tasks have been defined in this namespace yet
>>
>> For `ubuntu:17.10` and `ubuntu:18.04` I get:
>>
>>
>> :fxpackager:compileLinuxLibrary/builds/krichter/openjfx-8u-dev-rt/modules/fxpackager/src/main/native/library/common/LinuxPlatform.cpp:130:9:
>> warning: invalid suffix on literal; C++11 requires a space between
>> literal and string macro [-Wliteral-suffix]
>> "jre/lib/"JAVAARCH"/client/libjvm.so";
>> ^
>>
>> /builds/krichter/openjfx-8u-dev-rt/modules/fxpackager/src/main/native/library/common/LinuxPlatform.cpp:134:13:
>> warning: invalid suffix on literal; C++11 requires a space between
>> literal and string macro [-Wliteral-suffix]
>> "jre/lib/"JAVAARCH"/server/libjvm.so";
>> ^
>>
>> /builds/krichter/openjfx-8u-dev-rt/modules/fxpackager/src/main/native/library/common/LinuxPlatform.cpp:139:13:
>> warning: invalid suffix on literal; C++11 requires a space between
>> literal and string macro [-Wliteral-suffix]
>> "lib/"JAVAARCH"/server/libjvm.so";
>> ^
>>
>> /builds/krichter/openjfx-8u-dev-rt/modules/fxpackager/src/main/native/library/common/LinuxPlatform.cpp:144:13:
>> warning: invalid suffix on literal; C++11 requires a space between
>> literal and string macro [-Wliteral-suffix]
>> "lib/"JAVAARCH"/server/libjvm.so";
>> ^
>>
>> /builds/krichter/openjfx-8u-dev-rt/modules/fxpackager/src/main/native/library/common/LinuxPlatform.cpp:189:16:
>> warning: invalid suffix on literal; C++11 requires a space between
>> literal and string macro [-Wliteral-suffix]
>> _T("/lib/"JAVAARCH"/client/libjvm.so");
>> ^
>>
>> /builds/krichter/openjfx-8u-dev-rt/modules/fxpackager/src/main/native/library/common/LinuxPlatform.cpp:193:20:
>> warning: invalid suffix on literal; C++11 requires a space between
>> literal and string macro [-Wliteral-suffix]
>> _T("/lib/"JAVAARCH"/server/libjvm.so");
>> ^
>>
>> /builds/krichter/openjfx-8u-dev-rt/modules/fxpackager/src/main/native/library/common/PosixPlatform.cpp:
>> In member function 'virtual bool PosixProcess::Wait()':
>>
>> /builds/krichter/openjfx-8u-dev-rt/modules/fxpackager/src/main/native/library/common/PosixPlatform.cpp:235:5:
>> error: 'wait' was not declared in this scope
>> wait();
>> ^~~~
>>
>> /builds/krichter/openjfx-8u-dev-rt/modules/fxpackager/src/main/native/library/common/PosixPlatform.cpp:235:5:
>> note: suggested alternative: 'Wait'
>> wait();
>> ^~~~
>> Wait
>>
>> /builds/krichter/openjfx-8u-dev-rt/modules/fxpackager/src/main/native/library/common/Java.cpp:
>> In destructor 'JavaClass::~JavaClass()':
>>
>> /builds/krichter/openjfx-8u-dev-rt/modules/fxpackager/src/main/native/library/common/Java.cpp:237:46:
>> warning: throw will always call terminate() [-Wterminate]
>> throw JavaException(FEnv, _T("Error"));
>> ^
>>
>> /builds/krichter/openjfx-8u-dev-rt/modules/fxpackager/src/main/native/library/common/Java.cpp:237:46:
>> note: in C++11 destructors default to noexcept
>> FAILED
>>
>> FAILURE: Build failed with an exception.
>>
>> * What went wrong:
>> Execution failed for task ':fxpackager:compileLinuxLibrary'.
>> > Could not call NativeCompileTask.compile() on task
>> ':fxpackager:compileLinuxLibrary'
>>
>> Details and complete build logs can be found at
>> https://gitlab.com/krichter/openjfx-8u-dev-rt/pipelines/14781176. The
>> build script `.gitlab-ci.yml` contains the commands used to build.
>>
>> -Kalle
>>
>>
>>
>
>
>
More information about the openjfx-dev
mailing list