0

我想使用__sync_lock_test_and_setANSI c 中不可用的函数,但它是 GNU C 扩展。

编译一段使用此扩展的代码时,出现以下错误,

/tmp/cc7Iat9G.o: In function `main':
swap.c:(.text+0x40): undefined reference to `__sync_lock_test_set'
collect2: ld returned 1 exit status

那么,我应该包含什么头文件,或者我应该给出什么编译器标志来编译带有 GNU C 扩展的代码

4

1 回答 1

1

我想你是按__sync_lock_test_set你的意思输入__sync_lock_test_and_set的。后者在关于 atomic builtins 的 GCC 文档中有所提及;前者不是。

于 2013-03-04T17:48:53.560 回答