我有一个头文件sieve.h,它没有cpp文件。以下是我对makefile文件截至目前:我的简单g ++ Makefile有什么问题?
bitarray_executable: bitarray.o sieve.o main.o
g++ -o bitarray.out bitarray.o sieve.o main.o
sieve.o: sieve.h
g++ -o sieve.o -c sieve.h
main.o: main.cpp bitarray.h sieve.h
g++ -o main.o -c main.cpp
clean:
rm -f *.o bitarray
我得到的错误,当我做它:
g++ -o sieve.o -c sieve.h
sieve.h:15: error: expected `)' before ‘&’ token
make: *** [sieve.o] Error 1
这是筛:
#ifndef _SIEVE_H
#define _SIEVE_H
#include <iostream>
#include "bitarray.h"
using namespace std;
class Sieve
{
public:
Sieve(BitArray& x)
{
for (int i = 0; i < x.Length; i++)
x.Set(i);
}
};
#endif
任何人有更多的经验写作makefiles告诉我这有什么问题?
错误位于'sieve.h',而不是makefile。 –
刚编辑sieve.h in。我不确定它在那里。 – jordaninternets