如何从cURLpp github repo编译example00?

如何从cURLpp github repo编译example00?,curlpp,Curlpp,我安装了cURLpp,并试图从他们的GitHub repo编译example00.cpp。但是,当我运行g++example00.cpp-o example00时,我得到以下输出: /tmp/cc619KAL.o:在函数main'中: example00.cpp:(.text+0x26):对curlpp::Cleanup::Cleanup()的未定义引用 example00.cpp:(.text+0x32):对curlpp::Easy::Easy()的未定义引用 example00.cpp:(.

我安装了cURLpp,并试图从他们的GitHub repo编译example00.cpp。但是,当我运行
g++example00.cpp-o example00
时,我得到以下输出:

/tmp/cc619KAL.o:在函数
main'中:
example00.cpp:(.text+0x26):对
curlpp::Cleanup::Cleanup()的未定义引用 example00.cpp:(.text+0x32):对
curlpp::Easy::Easy()的未定义引用
example00.cpp:(.text+0x93):对
curlpp::Easy::perform()的未定义引用 example00.cpp:(.text+0x9f):对
curlpp::Easy::~Easy()的未定义引用
example00.cpp:(.text+0xae):对
curlpp::Cleanup::~Cleanup()的未定义引用 example00.cpp:(.text+0xf5):对
curlpp::Easy::~Easy()的未定义引用
example00.cpp:(.text+0x10c):对
curlpp::Cleanup::~Cleanup()的未定义引用 /tmp/cc619KAL.o:(.gcc_,但_表+0x48除外):对curlpp::LogicError的
typeinfo的未定义引用
/tmp/cc619KAL.o:(.gcc_除_表外+0x4c):未定义对
typeinfo for curlpp::RuntimeError'的引用 /tmp/cc619KAL.o:在函数
curlpp::Option::~Option()
示例00.cpp:(.text.ZN6curlpp6OptionISsED2Ev[ZN6curlpp6OptionISsED5Ev]+0x49):对
curlpp::OptionBase::~OptionBase()的未定义引用 示例00.cpp:(.text.ZN6curlpp6OptionISsED2Ev[ZN6curlpp6OptionISsED5Ev]+0x6f):对
curlpp::OptionBase::~OptionBase()的未定义引用
/tmp/cc619KAL.o:在函数中
curlpp::Option::Option(curlpoption,std::string const&'): 示例00.cpp:(.text.zn6curlpp6optionssec2e10curlpoptionrks[zn6curlpp6optionssec5e10curlpoptionrks]+0x21):对
curlpp::OptionBase::OptionBase(curlpoption)”的未定义引用
示例00.cpp:(.text.zn6curlpp6optionssec2e10curlpoptionrks[zn6curlpp6optionssec5e10curlpoptionrks]+0x5c):对
curlpp::OptionBase::~OptionBase()的未定义引用
/tmp/cc619KAL.o:(.rodata.ztvn6curlpp11optiontraitissl10curlpoption10002ee[ztvn6curlpp11optiontraitissl10curlpoption10002ee]+0x20):未定义对
curlpp::OptionBase::operator观察者的引用,您需要同时链接curlpp和curl(将
-lcurlpp
-lcurl
添加到链接器行)。对于更完整的一步一步,这里是您需要做的

  • 从github克隆最新的curlpp

    git clone https://github.com/jpbarrette/curlpp.git
    
  • 进入git目录并准备编译

    cd curlpp
    ./autogen.sh
    ./configure
    
  • 现在,让我们编译库以及所有示例

    make
    
  • 总之:构建库后,将cd放入示例目录,并对任何示例运行以下命令(从make中提取)(将00替换为所需的示例编号):

    cd examples
    g++ -DHAVE_CONFIG_H -I. -I../include/curlpp  -I../include   -g  -W -Wall -Werror    -I/usr/local/include -MT example00.o -MD -MP -MF .deps/example00.Tpo -c -o example00.o example00.cpp
    mv -f .deps/example00.Tpo .deps/example00.Po
    /bin/sh ../libtool --silent  --tag=CXX   --mode=link g++  -g  -W -Wall -Werror -I/usr/local/include -L../src/curlpp/ -lcurlpp -static -o example00 example00.o -lstdc++ -lcurl