Две разные сборки opencv_world - PullRequest
0 голосов
/ 04 августа 2020

У меня есть 2 сборки OpenCV 4.3 для MS Visual Studio. Первая - это предварительно созданная версия с GitHub, а вторая - та, которую я создал с поддержкой CUDA. Они работают без проблем самостоятельно. Я добавил папку / bin / обеих сборок в PATH. Проблема в том, что обе сборки имеют файл lib с именем opencv_world430.lib, и добавление этого файла в 'Linker' -> 'Input' -> 'Additional Dependencies' заставляет компоновщик находить не ту DLL, которую я хочу, а DLL в папке, которая верхняя в списке PATH.

Я имею в виду, что когда я создаю проект, используя не-CUDA build (правильно добавляя include и lib в каталоги VC ++), DLL с CUDA связана , потому что ее путь к файлу находится в более высокой позиции, чем тот, который я хочу.

Решение может заключаться в простой замене местами на PATH, когда я работаю с одним, но я хочу спросить, есть ли более простой способ справиться с этим.

Также: я использую VS2019 на Windows 10.

1 Ответ

0 голосов
/ 05 августа 2020

Я предлагаю вам выбрать Properties->Build Event->Post-Build Event->Command Line, чтобы скопировать dll в папку Debug. Вы можете обратиться к следующему примеру .

copy $(TargetPath) $(TargetDir)..\..\someFolder\myoutput.dll
regasm $(TargetPath)
...