Я установил месяцы OpenCv 3.1 назад, и это вызвало проблему из-за моей потребности присвоения более низкая версия openCv теперь, я искал в сети, и найдите некоторую функцию удаления. Кажется работой мне, но когда я пытался установить OpenCv с помощью этого кода:
sudo apt-get install libdevil-dev libboost-dev cmake cmake-qt-gui gcc- 4.8 g++-4.8 libgtk2.0-dev libeigen3-dev mesa-common-dev libopencv-dev
это дает мне, что моя версия уже актуальна. Кто-то может помочь мне?
dev cmake cmake-qt-gui gcc-4.8
Paketlisten werden gelesen... Fertig
Abhängigkeitsbaum wird aufgebaut.
Statusinformationen werden eingelesen.... Fertig
»libboost-dev« ist bereits die neuste Version (1.58.0.1ubuntu1).
»gcc-4.8« ist bereits die neuste Version (4.8.5-4ubuntu2).
»libdevil-dev« ist bereits die neuste Version (1.7.8-10).
»cmake« ist bereits die neuste Version (3.5.1-1ubuntu3).
»cmake-qt-gui« ist bereits die neuste Version (3.5.1-1ubuntu3).
0 aktualisiert, 0 neu installiert, 0 zu entfernen und 13 nicht aktualisiert.
В ответе ниже, я делаю предположение что Вы установленная версия 3.1 из источника или возможно из PPA. Также обратите внимание, что я не настроил OpenCV для работы с Python на моей установке.
Метод 1
При компиляции версии 3.1 OpenCV через CMake у Вас должен все еще быть каталог, Вы скомпилировали источник в (т.е. Ваш каталог сборки). Перейдите к нему. После того как там можно ввести make uninstall
удалить все файлы, перемещенные во время процесса установки.
Предупреждение: я считал, что это может вызвать проблемы, но лично не засвидетельствовало никого.
Примечание: Этот метод оставляет пустые каталоги. Они не вызывают проблем, но если требуется удалить их вручную, Вы можете.
Метод 2 (более опасный!)
Можно использовать команду sudo find / -name "*opencv*" -exec rm -i {} \;
определить местоположение всех файлов со словом opencv на их имя и удалить. Как, эта команда представит подсказку для Вас, чтобы подтвердить, хотите ли Вы удалить каждый отдельный найденный файл. Это займет много времени.Внимание: Заботьтесь при удалении файлов. Всегда проверьте местоположение файла и удостоверьтесь, что это может безопасно быть удалено перед продолжением.
Примечание: Я использую gcc и g ++ главным образом и не использую IDE. Если требуется использовать IDE, дополнительные или различные шаги могут быть необходимыми.
Обычно я нахожу лучший способ создать OpenCV (и другие библиотеки, которые я создаю из источника), должен создать папку в моем Корневом каталоге, названном отдельным - освобождает (можно назвать Ваш независимо от того, что Вы хотите). Затем внутри я создаю каталог для самой библиотеки, извлекаю исходный код и компилирую его с префиксом заказной установки. При компиляции OpenCV с CMake это просто. Вот то, как я сделал это на своей машине:
После установки Ваших зависимостей можно создать использование или GUI CMake или терминал. Для GUI
make -j$(nproc)
. Это скомпилирует код. make install
перемещать все файлы в каталог установки.От терминала
cmake -DCMAKE_INSTALL_PREFIX=absolute_path_to_installation_directory -DCMAKE_BUILD_TYPE="Release"
. Добавьте дополнительный-Dbuild_flag=option для удовлетворения потребностям.Примечание: не помещайте пространство после или перед знаком "равно".make -j$(nproc)
. Это совпадает с при установке от GUI.make install
.После того, как завершенный, я использую псевдонимы и pkg-конфигурацию для создания компиляции легче. В каталоге установки в /lib/pkgconfig/
существует единственный файл, названный opencv.pc. Это - файл, который pkg-конфигурация может использовать для автоматического конфигурирования библиотеки на основе потребности. Менее безопасная опция состоит в том, чтобы скопировать или переместить этот .pc файл в каталог, где pkg-конфигурация смотрит по умолчанию. Так как это системные папки, против размещения файлов из внешних репозиториев в них обычно рекомендуют. Вместо этого я открываю свой ~/.bashrc файл, и в нижней части помещают строки export PKG_CONFIG_PATH="$opencv2prefix/lib/pkgconfig" export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:$opencv2prefix/lib" alias opencv2="pkg-config --cflags --libs opencv2"
.
В строках выше, $opencv2prefix является переменной, содержащей путь к папке, в которой я установил OpenCV. Вместо команды псевдонима с помощью opencv2, Ваш, вероятно, будет opencv. opencv2 после --libs
относится к названию .pc файла. Это может отличаться в Вашем случае. Я изменил мой, потому что у меня есть две версии OpenCV на моей машине.
Теперь, когда я иду для компиляции с gcc или g ++, я просто ввожу g++ main.cpp $(opencv2)
. Замена, что находится в $ () с названием псевдонима, который выполняет pkg-конфигурацию.