0
为Makefile我一直在使用数据库生成文件项目/数据库/ Makefile中这样如何链接静态库在Linux
rm -rf libdatabase.a
database.o: database.cpp database.h
g++ -c -o database.o database.cpp
ar rvs libdatabase.a database.o
if [ -f libdatabase.a ];
then
echo "Database-Library Build Success"
cp libdatabase.a ../LIBs/
else
echo "databse-Library Build Failure"
fi
的话,我会先与主make文件链接项目/创建一个静态库主/ Makefile中这样
rm -rf testdate
INCPATH = -I../database
LIBPATH = -L../LIBs
testdate:main.o libdatabase.a
g++ -o testdate libdatabase.a main.o
main.o: main.cpp database.h
g++ -c -o main.o main.cpp
但像它的投掷的错误: 化妆:*没有规则,使目标database.h', needed by
main.o'。停止。
让一些coluld帮我解决这个问题。我是linux新手。
感谢您的回复其工作正常,我有一个问题,更ücolud一次,请检查一下 – Jeggu
您应该打开一个新的SO问题,如果你有一个不同的问题。这个错误意味着你已经列出了文件'database.h'作为先决条件,但是make找不到那个文件。它存在吗?它在其他目录吗? Make不能猜测你的文件系统在哪里,所以如果你编写'database.h' make会在当前目录下查看,如果不存在则会失败。 – MadScientist