タイトルを編集すること自由に感じ:私は正直この質問のための重要な情報が何であるかを知らない...STDを使用して静的libに奇妙な「不足しているインポート・シンボルは、」:: unique_ptrを
私はいくつかの非常に奇妙な見ています(gRPCとKinect10 SDKに基づいて構築されたpRt型は、gRPC静的ライブラリで定義されています)、ただしstd :: unique_ptrを使用している場合にのみ、シンボルを紛失します。私は実際に(まだ)ptrを使用していませんが、ネイティブptrに変換するとエラーは発生しません。
どうしてですか?エラーLNK2019:未解決の外部シンボル__imp_CreateCompatibleBitmap機能readscreen 1> libeay32.lib(rand_win.obj)で参照:エラーLNK2019私はVS2015 x64ので
std::unique_ptr<grpc::Server> m_server;
//grpc::Server* m_server;
1> libeay32.lib(rand_win.obj)をコンパイルしています:関数readscreenで参照されている未解決の外部シンボル__imp_DeleteObject 1> libeay32.lib(rand_win.obj):エラーLNK2019:未読の外部シンボル__imp_GetDeviceCapsが関数readscreenで参照されています 1> libeay32.lib(rand_win.obj):エラーLNK2019:未解決の外部シンボル関数readscreenで参照される__imp_GetDIBits 1> libeay32.lib(rand_win.obj):エラーLNK2019:未解決の外部シンボル__imp_GetObject Wは、私は宣言を逆転場合
は、エラーが消える機能readscreenで参照
//std::unique_ptr<grpc::Server> m_server;
grpc::Server* m_server;
==========ビルド:1 0 0アップに、失敗、成功-date、0 skipped ==========
また、これらのエラーはgRPCのビルド内で発生します。私は静的なlibsにリンクしているので、明らかに別のlibにリンクしていない可能性があります(unique_ptrが意味をなさないと判明した場合) - しかし、なぜgRPCがgetDIBitsを呼び出すのか想像できませんでしたか?これは意味をなさない(注 - 確認するためにソースコードを読んだわけではありませんが、ちょっと変わっているようです)。私がリンクしているライブラリが互いに混乱する可能性はありますか?名前/ fnの定義などの間の衝突によって可能性がありますか?
簡単な説明と簡単な修正。私のお気に入り - ありがとう! – FrozenKiwi