error wrapping binary: Insufficient size available in the Mach-O header



  • Hey guys,
    I recently started having an issue on my MAC when wrapping a binary.
    Insufficient size available in the Mach-O header for the operation. The desired new command size is 232, but only 152 bytes are available in the header.
    Have you guys seen this before?
    Gonna reach out to Pace now since this just started happening (no changes to my system)

    wraptool Error: pace::eden::thrift::exception::PaceThriftExceptionWire: MachOException::InsufficientHeaderPad, 12, Insufficient size available in the Mach-O header for the operation. Please try again after rebuilding the binary with the following header pad setting:
    OTHER_LDFLAGS = -Xlinker -headerpad -Xlinker 800, MachOHeader.cpp, line 2780, function: pace::macho::MachOSegmentCommand *pace::macho::MachOHeader::AddSegment(const std::string &, const PaceUIntMax_T, const void *, const PaceUIntMax_T, const vm_prot_t, const vm_prot_t, const uint32_t, pace::macho::MachOSectionContainer *, uint32_t *), The desired new command size is 232, but only 152 bytes are available in the header.
    

    EDIT:
    I forgot to mention that this only appears with VST3 plugins. AAX wraps fine, and AU gives me some warnings about x86 stuff but successfully wraps.

    EDIT 2:
    Just created a simple VST3 test with one sampler + slider. It wraps properly.... so there's something in my current project that is creating the error 😞
    @Christoph-Hart do you have any ideas what would be affecting the Mach-O header size?



  • Looks like this is caused by setting the Export Format to "All Formats".
    Exporting individually (aax, vst, au) causes no errors when wrapping.



  • @dustbro I remember reading the PACE doc about header pad that can be too small sometimes to embed the signature. I don't remember more but there's might be more info on how to solve that issue in the doc...



  • @ustk It seems to be the way "export all formats" works.
    When I look at Terminal, it exports in this order:
    AAX
    AU
    VST3

    When I go to wrap:
    AAX - wraps properly
    AU - gives errors about some Eden code missing, but wraps anyway
    VST3 - throws an error and doesn't wrap at all.

    Looks like the problem gets worse as it heads down stream.

    I'm compiling and wrapping fine when i export each format separately.



  • @dustbro That's weird... It means the builds are a bit different somehow 🤔



  • @ustk They each use a different SDK.



  • @d-healey Of course they are. I mean between identical format, depending on whether your export everything at once or separately like @dustbro said…



  • @ustk Could be to do with intermediate files that are created each time, maybe exporting all at once doesn't clear them before compiling.


Log in to reply
 

6
Online

647
Users

2.6k
Topics

21.4k
Posts