Makefile错误:make:*** [main]错误1

时间:2017-04-07 19:15:24

标签: c++ makefile

我正在执行一个包含3个部分的makefile,我的项目是关于重载大数字的操作: BigNum.h

(function() {

    var $sidebarAndWrapper = $("#sidebar, #wrapper");
    var $icon = $("#sidebarToogle i.fa");

    $("#sidebarToggle").on("click", function () {
        $sidebarAndWrapper.toggleClass("hide-sidebar");
        if ($sidebarAndWrapper.hasClass("hide-sidebar")) {
            $icon.removeClass("fa-angle-left");
            $icon.addClass("fa-angle-right");
        } else {            
            $icon.addClass("fa-angle-left");
            $icon.removeClass("fa-angle-right");
        }

    });

})();

第二部分是BigNum.cpp,我包含库和函数,第三部分是main.cpp,我编写它来测试我的库:

#include <vector>
#ifndef BIGNUM_H
#define BIGNUM_H
class impossible_number_exception{};
class BigNum{
public:
//some functions
private:
   //
};
#endif

我的makefile是这样的:

int main(){
BigNum f("8913.67811");
BigNum r(-5453.578);
d=-1.02+f;
if(d>r){
cout<<f<<endl;
}
cout<<d[3];
return 0;
}

并且我正确地放置了所有标签和空格但是我得到了这个错误,它的一些部分是:

all:main.o BigNum.o
   g++ -o a.out BigNum.o
main.o:main.cpp BigNum.o
   g++ -c main.cpp
BigNum.o:BigNum.h BigNum.cpp
   g++ -c BigNum.cpp
clean:
   rm -rf*.o

我该怎么办呢?

1 个答案:

答案 0 :(得分:0)

现在我将makefile更改为此

CXX=g++
CXXFLAGS=-g
main: main.o BigNum.o
$(CXX) $(CXXFLAGS) -o main main.o BigNum.o
main.o: main.cpp BigNum.h
$(CXX) $(CXXFLAGS) -c main.cpp
BigNum.o:BigNum.cpp BigNum.h
$(CXX) $(CXXFLAGS) -c bignum.cpp

它有效!!!!!!!! 但我不知道我的第一个makefile的问题!