MAC ARM,环球图书馆,如何与2个Openssl libs相提并论?

发布于 2025-02-07 20:00:12 字数 569 浏览 1 评论 0原文

因此,我的理解是,在Mac上,如果我想构建通用库或可执行文件,我需要做:

set(CMAKE_OSX_ARCHITECTURES "arm64;x86_64" CACHE INTERNAL "" FORCE)

现在很棒,但是如果说这个项目需要链接到Brew -OpenSSL或VCPKG -Zlib -Zlib ... 那么我需要以某种方式与2个OpenSSL版本链接? 由于VCPKG为ARM或Intel构建,因此我现在安装了2倍VCPKG,每个体系结构为1。 我还为每个体系结构安装了2倍的啤酒。

所以我的问题是... 我如何才能

find_package(OpenSSL REQUIRED ${BREW_INTEL})
find_package(OpenSSL REQUIRED ${BREW_ARM})
find_package(zlib REQUIRED ${vcpkg_INTEL})
find_package(zlib REQUIRED ${vcpkg_ARM})

使每个体系结构都针对正确的子库...版本?

我对此错了吗?正确的?我如何咬它? 谢谢!

So my understanding is that on mac if I want to build universal library or executable I need to do :

set(CMAKE_OSX_ARCHITECTURES "arm64;x86_64" CACHE INTERNAL "" FORCE)

Now this is great, but if say, this project needs to link against brew - openSSL or vcpkg - zlib...
Then I need to somehow link against 2 openSSL versions?
Since vcpkg builds for either arm or intel, I have now 2x vcpkg installed, 1 for each architecture.
I also have 2x brew installed for each architecture.

So my question is...
How can I

find_package(OpenSSL REQUIRED ${BREW_INTEL})
find_package(OpenSSL REQUIRED ${BREW_ARM})
find_package(zlib REQUIRED ${vcpkg_INTEL})
find_package(zlib REQUIRED ${vcpkg_ARM})

So that each Architecture targets correct sub library... version ?

Am I wrong with this? Right? how do I bite it?
Thanks!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

小草泠泠 2025-02-14 20:00:12

缺乏更好的选择,我使用lipo来构建乘数库:

lipo /opt/homebrew/Cellar/[email protected]/1.1.1o/lib/libssl.a \
     /usr/local/opt/openssl/lib/libssl.a \
     -create -output ~/lib_all/libssl.a

Lacking a better option, I've used lipo to build a multiplatform library:

lipo /opt/homebrew/Cellar/[email protected]/1.1.1o/lib/libssl.a \
     /usr/local/opt/openssl/lib/libssl.a \
     -create -output ~/lib_all/libssl.a
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文