Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[C++] arrow fails to recognize installed abseil: The following configuration files were considered but not accepted: 20230125 #35833

Closed
barracuda156 opened this issue May 31, 2023 · 4 comments · Fixed by #35881
Assignees
Milestone

Comments

@barracuda156
Copy link
Contributor

Describe the bug, including details regarding any error messages, version, and platform.

macOS 13:

2023-05-31T03:56:27.5654270Z CMake Warning at cmake_modules/ThirdpartyToolchain.cmake:2828 (find_package):
2023-05-31T03:56:27.5654940Z   Could not find a configuration file for package "absl" that is compatible
2023-05-31T03:56:27.5655620Z   with requested version "20211102".
2023-05-31T03:56:27.5655840Z 
2023-05-31T03:56:27.5656030Z   The following configuration files were considered but not accepted:
2023-05-31T03:56:27.5656260Z 
2023-05-31T03:56:27.5656420Z     /opt/local/lib/cmake/absl/abslConfig.cmake, version: 20230125
2023-05-31T03:56:27.5656620Z 
2023-05-31T03:56:27.5656730Z Call Stack (most recent call first):
2023-05-31T03:56:27.5657040Z   cmake_modules/ThirdpartyToolchain.cmake:4198 (ensure_absl)
2023-05-31T03:56:27.5657430Z   cmake_modules/ThirdpartyToolchain.cmake:174 (build_google_cloud_cpp_storage)
2023-05-31T03:56:27.5657820Z   cmake_modules/ThirdpartyToolchain.cmake:280 (build_dependency)
2023-05-31T03:56:27.5658310Z   cmake_modules/ThirdpartyToolchain.cmake:4376 (resolve_dependency)
2023-05-31T03:56:27.5658630Z   CMakeLists.txt:506 (include)
2023-05-31T03:56:27.5658780Z 
2023-05-31T03:56:27.5658780Z 
2023-05-31T03:56:27.5779150Z CMake Warning at cmake_modules/ThirdpartyToolchain.cmake:2828 (find_package):
2023-05-31T03:56:27.5780320Z   Could not find a configuration file for package "absl" that is compatible
2023-05-31T03:56:27.5780820Z   with requested version "20220623".
2023-05-31T03:56:27.5781180Z 
2023-05-31T03:56:27.5782300Z   The following configuration files were considered but not accepted:
2023-05-31T03:56:27.5782560Z 
2023-05-31T03:56:27.5782730Z     /opt/local/lib/cmake/absl/abslConfig.cmake, version: 20230125
2023-05-31T03:56:27.5782930Z 
2023-05-31T03:56:27.5783400Z Call Stack (most recent call first):
2023-05-31T03:56:27.5783710Z   cmake_modules/ThirdpartyToolchain.cmake:4198 (ensure_absl)
2023-05-31T03:56:27.5784140Z   cmake_modules/ThirdpartyToolchain.cmake:174 (build_google_cloud_cpp_storage)
2023-05-31T03:56:27.5784560Z   cmake_modules/ThirdpartyToolchain.cmake:280 (build_dependency)
2023-05-31T03:56:27.5785020Z   cmake_modules/ThirdpartyToolchain.cmake:4376 (resolve_dependency)
2023-05-31T03:56:27.5785380Z   CMakeLists.txt:506 (include)
2023-05-31T03:56:27.5785540Z 
2023-05-31T03:56:27.5785550Z 
2023-05-31T03:56:27.5785890Z -- Building Abseil-cpp from source

This eventually leaves the build broken, as it tries, apparently, to overwrite existing abseil files.

Why it fails to recognize our abseil? Portfiles here:

https://github.com/macports/macports-ports/blob/master/devel/apache-arrow/Portfile
https://github.com/macports/macports-ports/blob/master/devel/abseil/Portfile

Component(s)

C++

@kou kou changed the title arrow fails to recognize installed abseil: The following configuration files were considered but not accepted: 20230125 [C++] arrow fails to recognize installed abseil: The following configuration files were considered but not accepted: 20230125 May 31, 2023
@kou
Copy link
Member

kou commented May 31, 2023

Could you try this patch?

diff --git a/cpp/cmake_modules/ThirdpartyToolchain.cmake b/cpp/cmake_modules/ThirdpartyToolchain.cmake
index a764acb6c..d0398d2d0 100644
--- a/cpp/cmake_modules/ThirdpartyToolchain.cmake
+++ b/cpp/cmake_modules/ThirdpartyToolchain.cmake
@@ -2823,7 +2823,7 @@ macro(ensure_absl)
       # 20211102 or later. We need to update
       # ARROW_ABSL_REQUIRED_LTS_VERSIONS list when new Abseil LTS is
       # released.
-      set(ARROW_ABSL_REQUIRED_LTS_VERSIONS 20211102 20220623)
+      set(ARROW_ABSL_REQUIRED_LTS_VERSIONS 20230125 20220623 20211102)
       foreach(_VERSION ${ARROW_ABSL_REQUIRED_LTS_VERSIONS})
         find_package(absl ${_VERSION})
         if(absl_FOUND)

@barracuda156
Copy link
Contributor Author

@kou I will test this today, thank you.

@barracuda156
Copy link
Contributor Author

@kou Yes, this seems to work, thank you!

P. S. We have some Python dependencies for py-arrow failing now with new Abseil. Troublesome update they made :)

@kou
Copy link
Member

kou commented Jun 1, 2023

Thanks for testing the patch!

We'll merge the patch soon.

@kou kou closed this as completed in #35881 Jun 3, 2023
kou added a commit that referenced this issue Jun 3, 2023
### Rationale for this change

The latest Abseil LTS is 20230125.

### What changes are included in this PR?

Accept 20230125 too.

### Are these changes tested?

Yes.

### Are there any user-facing changes?

Yes.
* Closes: #35833

Authored-by: Sutou Kouhei <kou@clear-code.com>
Signed-off-by: Sutou Kouhei <kou@clear-code.com>
@kou kou added this to the 13.0.0 milestone Jun 3, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants