Mac OSX, QT5.1.0, make: headerpad_max_install_names: No such file or directory



  • Hi everyone

    I have installed Xcode 4.6.3 and command line tools, and of course Qt 5.1. I'm running on Mac OSX 10.8.4.

    The linking part uses headerpad_max_install_names tool, which is not found on my Mac system (apparently).

    I'm trying to compile a console application, here's my PRO file (this PRO file has worked fine in qt 4.x):

    CONFIG -= app_bundle

    CONFIG += console
    QT -= gui core

    DESTDIR = .
    TARGET = mpm

    DEFINES += MPM_Z80
    win32 {
    DEFINES += MSDOS
    }

    !win32 {
    DEFINES += UNIX
    }

    QMAKE_LINK = $$QMAKE_LINK_C

    HEADERS += asmdrctv.h config.h datastructs.h exprprsr.h modules.h pass.h z80_prsline.h
    avltree.h crc32.h errors.h libraries.h options.h symtables.h z80_relocate.h

    SOURCES += main.c asmdrctv.c crc32.c exprprsr.c options.c symtables.c z80_instr.c
    z80_relocate.c avltree.c errors.c libraries.c modules.c pass.c z80_asmdrctv.c z80_prsline.c


    The compile output looks is like this:

    make
    /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang -c -pipe -O2 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.8.sdk -mmacosx-version-min=10.6 -Wall -W -fPIE -DMPM_Z80 -DUNIX -DQT_NO_DEBUG -I../../Applications/Qt5.1.0/5.1.0/clang_64/mkspecs/macx-clang -I. -o main.o main.c

    (more files compiled)
    ....

    headerpad_max_install_names -Wl,-syslibroot,/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.8.sdk -mmacosx-version-min=10.6 -o mpm main.o asmdrctv.o crc32.o exprprsr.o options.o symtables.o z80_instr.o z80_relocate.o avltree.o errors.o libraries.o modules.o pass.o z80_asmdrctv.o z80_prsline.o
    make: headerpad_max_install_names: No such file or directory
    make: [mpm] Error 1 (ignored)

    I have tried searching for this name in Apple developer forums and on the net without much luck. I have no idea what the problem is, since I have to my understanding installed the necessary development tools.

    Best regards
    Gunther



  • Hi all,

    I have resolved the problem, which was the following line:
    QMAKE_LINK = $$QMAKE_LINK_C

    This removed the linker tool in the Makefile:
    LINK = (empty)

    The correct PRO file was:

    TEMPLATE = app

    CONFIG += console

    macx {

    Don't create a Mac App bundle...

        CONFIG -= app_bundle
    

    }

    QT -= gui core

    DESTDIR = .
    TARGET = mpm

    DEFINES += MPM_Z80
    win32 {
    DEFINES += MSDOS
    }

    !win32 {
    DEFINES += UNIX
    }

    HEADERS += asmdrctv.h config.h datastructs.h exprprsr.h modules.h pass.h z80_prsline.h
    avltree.h crc32.h errors.h libraries.h options.h symtables.h z80_relocate.h

    SOURCES += main.c asmdrctv.c crc32.c exprprsr.c options.c symtables.c z80_instr.c
    z80_relocate.c avltree.c errors.c libraries.c modules.c pass.c z80_asmdrctv.c z80_prsline.c

    There is no headerpad_max_install_names tool, just a linker directive!


  • Lifetime Qt Champion

    Hi and welcome to devnet,

    Glad you found out !

    When playing with variables like QMAKE_LINK (which generally you don't need to) adding something to it should rather be

    @QMAKE_LINK += whatever_you_need@

    or

    @QMAKE_LINK *= whatever_you_need@

    Otherwise (as you found out) you replace the current content of the variable

    Hope it helps


Log in to reply
 

Looks like your connection to Qt Forum was lost, please wait while we try to reconnect.