Skip to content

[iOS/OSX] .bytecode.deflate files in static lib fail linking with -ObjC #18574

@vhbit

Description

@vhbit

Static library produced by Rust can't be linked into OS X/iOS project if the final binary is built with -ObjC linker flag (which means quite often).

Example output:

ld: in ../target/i386-apple-ios/libsync-90e4806dd582adb4.a(r-compress-compress-1019ddeae8817539.0.bytecode.deflate), archive member 'r-compress-compress-1019ddeae8817539.0.bytecode.deflate' with length 29136 is not mach-o or llvm bitcode for architecture i386

Short description of flag:

This flag causes the linker to load every object file in the library that defines an Objective-C class or category. While this option will typically result in a larger executable (due to additional object code loaded into the application), it will allow the successful creation of effective Objective-C static libraries that contain categories on existing classes.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions