1

私はこのコードをコンパイルしようとします:

static uint64_t
push(int fd, SOCKET sock, SSL *ssl, const char *buf, uint64_t len)
{
    uint64_t    sent;
    int     n, k;

    sent = 0;
    while (sent < len) {

        /* How many bytes we send in this iteration */
        k = len - sent > INT_MAX ? INT_MAX : (int) (len - sent);

        if (ssl != NULL) {
            n = SSL_write(ssl, buf + sent, k);
        } else if (fd != -1) {
            n = write(fd, buf + sent, k);
        } else {
            n = send(sock, buf + sent, k, 0);
        }

        if (n < 0)
            break;

        sent += n;
    }

    return (sent);
}

そして、このリンカ エラーが発生します: Linking...
mongoose.obj : error LNK2019: unresolved external symbol _send@16 referenced in function _push

私は何が欠けていますか?それはいくつかのlibか何かでなければなりません。リンクに何を追加する必要があるか覚えていません。

4

3 に答える 3

2

あなたが実際にどのような質問をしているのかは完全には明らかではありません。しかし、あなたのリンカは、見るように指示されたどこにも「送信」機能を見つけられないようです。

于 2009-04-27T21:32:08.013 に答える
1

通常のエラーとの違いは、コンパイラやコード エディタではなく、リンカを使用して解決する必要があることです。

于 2009-04-27T21:32:11.647 に答える