FreeTDS 编译时报 undefined reference to `__builtin_bswap16'

编译的是2020-01-06从Git上下载的freetds代码,发现添加 CFLAGS=-DWORDS_BIGENDIAN会导致freetds连接SQLserver出现(20017+20002)错误,怎么重装都无效。

参考:https://blog.csdn.net/spy_007_/article/details/92841451

./configure 时添加 CFLAGS=-DWORDS_BIGENDIAN 即可

然后再make,错误解决

还是用下面的方法好:

在代码中实现该函数,参考:https://gcc.gnu.org/bugzilla/show_bug.cgi?id=52624#c1

static inline unsigned short __builtin_bswap16(unsigned short a)
{
  return (a<<8)|(a>>8);
}
原文地址:https://www.cnblogs.com/winstonet/p/12159669.html