problem mit gcc && make



  • mein problem ist folgendes...

    wenn ich die datei main.cpp compiliren will und benutze dazu ein
    makefile bekomme ich diese fehler:

    /usr/lib/gcc-lib/i486-suse-linux/3.2/../../../crt1.o: In function _start': /usr/lib/gcc-lib/i486-suse-linux/3.2/../../../crt1.o(.text+0x18): undefined reference tomain'

    wenn ich main.cpp aber mit dem aufruf gcc -c main.cpp compilire
    funktioniert alles...

    hier erstmal die files:

    ################### main.cpp #########################
    
    #include "header.h"
    
    int main(int argc, char *argv[])
    {
        long x = ns::function();
    
        return 0;
    }
    
    ################### part.cpp #########################
    
    #include "header.h"
    
    long ns::function()
    {
        return 0xf4a3ff;
    }
    
    ################### header.h #########################
    
    #ifndef _MY_HEADER_
    #define _MY_HEADER_
    
    namespace ns
    {
        long function();
    }
    
    #endif //_MY_HEADER_
    
    ################### Makefile #########################
    
    programm:   main.o part.o
                gcc -o main.o part.o
    
    main.o:     main.cpp header.h
                gcc -c main.cpp
    
    part.o:     part.cpp header.h
                gcc -c part.cpp
    
    clear:      main.o part.o
                rm main.o part.o
    
    ######################################################
    

    pls help me 😞

    mfg
    Plassy



  • schau dir mal an, was die Option -o macht.

    -o <dateiname>

    Das solltest du dir endlich mal angucken!



  • ok ich habs geschafft...
    und danke für deinen dezenten hinweis :D;)

    mfg
    Plassy


Anmelden zum Antworten