Skip to content

Can't create universal binary with valid static library files #16

@jdpatdiscord

Description

@jdpatdiscord

Error: can't figure out the architecture type of: H:\Work\test\MacOS_AMD64\libhpatchlib.a
Command:
lipo -create -output "%MAC_OUTPUT_PATH%\MacOS_Universal\libhpatchlib.a" "%MAC_OUTPUT_PATH%\MacOS_AMD64\libhpatchlib.a" "%MAC_OUTPUT_PATH%\MacOS_ARM64\libhpatchlib.a"

CMake:

set(CMAKE_SYSTEM_NAME "Darwin")
set(CMAKE_SYSTEM_VERSION "MacOS")
set(CMAKE_SYSTEM_PROCESSOR "x86_64")

set(CMAKE_C_COMPILER_FORCED TRUE)
set(CMAKE_CXX_COMPILER_FORCED TRUE)

set(CMAKE_OSX_DEPLOYMENT_TARGET "10.15" CACHE STRING "Minimum OS X deployment version")
set(CMAKE_CXX_OSX_DEPLOYMENT_TARGET_FLAG "10.15")

set(CMAKE_CXX_COMPILER_TARGET "x86_64-apple-macos10.15")
set(CMAKE_C_COMPILER_TARGET "x86_64-apple-macos10.15")

set(OSX_SDK "C:/MacOSX15.4.sdk")
set(CMAKE_SYSROOT "${OSX_SDK}")
set(CMAKE_FIND_ROOT_PATH "${OSX_SDK}")

# search for programs in the build host directories
set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM BOTH)
# for libraries and headers in the target directories
set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
set(CMAKE_FIND_ROOT_PATH_MODE_PACKAGE ONLY)

set(CMAKE_FIND_ROOT_PATH "${OSX_SDK}")

add_link_options("-fuse-ld=lld")

set(CMAKE_AR "C:/LLVM/bin/llvm-ar.exe")
set(CMAKE_SYSTEM_NAME "Darwin")
set(CMAKE_SYSTEM_VERSION "MacOS")
set(CMAKE_SYSTEM_PROCESSOR "aarch64")

set(CMAKE_C_COMPILER_FORCED TRUE)
set(CMAKE_CXX_COMPILER_FORCED TRUE)

set(CMAKE_OSX_DEPLOYMENT_TARGET "11.0" CACHE STRING "Minimum OS X deployment version")
set(CMAKE_CXX_OSX_DEPLOYMENT_TARGET_FLAG "11.0")

set(CMAKE_CXX_COMPILER_TARGET "arm64-apple-macos11")
set(CMAKE_C_COMPILER_TARGET "arm64-apple-macos11")

set(OSX_SDK "C:/MacOSX15.4.sdk")
set(CMAKE_SYSROOT "${OSX_SDK}")
set(CMAKE_FIND_ROOT_PATH "${OSX_SDK}")

# search for programs in the build host directories
set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM BOTH)
# for libraries and headers in the target directories
set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
set(CMAKE_FIND_ROOT_PATH_MODE_PACKAGE ONLY)

set(CMAKE_FIND_ROOT_PATH "${OSX_SDK}")

add_link_options("-fuse-ld=lld")

set(CMAKE_AR "C:/LLVM/bin/llvm-ar.exe")

Files (renamed to .txt from .a to allow upload)
AMD64: libhpatchlib.txt
ARM64: libhpatchlib.txt

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions