躺_ 2019-10-29 10:35 采纳率: 0%
浏览 360

linux c++ sds库 提示 undefined reference to `sdsempty()'

报错:
/tmp/cc3R3ayZ.o: In function 'main'
c.cpp:(.text+0x9): undefined reference to 'sdsempty()'
collect2: error: ld returned 1 exit status**

#include <iostream>
#include <unistd.h>
#include <sds.h>
using namespace std;

int main(){

    sds s= sdsempty();

    return 0;
}

我更新了sds文件,然后:

[root@localhost c4]# g++ -std=c++11 -o test -I/wgs/sds  c.cpp
In file included from c.cpp:3:0:
/wgs/sds/sds.h: In function ‘size_t sdsavail(sds)’:
/wgs/sds/sds.h:83:87: error: invalid conversion from ‘void*’ to ‘sdshdr8*’ [-fpermissive]
 #define SDS_HDR_VAR(T,s) struct sdshdr##T *sh = (void*)((s)-(sizeof(struct sdshdr##T)));
                                                                                       ^
/wgs/sds/sds.h:111:13: note: in expansion of macro ‘SDS_HDR_VAR’
             SDS_HDR_VAR(8,s);
             ^
/wgs/sds/sds.h:83:87: error: invalid conversion from ‘void*’ to ‘sdshdr16*’ [-fpermissive]
 #define SDS_HDR_VAR(T,s) struct sdshdr##T *sh = (void*)((s)-(sizeof(struct sdshdr##T)));
                                                                                       ^
/wgs/sds/sds.h:115:13: note: in expansion of macro ‘SDS_HDR_VAR’
             SDS_HDR_VAR(16,s);
             ^
/wgs/sds/sds.h:83:87: error: invalid conversion from ‘void*’ to ‘sdshdr32*’ [-fpermissive]
 #define SDS_HDR_VAR(T,s) struct sdshdr##T *sh = (void*)((s)-(sizeof(struct sdshdr##T)));
                                                                                       ^
/wgs/sds/sds.h:119:13: note: in expansion of macro ‘SDS_HDR_VAR’
             SDS_HDR_VAR(32,s);
             ^
/wgs/sds/sds.h:83:87: error: invalid conversion from ‘void*’ to ‘sdshdr64*’ [-fpermissive]
 #define SDS_HDR_VAR(T,s) struct sdshdr##T *sh = (void*)((s)-(sizeof(struct sdshdr##T)));
                                                                                       ^
/wgs/sds/sds.h:123:13: note: in expansion of macro ‘SDS_HDR_VAR’
             SDS_HDR_VAR(64,s);
             ^

这个是啥原因啊?

  • 写回答

1条回答 默认 最新

  • 裸奔的可比克 2019-10-29 11:06
    关注

    #include  <stdarg.h>  //加这个头文件试试,不知道刚刚为啥没显示

    评论

报告相同问题?

悬赏问题

  • ¥15 使用C#,asp.net读取Excel文件并保存到Oracle数据库
  • ¥15 C# datagridview 单元格显示进度及值
  • ¥15 thinkphp6配合social login单点登录问题
  • ¥15 HFSS 中的 H 场图与 MATLAB 中绘制的 B1 场 部分对应不上
  • ¥15 如何在scanpy上做差异基因和通路富集?
  • ¥20 关于#硬件工程#的问题,请各位专家解答!
  • ¥15 关于#matlab#的问题:期望的系统闭环传递函数为G(s)=wn^2/s^2+2¢wn+wn^2阻尼系数¢=0.707,使系统具有较小的超调量
  • ¥15 FLUENT如何实现在堆积颗粒的上表面加载高斯热源
  • ¥30 截图中的mathematics程序转换成matlab
  • ¥15 动力学代码报错,维度不匹配