分页: 2 / 2

Re: 送给懒人的工具,关于make的

发表于 : 2009-10-06 9:09
tusooa
如果是一个文件用不着

代码: 全选

06/10/2009 09:14:02
tusooa (~/develop)
>> mkdir -pv C/helloworld
mkdir: 已创建目录 "C/helloworld"
06/10/2009 09:14:10
tusooa (~/develop)
>> cd C/helloworld/
06/10/2009 09:14:15
tusooa (~/develop/C/helloworld)
>> ls
06/10/2009 09:14:16
tusooa (~/develop/C/helloworld)
>> cat > helloworld.c << "EOF"
> #include <stdio.h>
>
> int main(void)
> {
>     printf("Hello world!");
>     return 0;
> }
> EOF
06/10/2009 09:15:08
tusooa (~/develop/C/helloworld)
>> make helloworld
no objdir found. Tried /home/tusooa/develop/C/helloworld
06/10/2009 09:15:15
tusooa (~/develop/C/helloworld)
>> \make helloworld
cc     helloworld.c   -o helloworld
06/10/2009 09:15:19
tusooa (~/develop/C/helloworld)
>> ./helloworld
Hello world!
写了一个支持多个文件的:
lzma-mme-0.1.tar
(945 Bytes) 已下载 449 次
用法:

代码: 全选

mme [-l language]
make
make subdirs
make PREFIX=绝对路径 install

代码: 全选

06/10/2009 12:21:53                                                                                             
tusooa (~/develop/C/tests)                                                                                      
>> ls                                                                                                           
1.h  2.h  3.h  bar  bar.c  bar.c~  foo  foo.c  foo.c~  main.c  Makefile                                         
06/10/2009 12:21:54                                                                                             
tusooa (~/develop/C/tests)                                                                                      
>> mme                                                                                                          
06/10/2009 12:21:57                                                                                             
tusooa (~/develop/C/tests)                                                                                      
>> make                                                                                                         
makeobj[0]: Entering directory `/home/tusooa/develop/C/tests'                                                   
cc -Wall   -c -o bar.o bar.c                                                                                    
cc -Wall   -c -o foo.o foo.c                                                                                    
cc -Wall   -c -o main.o main.c                                                                                  
cc -Wall bar.o foo.o main.o -o tests                                                                            
makeobj[0]: Leaving directory `/home/tusooa/develop/C/tests'                                                    
06/10/2009 12:21:59                                                                                             
tusooa (~/develop/C/tests)                                                                                      
>> make subdirs                                                                                                 
makeobj[0]: Entering directory `/home/tusooa/develop/C/tests'                                                   
make -C ./foo all                                                                                               
make[1]: Entering directory `/home/tusooa/develop/C/tests/foo'                                                  
cc -Wall   -c -o main.o main.c                                                                                  
cc -Wall main.o -o foo                                                                                          
make subdirs                                                                                                    
make[2]: Entering directory `/home/tusooa/develop/C/tests/foo'                                                  
make[2]: Nothing to be done for `subdirs'.                                                                      
make[2]: Leaving directory `/home/tusooa/develop/C/tests/foo'                                                   
make[1]: Leaving directory `/home/tusooa/develop/C/tests/foo'                                                   
make -C ./bar all                                                                                               
make[1]: Entering directory `/home/tusooa/develop/C/tests/bar'                                                  
cc -Wall   -c -o main.o main.c                                                                                  
cc -Wall main.o -o bar                                                                                          
make subdirs                                                                                                    
make[2]: Entering directory `/home/tusooa/develop/C/tests/bar'                                                  
make[2]: Nothing to be done for `subdirs'.                                                                      
make[2]: Leaving directory `/home/tusooa/develop/C/tests/bar'                                                   
make[1]: Leaving directory `/home/tusooa/develop/C/tests/bar'                                                   
makeobj[0]: Leaving directory `/home/tusooa/develop/C/tests'                                                    
06/10/2009 12:22:02                                                                                             
tusooa (~/develop/C/tests)                                                                                      
>> make PREFIX=$PWD/build install
makeobj[0]: Entering directory `/home/tusooa/develop/C/tests'
make -C ./foo all                                            
make[1]: Entering directory `/home/tusooa/develop/C/tests/foo'
make subdirs                                                  
make[2]: Entering directory `/home/tusooa/develop/C/tests/foo'
make[2]: Nothing to be done for `subdirs'.                    
make[2]: Leaving directory `/home/tusooa/develop/C/tests/foo' 
make[1]: Leaving directory `/home/tusooa/develop/C/tests/foo' 
make -C ./bar all                                             
make[1]: Entering directory `/home/tusooa/develop/C/tests/bar'
make subdirs                                                  
make[2]: Entering directory `/home/tusooa/develop/C/tests/bar'
make[2]: Nothing to be done for `subdirs'.                    
make[2]: Leaving directory `/home/tusooa/develop/C/tests/bar' 
make[1]: Leaving directory `/home/tusooa/develop/C/tests/bar' 
make subdirs                                                  
make[1]: Entering directory `/home/tusooa/develop/C/tests'    
make -C ./foo all                                             
make[2]: Entering directory `/home/tusooa/develop/C/tests/foo'
make subdirs                                                  
make[3]: Entering directory `/home/tusooa/develop/C/tests/foo'
make[3]: Nothing to be done for `subdirs'.                    
make[3]: Leaving directory `/home/tusooa/develop/C/tests/foo' 
make[2]: Leaving directory `/home/tusooa/develop/C/tests/foo' 
make -C ./bar all                                             
make[2]: Entering directory `/home/tusooa/develop/C/tests/bar'
make subdirs                                                  
make[3]: Entering directory `/home/tusooa/develop/C/tests/bar'
make[3]: Nothing to be done for `subdirs'.                    
make[3]: Leaving directory `/home/tusooa/develop/C/tests/bar' 
make[2]: Leaving directory `/home/tusooa/develop/C/tests/bar' 
make[1]: Leaving directory `/home/tusooa/develop/C/tests'     
mkdir -pv /home/tusooa/develop/C/tests/build/bin              
mkdir: 已创建目录 "/home/tusooa/develop/C/tests/build"        
mkdir: 已创建目录 "/home/tusooa/develop/C/tests/build/bin"    
cp -Rv tests /home/tusooa/develop/C/tests/build/bin           
"tests" -> "/home/tusooa/develop/C/tests/build/bin/tests"     
chmod -v 755 /home/tusooa/develop/C/tests/build/bin/tests     
"/home/tusooa/develop/C/tests/build/bin/tests" 的权限模式保留为0755 (rwxr-xr-x)
make -C ./foo install                                                          
make[1]: Entering directory `/home/tusooa/develop/C/tests/foo'                 
make subdirs                                                                   
make[2]: Entering directory `/home/tusooa/develop/C/tests/foo'                 
make[2]: Nothing to be done for `subdirs'.                                     
make[2]: Leaving directory `/home/tusooa/develop/C/tests/foo'                  
mkdir -pv /home/tusooa/develop/C/tests/build/bin
cp -Rv foo /home/tusooa/develop/C/tests/build/bin
"foo" -> "/home/tusooa/develop/C/tests/build/bin/foo"
chmod -v 755 /home/tusooa/develop/C/tests/build/bin/foo
"/home/tusooa/develop/C/tests/build/bin/foo" 的权限模式保留为0755 (rwxr-xr-x)
make[1]: Leaving directory `/home/tusooa/develop/C/tests/foo'
make -C ./bar install
make[1]: Entering directory `/home/tusooa/develop/C/tests/bar'
make subdirs
make[2]: Entering directory `/home/tusooa/develop/C/tests/bar'
make[2]: Nothing to be done for `subdirs'.
make[2]: Leaving directory `/home/tusooa/develop/C/tests/bar'
mkdir -pv /home/tusooa/develop/C/tests/build/bin
cp -Rv bar /home/tusooa/develop/C/tests/build/bin
"bar" -> "/home/tusooa/develop/C/tests/build/bin/bar"
chmod -v 755 /home/tusooa/develop/C/tests/build/bin/bar
"/home/tusooa/develop/C/tests/build/bin/bar" 的权限模式保留为0755 (rwxr-xr-x)
make[1]: Leaving directory `/home/tusooa/develop/C/tests/bar'
makeobj[0]: Leaving directory `/home/tusooa/develop/C/tests'
06/10/2009 12:22:19
tusooa (~/develop/C/tests)
>> ./build/bin/
bar    foo    tests
06/10/2009 12:22:19
tusooa (~/develop/C/tests)
>> ./build/bin/tests foobar
Function foo is running, arg is foobar.
bar: arg is foobar.
06/10/2009 12:22:31
tusooa (~/develop/C/tests)
>> ./build/bin/foo
foo
06/10/2009 12:22:36
tusooa (~/develop/C/tests)
>> ./build/bin/bar
bar
顺便:解压用

代码: 全选

tlz -xvvf lzma-mme-0.1.tar -C$HOME/bin

Re: 送给懒人的工具,关于make的

发表于 : 2009-10-17 2:14
dshbusiness

代码:
tlz -xvvf lzma-mme-0.1.tar -C$HOME/bin
嗯……tlz是什么软件,我下载不到啊……

Re: 送给懒人的工具,关于make的

发表于 : 2009-10-21 21:54
tusooa
dshbusiness 写了:

代码:
tlz -xvvf lzma-mme-0.1.tar -C$HOME/bin
嗯……tlz是什么软件,我下载不到啊……
sorry, tlz==tar --lzma

代码: 全选

echo 'alias tlz="tar --lzma"' >> ~/.bashrc &&
. ~/.bashrc

Re: 送给懒人的工具,关于make的

发表于 : 2011-06-22 13:33
jackone
学习一下

Re: 送给懒人的工具,关于make的

发表于 : 2011-08-23 10:44
rgwan
用auto{conf,make},intltool的飘过

Re: 送给懒人的工具,关于make的

发表于 : 2011-10-20 14:03
alacwang
太感谢了。我老是记不住那些命令。纠结的要死。

Re: 送给懒人的工具,关于make的

发表于 : 2011-10-20 15:03
zhaoqingyu51
学习了。。

Re: 送给懒人的工具,关于make的

发表于 : 2011-10-20 17:53
jaqty2
mark

Re: 送给懒人的工具,关于make的

发表于 : 2011-11-30 17:03
Cherrot
我喜欢 qmake~

Re: 送给懒人的工具,关于make的

发表于 : 2013-04-29 16:17
pacocai
我也很讨厌写makefile……………………

Re: 送给懒人的工具,关于make的

发表于 : 2013-09-02 21:29
yedekuan
我是来跟楼主学习的

Re: 送给懒人的工具,关于make的

发表于 : 2015-02-17 11:28
phonix512
谢谢楼主分享!!!!

Re: 送给懒人的工具,关于make的

发表于 : 2016-01-31 18:25
科学之子
"下载"在哪里?没了?