컴퓨터 비전(머신러닝) 테스트를 위해 설치해야 합니다.OIDv4_toolkit 링크의 지침을 따르고 있습니다. Centos 8에서는 conda install --filerequirements.txt를 사용했습니다.
그러나 실행하려고 할 때: python3 main.py -h
다음 오류가 발생합니다.
liran@localhost OIDv4_ToolKit]$ python3 main.py -h
Traceback (most recent call last):
File "main.py", line 20, in <module>
from modules.downloader import *
File "/home/liran/dev/ComputerVisionRT/OIDv4_ToolKit/modules/downloader.py", line 2, in <module>
import cv2
File "/home/liran/anaconda3/lib/python3.7/site-packages/cv2/__init__.py", line 3, in <module>
from .cv2 import *
ImportError: libQtGui.so.4: cannot open shared object file: No such file or directory
이전에는 libjpeg.so.8을 사용하여 동일한 오류가 발생했지만 호스트 시스템에서 이를 찾아서 해결했습니다.
sudo find / -name libjpeg.so.8
그런 다음 찾은 디렉터리를 LD_LIBRARY_PATH 환경 변수에 추가합니다.
export LD_LIBRARY_PATH=/path/to/file/:$LD_LIBRARY_PATH
누락된 모듈이 포함되어야 하는 RPM을 찾았습니다.여기 그러나 rpm을 설치한 후:
[liran@localhost OIDv4_ToolKit]$ sudo dnf install /path/to/rpm/qt-x11-4.8.7-9.el7_9.x86_64.rpm
나는 얻다:
Updating Subscription Management repositories.
Unable to read consumer identity
This system is not registered to Red Hat Subscription Management. You can use subscription-manager to register.
gitlab_gitlab-ee 36 B/s | 862 B 00:23
gitlab_gitlab-ee-source 37 B/s | 862 B 00:23
Windscribe 255 B/s | 2.9 kB 00:11
Error:
Problem: conflicting requests
- nothing provides qt(x86-64) = 1:4.8.7-9.el7_9 needed by qt-x11-1:4.8.7-9.el7_9.x86_64
- nothing provides libmng.so.1()(64bit) needed by qt-x11-1:4.8.7-9.el7_9.x86_64
(try to add '--skip-broken' to skip uninstallable packages or '--nobest' to use not only best candidate packages)
--nobest를 사용하는 경우:
Updating Subscription Management repositories.
Unable to read consumer identity
This system is not registered to Red Hat Subscription Management. You can use subscription-manager to register.
Windscribe 267 B/s | 2.9 kB 00:11
Error:
Problem: conflicting requests
- nothing provides qt(x86-64) = 1:4.8.7-9.el7_9 needed by qt-x11-1:4.8.7-9.el7_9.x86_64
- nothing provides libmng.so.1()(64bit) needed by qt-x11-1:4.8.7-9.el7_9.x86_64
(try to add '--skip-broken' to skip uninstallable packages)
--skip-broken을 사용하는 경우:
Updating Subscription Management repositories.
Unable to read consumer identity
This system is not registered to Red Hat Subscription Management. You can use subscription-manager to register.
Windscribe 268 B/s | 2.9 kB 00:11
Dependencies resolved.
Nothing to do.
Complete!
어떤 아이디어가 있나요?
답변1
설치했습니다https://github.com/EscVM/OIDv4_ToolKit깨끗한 centos8 docker 이미지의 지침을 따르세요.
python-devel, gcc, make, cmake 및 어떤 시점에서는 제안된 "개발 도구" 패키지가 필요합니다. QT가 아닙니다.
그러면 python3 main.py -h
명령을 성공적으로 실행할 수 있습니다.
시스템에 부적절한 패키지를 설치했을 가능성이 높습니다(잘못 구성된 패키지 소스 또는 RPM 수동 설치를 통해). 이제 oidv4 툴킷에 문제가 발생하기보다는 시스템이 손상되었습니다.
RPM을 수동으로 설치할 필요가 없습니다 dnf install package-name
. 패키지 소스를 추가할 필요가 없습니다.
새로 설치하여 다시 시작하는 것이 좋습니다.