我有一個頭文件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