2017-04-11 20 views
3

私はC++のプロジェクト、私はプロジェクトをコンパイルするとき、私はというエラーを取得するのに一緒にITK-4.11とOpenCVの-3.2を使用します。どのようにlibpng関数はすでに定義されたエラーを解決するには?

エラー1つのエラーLNK2005:すでにitkpng-4.11で定義されてpng_get_uint_31 .LIB(pngrutil.obj)」

私ITKとのOpenCVの両方が、私はこのエラーを回避するために何をすべき、そして、マルチスレッドDLL(/ MD)を使用して構築されている?

答えて

1

私が覚えている場合正しく、私は/ FORCEリンカオプションを使用して、その正確な問題を解決しました。詳細情報here

+0

ビジュアルスタジオで/ FORCEを使用していただきありがとうございましたDženanは問題を完全に解決しました。 –

+0

また、他の誰かが最近この問題に遭遇し、ITKの部で修正するパッチを提案しました:http://review.source.kitware.com/#/c/22282/ –

+0

はいDženan。 "Modules/ThirdParty/PNG/src/itkpng/itk_png_mangle.h"というITKファイルに "#define png_get_uint_31 itk_png_get_uint_31"という行を追加することは間違いなく良い解決策です!ありがとうございました。 –

関連する問題