The challenge is getting everything set up just right for building the
various OS profiles. This component is quite different in this regard,
getting help from the original contributors would be helpful.
After much fiddling to install the proper packages, this builds OK:
mvn package -DskipTests -P linux64
mvn package -DskipTests -P linux32
But these do not:
mvn package -DskipTests -P win64
mvn package -DskipTests -P win32
due to:
[INFO] --- maven-antrun-plugin:1.8:run (make) @ commons-crypto ---
[INFO] Executing tasks
make:
[exec] make native CROSS_PREFIX=x86_64-w64-mingw32- OS_NAME=Windows
OS_ARCH=x86_64
[exec] make[1]: Entering directory '/mnt/c/git/commons-crypto'
[exec] x86_64-w64-mingw32-gcc
-I"/usr/lib/jvm/java-1.8.0-openjdk-amd64/include" -I"/include"
-Ilib/inc_win -O2 -fno-inline -Ilib/include -I/usr/include
-I"src/main/native/org/apache/commons/crypto/"
-I"/usr/lib/jvm/java-1.8.0-openjdk-amd64/include/linux"
-I"target/jni-classes/org/apache/commons/crypto/cipher"
-I"target/jni-classes/org/apache/commons/crypto/random" -c
src/main/native/org/apache/commons/crypto/random/OpenSslCryptoRandomNative.c
-o
target/commons-crypto-1.1.0-SNAPSHOT-Windows-x86_64/OpenSslCryptoRandomNative.o
[exec] Makefile:54: recipe for target
'target/commons-crypto-1.1.0-SNAPSHOT-Windows-x86_64/OpenSslCryptoRandomNative.o'
failed
[exec] make[1]: Leaving directory '/mnt/c/git/commons-crypto'
[exec] Makefile:82: recipe for target 'win64' failed
[exec] In file included from
src/main/native/org/apache/commons/crypto/random/org_apache_commons_crypto_random.h:22:0,
[exec] from
src/main/native/org/apache/commons/crypto/random/OpenSslCryptoRandomNative.c:19:
[exec]
src/main/native/org/apache/commons/crypto/org_apache_commons_crypto.h:151:10:
fatal error: Windows.h: No such file or directory
[exec] #include <Windows.h>
[exec] ^~~~~~~~~~~
[exec] compilation terminated.
[exec] make[1]: ***
[target/commons-crypto-1.1.0-SNAPSHOT-Windows-x86_64/OpenSslCryptoRandomNative.o]
Error 1
[exec] make: *** [win64] Error 2
[INFO]
------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO]
------------------------------------------------------------------------
[INFO] Total time: 10.107 s
[INFO] Finished at: 2020-06-13T13:58:50Z
[INFO]
------------------------------------------------------------------------
[ERROR] Failed to execute goal
org.apache.maven.plugins:maven-antrun-plugin:1.8:run (make) on project
commons-crypto: An Ant BuildException has occured: exec returned: 2
[ERROR] around Ant part ...<exec failonerror="true"
dir="/mnt/c/git/commons-crypto" executable="make">... @ 5:78 in
/mnt/c/git/commons-crypto/target/antrun/build-make.xml
I have:
/mnt/c/git/commons-crypto# find /usr -name windows.h
/usr/i686-w64-mingw32/include/windows.h
/usr/share/mingw-w64/include/windows.h
/usr/x86_64-w64-mingw32/include/windows.h
Case matters here, so I wonder if the original others did not cross compile
from Linux and instead built a little here, a little there, and so on.
I can see "-Ilib/inc_win" in the build but I am not sure where that is
supposed to be...
Building with mac64 profile is no better:
mvn package -DskipTests -P mac64
[INFO] --- maven-antrun-plugin:1.8:run (make) @ commons-crypto ---
[INFO] Executing tasks
make:
[exec] make native OS_NAME=Mac OS_ARCH=x86_64
[exec] make[1]: Entering directory '/mnt/c/git/commons-crypto'
[exec] gcc -arch x86_64 -Ilib/inc_mac
-I"/usr/lib/jvm/java-1.8.0-openjdk-amd64/include" -O2 -fPIC
-mmacosx-version-min=10.7 -fvisibility=hidden -I/usr/local/include
-I/usr/local/opt/openssl/include -Ilib/include -I/usr/include
-I"src/main/native/org/apache/commons/crypto/"
-I"/usr/lib/jvm/java-1.8.0-openjdk-amd64/include/linux"
-I"target/jni-classes/org/apache/commons/crypto/cipher"
-I"target/jni-classes/org/apache/commons/crypto/random" -c
src/main/native/org/apache/commons/crypto/random/OpenSslCryptoRandomNative.c
-o
target/commons-crypto-1.1.0-SNAPSHOT-Mac-x86_64/OpenSslCryptoRandomNative.o
[exec] Makefile:54: recipe for target
'target/commons-crypto-1.1.0-SNAPSHOT-Mac-x86_64/OpenSslCryptoRandomNative.o'
failed
[exec] make[1]: Leaving directory '/mnt/c/git/commons-crypto'
[exec] Makefile:88: recipe for target 'mac64' failed
[exec] gcc: error: x86_64: No such file or directory
[exec] gcc: error: unrecognized command line option ‘-arch’; did you
mean ‘-march=’?
[exec] gcc: error: unrecognized command line option
‘-mmacosx-version-min=10.7’
[exec] make[1]: ***
[target/commons-crypto-1.1.0-SNAPSHOT-Mac-x86_64/OpenSslCryptoRandomNative.o]
Error 1
[exec] make: *** [mac64] Error 2
[INFO]
------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO]
------------------------------------------------------------------------
[INFO] Total time: 12.513 s
[INFO] Finished at: 2020-06-13T14:08:40Z
[INFO]
------------------------------------------------------------------------
[ERROR] Failed to execute goal
org.apache.maven.plugins:maven-antrun-plugin:1.8:run (make) on project
commons-crypto: An Ant BuildException has occured: exec returned: 2
[ERROR] around Ant part ...<exec failonerror="true"
dir="/mnt/c/git/commons-crypto" executable="make">... @ 5:78 in
/mnt/c/git/commons-crypto/target/antrun/build-make.xml
Same kind of issue with the linux-arm profile:
[INFO] --- maven-antrun-plugin:1.8:run (make) @ commons-crypto ---
[INFO] Executing tasks
make:
[exec] make native CROSS_PREFIX=arm-linux-gnueabi- OS_NAME=Linux
OS_ARCH=arm
[exec] make[1]: Entering directory '/mnt/c/git/commons-crypto'
[exec] arm-linux-gnueabi-gcc -include lib/inc_linux/jni_md.h
-I"/usr/lib/jvm/java-1.8.0-openjdk-amd64/include" -O2 -fPIC
-fvisibility=hidden -mfloat-abi=softfp -Ilib/include -I/usr/include
-I"src/main/native/org/apache/commons/crypto/"
-I"/usr/lib/jvm/java-1.8.0-openjdk-amd64/include/linux"
-I"target/jni-classes/org/apache/commons/crypto/cipher"
-I"target/jni-classes/org/apache/commons/crypto/random" -c
src/main/native/org/apache/commons/crypto/random/OpenSslCryptoRandomNative.c
-o
target/commons-crypto-1.1.0-SNAPSHOT-Linux-arm/OpenSslCryptoRandomNative.o
[exec] Makefile:54: recipe for target
'target/commons-crypto-1.1.0-SNAPSHOT-Linux-arm/OpenSslCryptoRandomNative.o'
failed
[exec] make[1]: Leaving directory '/mnt/c/git/commons-crypto'
[exec] Makefile:101: recipe for target 'linux-arm' failed
[exec] cc1: fatal error: lib/inc_linux/jni_md.h: No such file or
directory
[exec] compilation terminated.
[exec] make[1]: ***
[target/commons-crypto-1.1.0-SNAPSHOT-Linux-arm/OpenSslCryptoRandomNative.o]
Error 1
[exec] make: *** [linux-arm] Error 2
[INFO]
------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO]
------------------------------------------------------------------------
[INFO] Total time: 10.906 s
[INFO] Finished at: 2020-06-13T14:13:37Z
[INFO]
------------------------------------------------------------------------
[ERROR] Failed to execute goal
org.apache.maven.plugins:maven-antrun-plugin:1.8:run (make) on project
commons-crypto: An Ant BuildException has occured: exec returned: 2
[ERROR] around Ant part ...<exec failonerror="true"
dir="/mnt/c/git/commons-crypto" executable="make">... @ 5:78 in
/mnt/c/git/commons-crypto/target/antrun/build-make.xml
Same kind of issue with the linux-armhf profile:
[INFO] --- maven-antrun-plugin:1.8:run (make) @ commons-crypto ---
[INFO] Executing tasks
make:
[exec] make native CROSS_PREFIX=arm-linux-gnueabihf- OS_NAME=Linux
OS_ARCH=armhf
[exec] make[1]: Entering directory '/mnt/c/git/commons-crypto'
[exec] arm-linux-gnueabihf-gcc -include lib/inc_linux/jni_md.h
-I"/usr/lib/jvm/java-1.8.0-openjdk-amd64/include" -O2 -fPIC
-fvisibility=hidden -mfloat-abi=hard -Ilib/include -I/usr/include
-I"src/main/native/org/apache/commons/crypto/"
-I"/usr/lib/jvm/java-1.8.0-openjdk-amd64/include/linux"
-I"target/jni-classes/org/apache/commons/crypto/cipher"
-I"target/jni-classes/org/apache/commons/crypto/random" -c
src/main/native/org/apache/commons/crypto/random/OpenSslCryptoRandomNative.c
-o
target/commons-crypto-1.1.0-SNAPSHOT-Linux-armhf/OpenSslCryptoRandomNative.o
[exec] Makefile:54: recipe for target
'target/commons-crypto-1.1.0-SNAPSHOT-Linux-armhf/OpenSslCryptoRandomNative.o'
failed
[exec] make[1]: Leaving directory '/mnt/c/git/commons-crypto'
[exec] Makefile:105: recipe for target 'linux-armhf' failed
[exec] cc1: fatal error: lib/inc_linux/jni_md.h: No such file or
directory
[exec] compilation terminated.
[exec] make[1]: ***
[target/commons-crypto-1.1.0-SNAPSHOT-Linux-armhf/OpenSslCryptoRandomNative.o]
Error 1
[exec] make: *** [linux-armhf] Error 2
[INFO]
------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO]
------------------------------------------------------------------------
[INFO] Total time: 10.400 s
[INFO] Finished at: 2020-06-13T14:16:53Z
[INFO]
------------------------------------------------------------------------
[ERROR] Failed to execute goal
org.apache.maven.plugins:maven-antrun-plugin:1.8:run (make) on project
commons-crypto: An Ant BuildException has occured: exec returned: 2
[ERROR] around Ant part ...<exec failonerror="true"
dir="/mnt/c/git/commons-crypto" executable="make">... @ 5:78 in
/mnt/c/git/commons-crypto/target/antrun/build-make.xml
For the linux-aarch64 profile, I need to install the proper package:
[INFO] --- maven-antrun-plugin:1.8:run (make) @ commons-crypto ---
[INFO] Executing tasks
make:
[exec] make native CROSS_PREFIX=aarch64-linux-gnu- OS_NAME=Linux
OS_ARCH=aarch64
[exec] make[1]: Entering directory '/mnt/c/git/commons-crypto'
[exec] aarch64-linux-gnu-gcc -Ilib/inc_linux
-I"/usr/lib/jvm/java-1.8.0-openjdk-amd64/include" -Ilib/inc_mac -O2 -fPIC
-fvisibility=hidden -Wall -Werror -Ilib/include -I/usr/include
-I"src/main/native/org/apache/commons/crypto/"
-I"/usr/lib/jvm/java-1.8.0-openjdk-amd64/include/linux"
-I"target/jni-classes/org/apache/commons/crypto/cipher"
-I"target/jni-classes/org/apache/commons/crypto/random" -c
src/main/native/org/apache/commons/crypto/random/OpenSslCryptoRandomNative.c
-o
target/commons-crypto-1.1.0-SNAPSHOT-Linux-aarch64/OpenSslCryptoRandomNative.o
[exec] Makefile:54: recipe for target
'target/commons-crypto-1.1.0-SNAPSHOT-Linux-aarch64/OpenSslCryptoRandomNative.o'
failed
[exec] make[1]: Leaving directory '/mnt/c/git/commons-crypto'
[exec] Makefile:109: recipe for target 'linux-aarch64' failed
[exec] In file included from
src/main/native/org/apache/commons/crypto/org_apache_commons_crypto.h:233:0,
[exec] from
src/main/native/org/apache/commons/crypto/random/org_apache_commons_crypto_random.h:22,
[exec] from
src/main/native/org/apache/commons/crypto/random/OpenSslCryptoRandomNative.c:19:
[exec] /usr/include/openssl/aes.h:13:11: fatal error:
openssl/opensslconf.h: No such file or directory
[exec] # include <openssl/opensslconf.h>
[exec] ^~~~~~~~~~~~~~~~~~~~~~~
[exec] compilation terminated.
[exec] make[1]: ***
[target/commons-crypto-1.1.0-SNAPSHOT-Linux-aarch64/OpenSslCryptoRandomNative.o]
Error 1
[exec] make: *** [linux-aarch64] Error 2
[INFO]
------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO]
------------------------------------------------------------------------
[INFO] Total time: 10.943 s
[INFO] Finished at: 2020-06-13T14:19:44Z
[INFO]
------------------------------------------------------------------------
[ERROR] Failed to execute goal
org.apache.maven.plugins:maven-antrun-plugin:1.8:run (make) on project
commons-crypto: An Ant BuildException has occured: exec returned: 2
[ERROR] around Ant part ...<exec failonerror="true"
dir="/mnt/c/git/commons-crypto" executable="make">... @ 5:78 in
/mnt/c/git/commons-crypto/target/antrun/build-make.xml
Thoughts?
Gary
On Fri, Jun 12, 2020 at 8:41 PM Alex Remily <[email protected]> wrote:
> Just checking in on the status of the 1.1 release.
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [email protected]
> For additional commands, e-mail: [email protected]
>
>