0

次のような友人のコードのスニペットをテストしようとしています:

#include <boost/asio.hpp>
#include <boost/array.hpp>
#include <iostream>
#include <sstream>
#include <string>

boost::asio::io_service io;
std::string port;
boost::asio::serial_port_base::baud_rate baud(115200);

int main() {

    std::cout << "Enter port number: ";

    std::getline(std::cin,port);

    while(port.empty()) {

        std::cout << std::endl;

        std::cout << "Error: The user must provide a port number." << std::endl;

        std::cout << "Enter port number (Example: COM5): ";

        std::getline(std::cin,port);

    }

    std::cout << std::endl;

    return 0;
}

VC++ ディレクトリでは、インクルード ライブラリと 64 ビット ライブラリの両方をリンクしました。

Linker -> Input に、依存関係を追加しました。

このコードを実行するたびに、エラーが発生します。

エラー 1 エラー LNK2019: 未解決の外部シンボル "class boost::system::error_category const & __cdecl boost::system::system_category(void)" (?system_category@system@boost@@YAABVerror_category@12@XZ) が関数で参照されている" public: __thiscall boost::system::error_code::error_code(void)" (??0error_code@system@boost@@QAE@XZ) C:\Users\Bilal\Documents\Visual Studio 2012\Projects\Serial\Serial\ main.obj シリアル

エラー 2 エラー LNK2019: 未解決の外部シンボル "class boost::system::error_category const & __cdecl boost::system::generic_category(void)" (?generic_category@system@boost@@YAABVerror_category@12@XZ) 関数で参照" void __cdecl boost::system::`'errno_ecat''(void) の動的初期化子" (??__Eerrno_ecat@system@boost@@YAXXZ) C:\Users\Bilal\Documents\Visual Studio 2012\Projects\Serial\Serial \main.obj シリアル

誰が何が問題なのか教えてもらえますか?

4

1 に答える 1

0

lib のパスを指定する必要があります ([リンカー] -> [追加のライブラリ ディレクトリ]、次にブースト ライブラリの場所を入力します)。または、ライブラリをシステム ライブラリ パス (Linux の場合)/sys パス (Windows の場合) に追加する必要があります。

于 2013-08-29T01:26:57.553 に答える