gpt4 book ai didi

linux - 为什么我在 Linux 中编译 sctp 程序失败?

转载 作者:可可西里 更新时间:2023-11-01 11:49:41 30 4
gpt4 key购买 nike

首先我在 Ubuntu 12.04 上安装 sctp
sudo apt-get install libsctp-dev lksctp-tools
然后在我的 .c 文件中,我包括:

#include < netinet/in.h >
#include < netinet/sctp.h >
#include < sys/socket.h >
#include < stdlib.h >
#include < unistd.h >

然而,当我用gcc编译时,结果是:

 undefined reference to `sctp_recvmsg'
undefined reference to `sctp_get_no_strms'
undefined reference to `sctp_sendmsg'

怎么了?

最佳答案

如果你真的用 gcc temp.c -o temp 编译,那么你没有链接任何库(默认的 libc.6.so 除外),你需要gcc 的一些附加参数;也许尝试编译

 gcc -Wall -g temp.c -lsctp -o temp

一旦您的程序在gdb 调试器的帮助下被调试并且您认为它没有错误,您可以要求编译器使用

 gcc -Wall -O2 temp.c -lsctp -o temp

gcc 的程序参数顺序非常重要。

关于linux - 为什么我在 Linux 中编译 sctp 程序失败?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16131019/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com