./configure und make



  • Hey Leute ist mir etwas peinlich hier zu fragen 😞
    aber: Kann mir bitte jemand beibringen wie man configurefiles erzeugt/schreibt
    und daraus ne makfile erzeugt?
    Die sachen im net scheinen übertrieben kompliziert. Gibts keine Tools
    die eine Makefile.in (oder so) scanen und daraus ne ./configure erstellen wie es
    bei progs im net zu finden ist? Kann mir das bitte jemand in PAAR einfachen schritten unter verwendung eventueller tools das erklären?

    Gruss 🙂



  • man autoconf, man automake
    info autoconf, info automake

    in www.gnu.org nachschauen



  • Aus einer Makefile.in kann man kein configure erzeugen 🙂

    http://sources.redhat.com/autobook/
    ansonsten schau dir die Manuals der entsprechenden Packete an und schau dir Projekt Beispiele an. So hab ich das immer gemacht.



  • kingruedi schrieb:

    Aus einer Makefile.in kann man kein configure erzeugen 🙂

    aber aus einer configure.ac



  • Da hab ich das hier schonmal gepostet, ich weiss aber nicht mehr wo...

    Also, wenn ich n' Projekt mit den Autotools erstelle gehe ich immer folgendermaßen vor:

    Ich speicher folgendues unter "main.cpp" ab

    #include <iostream>
    
    int main( int argc, char *argv[] ) {
            std::cout<<"Hello world"<<std::endl;
            return 0;
    }
    

    Ich speicher folgendes unter "automake.am" ab.

    bin_PROGRAMS = prog
        prog_SOURCES = main.cpp
        prog_LDADD =
    

    Dann tippe ich folgendes in meine console.

    autoscan
    mv configure.scan configure.in
    autoheader
    

    Dann füge ich noch folgene Zeile in der Mitter der configure.in hinzu

    AM_INIT_AUTOMAKE
    

    Das sieht dan ungefähr so aus:

    AC_PREREQ(2.59)
    AC_INIT(FULL-PACKAGE-NAME, VERSION, BUG-REPORT-ADDRESS)
    AC_CONFIG_SRCDIR([main.cpp])
    AC_CONFIG_HEADER([config.h])
    
    # Checks for programs.
    AC_PROG_CXX
    AM_INIT_AUTOMAKE                                                                           
    
    AC_CONFIG_FILES([makefile])
    AC_OUTPUT
    

    Als letztes gebe ich in die console

    aclocal
    autoconf
    automake --add-missing
    automake
    configure
    make
    

    ein.


Anmelden zum Antworten