install_name_tool: changing install names can’t be redone for: .. (for architecture ppc) because larger updated load commands do not fit (the program must be relinked)

So I am here trying to get all of the libs that pidip requires to automatically be included in the Pd-extended.app. Then Pd users on the Mac will be able to stream audio and video out-of-box. I am running into a wall with this lovely tidbit, which seems to be barely documented (hence this blog post of annoyingness):


install_name_tool: changing install names can't be redone for: /Applications/Pd-0.39.2-extended-rc2.app/Contents/Resources/extra/pidip.pd_darwin (for architecture ppc) because larger updated load commands do not fit (the program must be relinked)

Yup, the subject says it all… um, yeah, what the hell does that mean, and why doesn’t it just work? install_name_tool has so far proven to be a wonderful tool for bundling all of the needed dylibs into the .app wrapper. But it looks like this time I have hit a wall.

It looks like the man page holds the key!! For this tool to work when the install names are larger the binary should be built with the ld(1) -headerpad_max_install_names option. Sounds too good to be true, let’s see if it works…

Yup, worked. Nice. Sometimes I think Apple does good work, must be all the NeXT guys they got.


2 responses to “install_name_tool: changing install names can’t be redone for: .. (for architecture ppc) because larger updated load commands do not fit (the program must be relinked)

  • taoyu17

    Hi, thanks for the post. But where to add ld -headerpad_max_install_names option?
    I am using a qmake and macdeployqt (all comes from QtSDK). In which step shall I add the ld in?
    Thanks in advance.

    • eighthave

      You add it wherever ld is being called. I’ve never used qmake, so I wouldn’t know how its done there. In my case, it was a autotools build system, so I added it to LDFLAGS.

You must be logged in to post a comment.

%d bloggers like this: