我无法与gcc-7链接

我无法与gcc-7链接,c,gcc,compiler-errors,linker,gcc7,C,Gcc,Compiler Errors,Linker,Gcc7,我有3个文件: tester.c,knring\u sequential.c,knring.h 我按顺序编译它们: gcc-7 -c knnring_sequential.c -o knnring_sequential.o ar rcs knnring_sequential.a knnring_sequential.o gcc-7 -o tester tester.c knnring_sequential.a 当我尝试链接gcc-7时,我收到以下错误消息: Undefined symbols

我有3个文件:
tester.c
knring\u sequential.c
knring.h

我按顺序编译它们:

gcc-7 -c knnring_sequential.c -o knnring_sequential.o
ar rcs knnring_sequential.a knnring_sequential.o
gcc-7 -o tester tester.c knnring_sequential.a
当我尝试链接gcc-7时,我收到以下错误消息:

Undefined symbols for architecture x86_64:
  "___asan_init", referenced from:
      __GLOBAL__sub_I_00099_0_knnring_sequential.c in knnring_sequential.a(knnring_sequential.o)
  "___asan_report_load4", referenced from:
      _insert in knnring_sequential.a(knnring_sequential.o)
      _quickSelect in knnring_sequential.a(knnring_sequential.o)
      _quickSort in knnring_sequential.a(knnring_sequential.o)
      _kNN in knnring_sequential.a(knnring_sequential.o)
  "___asan_report_load8", referenced from:
      _insert in knnring_sequential.a(knnring_sequential.o)
      _quickSelect in knnring_sequential.a(knnring_sequential.o)
      _quickSort in knnring_sequential.a(knnring_sequential.o)
      _compute_distances in knnring_sequential.a(knnring_sequential.o)
      _kNN in knnring_sequential.a(knnring_sequential.o)
  "___asan_report_load_n", referenced from:
      _kNN in knnring_sequential.a(knnring_sequential.o)
  "___asan_report_store4", referenced from:
      _insert in knnring_sequential.a(knnring_sequential.o)
      _kNN in knnring_sequential.a(knnring_sequential.o)
  "___asan_report_store8", referenced from:
      _insert in knnring_sequential.a(knnring_sequential.o)
      _compute_distances in knnring_sequential.a(knnring_sequential.o)
      _kNN in knnring_sequential.a(knnring_sequential.o)
  "___asan_version_mismatch_check_v8", referenced from:
      __GLOBAL__sub_I_00099_0_knnring_sequential.c in knnring_sequential.a(knnring_sequential.o)
代码可以在这里找到


怎么了?

你用的是Mac电脑吗?无论您是否是,GCC的ASAN(地址消毒器)部分的问题似乎是缺少库或库不完整。您从哪里获得的
gcc-7
?您是否能够编译并链接任何其他代码?你确定已经显示了你使用的所有选项吗?(如果是这样的话,你为什么不使用
-Wall-Wextra-Werror
?它们有助于防止很多问题。)你在Mac上吗?无论您是否是,GCC的ASAN(地址消毒器)部分的问题似乎是缺少库或库不完整。您从哪里获得的
gcc-7
?您是否能够编译并链接任何其他代码?你确定已经显示了你使用的所有选项吗?(如果是这样,为什么不使用
-Wall-Wextra-Werror
?它们有助于防止许多问题。)