2016-10-16 11 views
1

私はC++プロジェクトをWindowsからDebianに変換しようとしていますが、Cmakeを使ってすべてを再度コンパイルしています。コマンドラインでDSOが見つからない(CMakeで)

私は実際にLinuxで作業するのに使いませんが、すべてを適切にインストールすることができました。

これはエラーです:

/usr/bin/ld: ../shared/libshared.a(BigNumber.cpp.o): undefined reference to symbol '[email protected]@OPENSSL_1.0.2d' 

//usr/lib/x86_64-linux-gnu/libcrypto.so.1.0.2: error adding symbols: DSO missing from command line 

これは実際には一般的な質問のように思えるが、私はcmakeのと何をするか分かりません。私はあなたが私はcmakeのにしてください何をする必要があるかを理解するのに役立つ可能性があり、少し混乱してい

DSO missing from command line

How do I tell CMake to link in a static library in the source directory?

How to add linker or compile flag in cmake file?

:私はすでにのようないくつかの答えを見ましたか?

は、あなたが取得しているエラーがBigNumber.cppファイルで呼び出された関数のミッシングリンクについてですあなたに

答えて

0

ありがとうございます。

TARGET_LINK_LIBRARIES(youApp 
    library1 
    library2 
) 

PS:あなたはライブラリを呼び出す順序は正しく動作するようにリンカーに取得することも重要である何が起こっているのです

CMakeLists.txtが最も可能性が高いでライブラリが不足しているということです。

+0

こんにちはMSIS、あなたの答えに感謝します。私はCMakeLists.txtにこれを追加しようとしましたが、間違ったものを対象にしていると思います。私は何か他のものをターゲットにする必要があると思いますか?私はそれをTARGET_LINK_LIBRARIES( "path/BigNumber.cpp" "/usr/lib/x86_64-linux-gnu/libcrypto.so.1.0.2")としたので、 – Rikky

+0

私は目標を設定しようとすると、この.cpp、私はこのエラーがあります(このプロジェクトでビルドされていないターゲット ".../BigNumber.cpp"のリンクライブラリを指定できません)。 – Rikky

関連する問題