GCC 找不到-Wl 命令,求助

clirus 2015-07-21 10:44:46
在写makefile的时候,用到了下面两个链接选项,以下两个分别在不同的文件里面。
LDFLAGS += -Wl -Wall -lpthread -lc -ldl
LDFLAGS += -Wl -lpthread
在编译链接的时候出现了如下的错误:
gcc: error: unrecognized command line option ‘-Wl’
gcc: error: unrecognized command line option ‘-Wl’

通过gcc -v查看gcc版本如下:
root:~# gcc -v
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/4.8/lto-wrapper
Target: x86_64-linux-gnu
gcc version 4.8.4 (Ubuntu 4.8.4-2ubuntu1~14.04)

求大神帮助!
...全文
1264 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
zhxianbin 2015-07-23
  • 打赏
  • 举报
回复 1
应该是 -Wl, 后面一个 逗号 吧
zhxianbin 2015-07-21
  • 打赏
  • 举报
回复
哪来的 Wl,什么意思?
zhxianbin 2015-07-21
  • 打赏
  • 举报
回复
-fsyntax-only  -pedantic  -pedantic-errors -w  -Wextra  -Wall  -Waddress  -Waggregate-return
           -Warray-bounds -Wno-attributes -Wno-builtin-macro-redefined -Wc++-compat -Wc++0x-compat -Wcast-align
           -Wcast-qual -Wchar-subscripts -Wclobbered  -Wcomment -Wconversion  -Wcoverage-mismatch  -Wno-deprecated
           -Wno-deprecated-declarations -Wdisabled-optimization -Wno-div-by-zero -Wempty-body  -Wenum-compare
           -Wno-endif-labels -Werror  -Werror=* -Wfatal-errors  -Wfloat-equal  -Wformat  -Wformat=2
           -Wno-format-contains-nul -Wno-format-extra-args -Wformat-nonliteral -Wformat-security  -Wformat-y2k
           -Wframe-larger-than=len -Wignored-qualifiers -Wimplicit  -Wimplicit-function-declaration  -Wimplicit-int
           -Winit-self  -Winline -Wno-int-to-pointer-cast -Wno-invalid-offsetof -Winvalid-pch -Wlarger-than=len
           -Wunsafe-loop-optimizations -Wlogical-op -Wlong-long -Wmain  -Wmissing-braces
           -Wmissing-field-initializers -Wmissing-format-attribute  -Wmissing-include-dirs -Wmissing-noreturn
           -Wno-mudflap -Wno-multichar  -Wnonnull  -Wno-overflow -Woverlength-strings  -Wpacked
           -Wpacked-bitfield-compat  -Wpadded -Wparentheses  -Wpedantic-ms-format -Wno-pedantic-ms-format
           -Wpointer-arith  -Wno-pointer-to-int-cast -Wredundant-decls -Wreturn-type  -Wsequence-point  -Wshadow
           -Wsign-compare  -Wsign-conversion  -Wstack-protector -Wstrict-aliasing -Wstrict-aliasing=n
           -Wstrict-overflow -Wstrict-overflow=n -Wswitch  -Wswitch-default  -Wswitch-enum -Wsync-nand
           -Wsystem-headers  -Wtrigraphs  -Wtype-limits  -Wundef  -Wuninitialized -Wunknown-pragmas  -Wno-pragmas
           -Wunreachable-code -Wunused  -Wunused-function  -Wunused-label  -Wunused-parameter -Wunused-value
           -Wunused-variable -Wunused-but-set-parameter -Wunused-but-set-variable -Wvariadic-macros -Wvla
           -Wvolatile-register-var  -Wwrite-strings
clirus 2015-07-21
  • 打赏
  • 举报
回复
clirus 2015-07-21
  • 打赏
  • 举报
回复
自顶一把
clirus 2015-07-21
  • 打赏
  • 举报
回复 2
4L ,-Wl选项告诉编译器将后面的参数传递给链接器,如果连接器通过被编译器驱动来间接引用(比如gcc), 那所有的连接器命令行选项前必须加上前缀'-Wl'

18,773

社区成员

发帖
与我相关
我的任务
社区描述
Linux/Unix社区 专题技术讨论区
社区管理员
  • 专题技术讨论区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧