ubuntu14.04 32位:
ssd_clientstub.c.so.o:在函数‘ConnectToServer’中:
dnssd_clientstub.c:(.text+0xcd0):对‘__stack_chk_fail_local’未定义的引用
objects/prod/dnssd_clientstub.c.so.o:dnssd_clientstub.c:(.text+0xdd0): more undefined references to `__stack_chk_fail_local' follow
ld: build/prod/libdns_sd.so: hidden symbol `__stack_chk_fail_local' isn't defined
ld: 最终连接失败: 错误的值
make: *** [build/prod/libdns_sd.so] 错误 1
有人
https://github.com/dailab/libsml/issues/3
https://github.com/kfl/mosml/issues/14
http://stackoverflow.com/questions/10712972/what-is-the-use-of-fno-stack-protector
说是因为没有加这个选项: 塔机配件大全
MECFLAGS = " -O2 -fno-stack-protector -fno-stack-protector-all "
加到CFLAGS之后,发现cc不识别他们!
root@Ubuntu32:/home/zhangbin/STM/airplay/mdns/Community-mdnsResponder/mdns-patched/mDNSPosix# make os=linux
cc: error: -fno-stack-protector -fno-stack-protector-all : 没有那个文件或目录
make: *** [objects/prod/PosixDaemon.c.o] 错误 1
ubuntu官方说,LD用了ld而不是gcc,对比了Makefile:
LD = gcc -shared
这样就ok了!