首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >cpp-netlib抱怨缺少lboost线程。

cpp-netlib抱怨缺少lboost线程。
EN

Stack Overflow用户
提问于 2015-05-17 03:17:20
回答 1查看 121关注 0票数 0

我正在学习client,并尝试运行官方网站上给出的exmaple客户端。代码非常简单:

代码语言:javascript
复制
#include <boost/network/protocol/http/client.hpp>
#include <iostream>
int main(int argc, char *argv[]) {
    using namespace boost::network;

    if (argc != 2) {
        std::cout << "Usage: " << argv[0] << " [url]" << std::endl;
        return 1;
    }

    http::client client;
    http::client::request request(argv[1]);
    request << header("Connection", "close");
    http::client::response response = client.get(request);
    std::cout << body(response) << std::endl;
    return 0;
}

下面是这个c++应用程序的makefile : CC = g++ -std=c++11

代码语言:javascript
复制
CFLAG = -I/usr/local/Cellar/boost/1.57.0/include
LIBFLAG = -L/usr/local/Cellar/boost/1.57.0/lib  

all: client

client: client.o
    $(CC) $(LIBFLAG) -lboost_system -lboost_thread client.o -o client  

client.o: client.cpp
    $(CC) -c $(CFLAG) client.cpp

clean:
    rm -rf *.o client

它抱怨编译后找不到lboost_thread库:

代码语言:javascript
复制
ld: library not found for -lboost_thread
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make: *** [client] Error 1

在我的boost库目录中,boost_thread库显示如下:

代码语言:javascript
复制
libboost_thread-mt.a      libboost_thread-mt.dylib  

为什么它找不到这个图书馆?我在链接上有什么错误吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-05-17 03:27:28

尝试将makefile更改为链接到-lboost-线程-mt而不是-lboost-线程.

你似乎是因为某种原因而错过了libboost_thread

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30283017

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档