You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@arrow.apache.org by "Larry White (Jira)" <ji...@apache.org> on 2022/05/11 18:07:00 UTC

[jira] [Created] (ARROW-16532) Update gandiva protobuf compilation support to include M1

Larry White created ARROW-16532:
-----------------------------------

             Summary: Update gandiva protobuf compilation support to include M1
                 Key: ARROW-16532
                 URL: https://issues.apache.org/jira/browse/ARROW-16532
             Project: Apache Arrow
          Issue Type: Bug
          Components: Java
    Affects Versions: 8.0.0, 9.0.0
         Environment: macOS, M1
            Reporter: Larry White


Gandiva needs to generate Protobuf Java sources from the definitions, and this relies on a JAR that has the native Protobuf compiler embedded in it - but the current package doesn't have an ARMv8 build available.  protobuf-java version 3.20.1 does have M1 support.
 
This means that building from source as documented (https://arrow.apache.org/docs/developers/java/building.html) cannot be done on M1 as the following exception occurs:
 

{{{{[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time:  03:38 min
[INFO] Finished at: 2022-05-10T16:19:24-04:00
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.xolstice.maven.plugins:protobuf-maven-plugin:0.6.1:compile (default) on project arrow-gandiva: Unable to resolve artifact: Missing:
[ERROR] ----------
[ERROR] 1) com.google.protobuf:protoc:exe:osx-aarch_64:2.5.0
[ERROR]
[ERROR]   Try downloading the file manually from the project website.
[ERROR]
[ERROR]   Then, install it using the command:
[ERROR]       mvn install:install-file -DgroupId=com.google.protobuf -DartifactId=protoc -Dversion=2.5.0 -Dclassifier=osx-aarch_64 -Dpackaging=exe -Dfile=/path/to/file
[ERROR]
[ERROR]   Alternatively, if you host your own repository you can deploy the file there:
[ERROR]       mvn deploy:deploy-file -DgroupId=com.google.protobuf -DartifactId=protoc -Dversion=2.5.0 -Dclassifier=osx-aarch_64 -Dpackaging=exe -Dfile=/path/to/file -Durl=[url] -DrepositoryId=[id]
[ERROR]
[ERROR]   Path to dependency:
[ERROR]     1) org.apache.arrow.gandiva:arrow-gandiva:jar:9.0.0-SNAPSHOT
[ERROR]     2) com.google.protobuf:protoc:exe:osx-aarch_64:2.5.0
[ERROR]
[ERROR] ----------
[ERROR] 1 required artifact is missing.
[ERROR]
[ERROR] for artifact:
[ERROR]   org.apache.arrow.gandiva:arrow-gandiva:jar:9.0.0-SNAPSHOT
[ERROR]
[ERROR] from the specified remote repositories:
[ERROR]   apache.snapshots (https://repository.apache.org/snapshots, releases=false, snapshots=true),
[ERROR]   central (https://repo.maven.apache.org/maven2, releases=true, snapshots=false)
[ERROR]
[ERROR] -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoExecutionException
[ERROR]
[ERROR] After correcting the problems, you can resume the build with the command
[ERROR]   mvn <args> -rf :arrow-gandiva}}}}
 
 
 



--
This message was sent by Atlassian Jira
(v8.20.7#820007)