免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 5132 | 回复: 2
打印 上一主题 下一主题

makefile链接静态库的问题 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2009-12-24 11:24 |只看该作者 |倒序浏览
makefile内容:

LD_LIBS := $(LIB_DIR)/MyLib.a
CCLD_LIBS := -lm $(LD_LIBS)

CFLAGS =  -Wpointer-arith -Wundef -Wall -Wstrict-prototypes -g  -pipe
CFLAGS +=  -O$(OPTLEVEL)

LKFLAGS =-nostdlib -Wl,--gc-sections -Wl,-static

%.o: %.c
$(CC) $ < -c $(CFLAGS) $(BASE_INCLUDES) -o $@

.PHONY: all
all: $(EXPORT_BIN)

$(EXPORT_BIN): MainTask.o $(LD_LIBS)
@echo "Linking $(patsubst $(EXPORT_PATH)/%,%,$@) ..."
$(CC) $(CFLAGS) $(LKFLAGS) $ < -o $@ $(CCLD_LIBS)

展开:
arm-linux-gcc -Wpointer-arith -Wundef -Wall -Wstrict-prototypes -g  -pipe -O0 -nostdlib -Wl,--gc-sections -Wl,-static MainTask.o  -o MainTask -lm /usr/src/app/lib/MyLib.a

结果:
arm-linux/bin/ld: warning: cannot find entry symbol _start; defaulting to 00008074


请高手帮忙指出原因,感谢感谢!

论坛徽章:
0
2 [报告]
发表于 2009-12-24 14:34 |只看该作者
-lm是链接诶数学库吧。
如果是想链接Mylib.a ,应该用-l

论坛徽章:
0
3 [报告]
发表于 2009-12-24 15:31 |只看该作者
问题找到了

LKFLAGS =-nostdlib -Wl,--gc-sections -Wl,-static

-nostdlib 导致忽略了mian的调用
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP