autotools



  • Hallo Leute,

    ich hab folgende configure.ac fuer mein Projekt angepasst:

    AC_PREREQ(2.61)
    AC_INIT([engine],[0.2],[mosta])
    AM_INIT_AUTOMAKE(engine, 0.2)
    AC_CONFIG_SRCDIR([main.cpp])
    #AC_CONFIG_HEADER([config.h])
    AC_CONFIG_HEADERS([config.h])
    
    AM_INIT_AUTOMAKE([ -Wall -Werror foreign subdir-objects])
    
    # Checks for programs.
    AC_PROG_CXX
    AC_PROG_CC
    AC_PROG_CPP
    
    # Checks for libraries.
    AC_CHECK_LIB([cwiid], [main])
    AC_CHECK_LIB([sfml], [main])
    
    # Checks for header files.
    
    # Checks for typedefs, structures, and compiler characteristics.
    AC_HEADER_STDBOOL
    AC_C_CONST
    
    # Checks for library functions.
    AC_FUNC_ERROR_AT_LINE
    AC_FUNC_VPRINTF
    AC_CHECK_FUNCS([sqrt])
    
    AC_CONFIG_FILES([
    Makefile
    core/Makefile
    input/Makefile
    math/Makefile
    renderer/Makefile
    window/Makefile
    ])
    AC_OUTPUT
    

    wenn ich jetzt mir das configure Script generieren lasse und ausfuehre kommt die Fehlermeldung "rm: cannot remove `core': Is a directory" wobei ich nirgendwo das Verzeichnis loeschen will?

    mfg mosta



  • Ich vermute mal, dass autoconf hier ein coredump löschen will. Autoconf ruft ja verschiedene Sachen auf um zu testen, ob sie funktionieren. Da kann schon mal ein coredump produziert werden und ist dann nur folgerichtig, dass er das aufräumt. Du hast aber ein Verzeichnis mit dem Namen core erstellt, was normalerweise der Name des Coredumps ist. Das kann autoconf durchaus auf die falsche Fährte locken, da er ja sogar fälschlicherweise annehmen könnte, der Verzeichniseintrag "core" sei von einem getesteten Programm produziert worden. Ich schlage vor, Du wählst einen anderen Namen für das Verzeichnis.



  • Danke für die Antwort. Ich hab das Verzeichnis umbenannt aber kann man das nicht auch anders lösen.


Anmelden zum Antworten