makefile怎么写install

1. makefile中 怎么写 install 格式 .PHONY: install
--------------------
原始内容
--------------------
install: liba.so
cp liba.so /xxx/xxx/xxx/liba.so
只是举了个例子,因为也不知道你的程序,完全不懂make,最好看书 。
别人的例子:
使用install的
prefix=/usr/local
install: our_program
install -m 0755 our_program $(prefix)/bin
install -m 0644 *.png $(prefix)/share/our_program/icons
.PHONY: install
2. 此makefile文件中,install部分可以这么写吗 install:
if [ -f /usr/bin/wmctrl ];then \
echo yes \
else \
echo no \
exit 1 \
fi; \
mkdir -p $(BINDIR) \
$(INSTALL) $(PROG_ALL) $(BINDIR)
需要添加 \ 符号 。表示install这些命令,按照先后顺序执行 。
否则,每个命令都是一个子进程 。
3. linux 中 的make install make的原理是执行一个叫Makefile文件里的指令,make的基本用处是自动根据makefile里的指令来编译源文件 。它还可以用来做比如安装软件,卸载软件等事情,但前提是作者在makefile里写了 。比如makefile里有这么些内容:
install :
然后用make install的话,make程序就会按照上面install:后面的指令执行安装,uninstall也是一样的道理,大部分的作者会写有卸载的部分,这时只要简单地执行make unistall就可以,如果作者懒没有写,那就只有根据make install中的步骤,看它把什么文件拷到哪去了,然后分别手动删除 。
还有关键的一点是,编译安装完成后,不要删除源代码,不然就算作者写了unnistall目标,你也没有makefile可以执行了 。
4. linux 在哪个目录 make make install make的当然是在源代码文件的目录,因为make命令执行的,其实是一个名为makefile,或者是名为Makefile(Linux是大小写敏感的)的文件里的内容,这个文件就是你下载的源代码压缩包,解压后的目录里面的,和代码文件位于同一个目录 。
而make install执行的其实是Makefile里面的,一个名为“install”的“目标”(“目标”是Makefile里面的一个概念),这个“目标”后面跟的是一段命令,可以理解为“目标”后跟了一段shell脚本,这段命令执行的就是把make好的程序安装到系统的操作 。如果你要看看具体install到了那个目录,可以查看这个Makefile文件的内容,看看install这个“目标”中定义的安装目录的宏(“宏”也是Makefile中的一个概念),宏是全部大写的变量,这个宏类似于$(INSTDIR)这种字样 。
5. makefile:多个目录下makefile 的写法 1、假定.h文件在Header目录里,.c文件在Source目录里,这两个目录文件在Myapp中,Makefile也在Myapp中 。
2、Makefile如下 。
----------------------------------------------------------------------------------
all: myapp
myapp: main.o b.o c.o
gcc -o myapp main.o b.o c.o
main.o: ./Source/main.c ./Header/a.h
gcc -c ./Source/main.c -I./Header
b.o: ./Source/b.c ./Header/a.h ./Header/b.h
gcc -c ./Source/b.c -I./Header
c.o: ./Source/c.c ./Header/b.h ./Header/c.h
gcc -c ./Source/c.c -I./Header
clean:
rm -f *.o
------------------------------------------------------------
3、话说回来,这样做太麻烦 。
6. 如何写Makefile文件 如果你想写 Makefile 的话,那么你只要用一个不将制表符过滤掉的文本编辑器就可以了,用 vi/vim 可以,用 emacs 可以,用其它的 geditor 也是可以的,只要是文本编辑器就可以了 。你在 win 下也可以用记事本写 Makefile ,当然要确保你的系统已经安装了 make 了(最好了 GNU make) 。Makefile 是不需要后缀的,也就是说 Makefile 的文件名就是 Makefile 。
下面我给出一个我写的一个简单的 Makefile 给你参考一下吧: