linux的make Make问题

新手园地& & & 硬件问题Linux系统管理Linux网络问题Linux环境编程Linux桌面系统国产LinuxBSD& & & BSD文档中心AIX& & & 新手入门& & & AIX文档中心& & & 资源下载& & & Power高级应用& & & IBM存储AS400Solaris& & & Solaris文档中心HP-UX& & & HP文档中心SCO UNIX& & & SCO文档中心互操作专区IRIXTru64 UNIXMac OS X门户网站运维集群和高可用服务器应用监控和防护虚拟化技术架构设计行业应用和管理服务器及硬件技术& & & 服务器资源下载云计算& & & 云计算文档中心& & & 云计算业界& & & 云计算资源下载存储备份& & & 存储文档中心& & & 存储业界& & & 存储资源下载& & & Symantec技术交流区安全技术网络技术& & & 网络技术文档中心C/C++& & & GUI编程& & & Functional编程内核源码& & & 内核问题移动开发& & & 移动开发技术资料ShellPerlJava& & & Java文档中心PHP& & & php文档中心Python& & & Python文档中心RubyCPU与编译器嵌入式开发驱动开发Web开发VoIP开发技术MySQL& & & MySQL文档中心SybaseOraclePostgreSQLDB2Informix数据仓库与数据挖掘NoSQL技术IT业界新闻与评论IT职业生涯& & & 猎头招聘IT图书与评论& & & CU技术图书大系& & & Linux书友会二手交易下载共享Linux文档专区IT培训与认证& & & 培训交流& & & 认证培训清茶斋投资理财运动地带快乐数码摄影& & & 摄影器材& & & 摄影比赛专区IT爱车族旅游天下站务交流版主会议室博客SNS站务交流区CU活动专区& & & Power活动专区& & & 拍卖交流区频道交流区
白手起家, 积分 18, 距离下一级还需 182 积分
论坛徽章:0
编译机是4核PC,RHEL6.1系统,使用并发编译 make -j4
遇到warning: jobserver unavailable: using -j1. Add `+' to parent make rule.
网上查到这个warning的说明:
为了现实make进程之间的通信,上层make进程将传递信息给子make进程。在传递信息过程中可能存在这种情况,子make进程不是一个实际的make进程,而上层make却不能确定子进程是否是真实的make进程。它只是将所有信息传递下去。上层make采用正常的算法来决定这些(参考 4.6.1 变量MAKE 一小节)。当出现这种情况,子进程只会接受父进程传递的部分有用的信息。子进程会产生该警告信息,之后按照其内建的顺序方式进行处理。
但是一直不知道Add `+' to parent make rule.该怎么理解?这个Add该怎么操作?请教大神指点。
大富大贵, 积分 17310, 距离下一级还需 2690 积分
论坛徽章:84
mysubdir:
& & $(MAKE) -C mysubdir
or like this:
mysubdir:
& & +make -C mysubdir复制代码
北京盛拓优讯信息技术有限公司. 版权所有 京ICP备号 北京市公安局海淀分局网监中心备案编号:22
广播电视节目制作经营许可证(京) 字第1234号
中国互联网协会会员&&联系我们:
感谢所有关心和支持过ChinaUnix的朋友们
转载本站内容请注明原作者名及出处来源:百度知道
责任编辑:王亮字体:
为了帮助网友解决“linux Makefile文件make时出现的问题”相关的问题,学网通过互联网对“linux Makefile文件make时出现的问题”相关的解决方案进行了整理,用户详细问题包括:我先把代码写出来 是自己改的 但是make一直报错 我的程序本身没有问题下面是报错原因:arm-linux-gcc -nostdinc -I/home/iot/smart210/Inttest/include -Wall -O2 -fno-builtin -c -o /home/iot/smart210/Inttest/OBJS/start.o start.Sarm-linux-gcc -n...$@ $&iot&#47:= start:cd lib.o main.o uart.a;$@${OBJDUMP} -D int.elf & int: *** [main.o] 错误 1我的意图是建立一个OBJS的文件夹 用于存放所有编译后的文件Makefile具体实现如下:CC
= arm-linux-gccLD
= arm-linux-ldAR
= arm-linux-arOBJCOPY = arm-linux-objcopyOBJDUMP = arm-linux-objdumpOBJSDIR = $(shell pwd)/OBJSINCLUDEDIR .o clock.bin: lib/smart210/Inttest/include -Wall -O2 -fno-builtin -c -o /main.%.o:%.c${CC} $(CPPFLAGS) $(CFLAGS) -c -o $(OBJJSDIR)/$@ $&%.o:%.S${CC} $(CPPFLAGS) $(CFLAGS) -c -o $(OBJSDIR)&#47.o lib/OBJS/start.o start.Sarm-linux-gcc -nostdinc -I/home/t create /Inttest/libc.a cd ..alib/ make:= $(shell pwd)/includeCFLAGS 我先把代码写出来 是自己改的 但是make一直报错 我的程序本身没有问题下面是报错原因:arm-linux-gcc -nostdinc -I/$(objs)$(LD) -Tinclude -Wall -O2 -fno-builtin -c -o &#47.o main.cAssembler messages:Fatal error: can&#39.lds $(OBJSDIR)/*.o -o $(OBJSDIR)/int.elf$(OBJCOPY) -O binary $(OBJSDIR)/int.elf $(OBJSDIR)/home/iot/smart210/Inttest/main.o: Permission deniedmake:= -Wall -O2 -fno-builtinCPPFLAGS
:= -nostdinc -I$(INCLUDEDIR)export CC AR LD OBJCOPY OBJDUMP OBJSDIR INCLUDEDIR CFLAGS CPPFLAGS objs : $(OBJSDIR)&#47.o int.dis.PHONY ;$(OBJSDIR):mkdir -home/iot/smart210&#47展开,具体解决方案如下:用户提供的回答1:“Permission denied”意为“授权失败”,可能是目标文件夹不存在或只读,或目标文件已存在且只读,或目标位置错误根据提示,你的main.o是在/创建的
答:“Permission denied”意为“授权失败”,可能是目标文件夹不存在或只读,或目标文件已存在且只读,或目标位置错误 根据提示,你的main.o是在/创建的答:“Permission denied”意为“授权失败”,可能是目标文件夹不存在或只读,或目标文件已存在且只读,或目标位置错误 根据提示,你的main.o是在/创建的 免费提供最新Linux技术教程书籍,入门自学书籍《linux就该这么学》,为开源技术爱好者努力做得更...答:从错误信息上看,你引用了”/src/makedir.mkinc“文件,应该是引用路径不对。 检查一下你的PATH_PROJECT_COMMON定义的是什么,感觉是被定义到了”/”。答:make是一种用于构建工程项目的工具 它默认会读取解析makefile(Makefile等)文件的内容并进行相关操作 也就是说make程序会从执行该命令的所在目录下读取makefile文件 如果当前目录下没有这个文件自然就无法进行相关的操作了 makefile文件可以是使...答:【make clean】 就可以实现clean命令。答:你没有myhead.h这个头文件答:1、make:是一个非常重要的编译命令,本质上它是一个程序。利用make工具,可以将大型的开发项目分解成为多个更易于管理的模块,对于一个包括几百个源文件的应用程序,使用make和makefile工具就可以简洁明快地理顺各个源文件之间纷繁复杂的相互关系...答:读一下README和INSTALL,每种软件安装方法不尽相同。webalizer依赖jpeg/zlib/libpng/freetype/gd/Xpm/TrueType等,需要提前安装。如果缺依赖包,估计./configure时候已经报错了您没有注意到。答:分析linux make命令与Makefile的区别: 1、make命令有一些内置的默认功能,但是光有这个还是不知道怎么build程序。必须提供一个文件告诉make应用程序的构造,这个文件就是makefile。 2、Make和makefile提供了强大的功能来管理项目的编译以及发布...答:无论是在Linux还是在Unix环境中,make都是一个非常重要的编译命令。不管是自己进行项目开发还是安装应用软件,我们都经常要用到 make或make install。利用make工具,我们可以将大型的开发项目分解成为多个更易于管理的模块,对于一个包括几百个...
3、在 UNIX 系统中,习惯使用 Makefile 作为 makfile 文件。如果要使用其他文件作为 makefile,则可利用类似下面的 make 命令选项指定 makefile 文件:
$ make -f Makefile.de...&&我在编译一个软件的源代码时,无论是在CYGWIN上还是在纯linux上编译都make时总是通不过,是编译平台的问题吗?
看make的输出,还有README和INSTALL。一般是... chmod +x tools/trans.exemakefile文件就类似于自动化脚本,如果你的源码包不完整,make命令找不到makefile文件的时候就会报错的!还有就是所需的编译器不能少,现在Linux写的程序90%以上都是C语言...分析linux make命令与Makefile的区别: 1、make命令有一些内置的默认功能,但是光有这... 必须提供一个文件告诉make应用程序的构造,这个文件就是makefile。 2、Make和mak...makefile 这个文件是由make这个命令生成的,也就是说运行make之后才会有makefile。运行过make之后,才是真的安装命令make install.
给你提示一下,在安装软件之前建议你...makefile文件如下:
图 2 抑制回显的makefile例
对该makefile文件执行make时,标准输... 使得makefile有一定的不兼容性。如果要考虑移植性问题,则要避免使用make伪指令。但...然后再在那个目录下得makefile里添加一些语句,比如obj -m什么的(把相应的驱动代码编译成模块),然后到内核文件夹的顶层目录make,生成相应的模块文件,就有你问题3的那一...linux就是这样不好,什么东西都有依赖关系,建议联网上网查查你的具体情况,然后安装你缺少的组件,本人特别不赞同没联网玩linux,太麻烦! Makefile 第22行包含的文件config.mk找不到。
configure做的对不对?
对照mplayer源码包中的README或INSTALL看编译配置过程。相关文章:
最新添加资讯
24小时热门资讯
Copyright &
xue163.net All Rights Reserved. 学网 版权所有
京ICP备号-1
京公网安备02号linux小白求助 make 编译死循环问题_linux吧_百度贴吧
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&签到排名:今日本吧第个签到,本吧因你更精彩,明天继续来努力!
本吧签到人数:0成为超级会员,使用一键签到本月漏签0次!成为超级会员,赠送8张补签卡连续签到:天&&累计签到:天超级会员单次开通12个月以上,赠送连续签到卡3张
关注:187,355贴子:
linux小白求助 make 编译死循环问题收藏
最近要使用S2E这个工具,但是在安装的过程中,make的时候系统一直在死循环,求大神指导
linux东北BGP多线高防节点震撼上线,国际Tier4高标准数据中心, SSD+DDR4强悍配置.金牌服务:①7*24小时运维支持②0元快速备案③故障百倍赔偿④5天无理由退款
我之前在虚拟机上make过这个工具,当时make并没有出现这种情况,后面因为这个工具还需要安装虚拟镜像,所以我装了个双系统,重新编译安装,就出现这个问题了
没有人么,自己顶一下
登录百度帐号博客访问: 59529
博文数量: 37
博客积分: 10
博客等级: 民兵
技术积分: 352
注册时间:
IT168企业级官微
微信号:IT168qiye
系统架构师大会
微信号:SACC2013
分类: LINUX 16:57:41
安装完go软件,并配置环境变量后,刚开始使用go编译运行程序就提示以下错误解决:
go build runtime: linux/686 must be bootstrapped using make.bash
提示错误为配置环境交叉编译错误。根本原因是在配置环境变量中,GOARCH 设备结构配置错误:686
# SET GO ENV
#export GOROOT=/usr/local/go
#export GOBIN=$GOROOT/bin
#export GOARCH=686
#export GOOS=linux
运行go version查询具体版本需求:为amd64
[root@localhost MyGo]# go version
go version go1.5rc1 linux/amd64
解决办法:
&&&&将配置的环境变量GOARCH参数修改为amd64,保持与安装版本一致。
# SET GO ENV
#export GOROOT=/usr/local/go
#export GOBIN=$GOROOT/bin
#export GOARCH=amd64
#export GOOS=linux
[root@localhost Go]# go run hello.go
Hello world!
常见的版本对应信息:
incomplete
incomplete
阅读(487) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~
请登录后评论。}

我要回帖

更多关于 linux的make 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信