CentOS 7에 동적으로 링크 된 Qt 5.7 위젯 응용 프로그램을 배포하려고합니다. 문제가되지 않더라도 문제없이 컴퓨터에서 작동합니다 디렉토리를 빌드하려면 libQt5Widgets.so
을 복사하십시오. 내가 다른 컴퓨터에 응용 프로그램을 복사 할 경우, 그것은 말한다 :CentOS 7에서 동적으로 링크 된 Qt 5.7 위젯 응용 프로그램 배포 - 공유 라이브러리를 열 수 없음
./Application: error while loading shared libraries: libQt5Widgets.so.5: cannot open shared object file: No such file or directory
내가 함께 종속성을 검사 할 때 :
ldd ./Application
결과입니다
linux-vdso.so.1 => (0x00007ffdb7126000)
libQt5Widgets.so.5 => /opt/Qt5.7.0/5.7/gcc_64/lib/libQt5Widgets.so.5 (0x00007f2d3f33e000)
libQt5Gui.so.5 => /opt/Qt5.7.0/5.7/gcc_64/lib/libQt5Gui.so.5 (0x00007f2d3eb95000)
libQt5Network.so.5 => /opt/Qt5.7.0/5.7/gcc_64/lib/libQt5Network.so.5 (0x00007f2d3e837000)
libQt5Core.so.5 => /opt/Qt5.7.0/5.7/gcc_64/lib/libQt5Core.so.5 (0x00007f2d3e11c000)
libGL.so.1 => /lib64/libGL.so.1 (0x00007f2d3de97000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f2d3dc7b000)
libstdc++.so.6 => /lib64/libstdc++.so.6 (0x00007f2d3d972000)
libm.so.6 => /lib64/libm.so.6 (0x00007f2d3d66f000)
libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x00007f2d3d459000)
libc.so.6 => /lib64/libc.so.6 (0x00007f2d3d098000)
libz.so.1 => /lib64/libz.so.1 (0x00007f2d3ce81000)
libicui18n.so.56 => /opt/Qt5.7.0/5.7/gcc_64/lib/libicui18n.so.56 (0x00007f2d3c9e7000)
libicuuc.so.56 => /opt/Qt5.7.0/5.7/gcc_64/lib/libicuuc.so.56 (0x00007f2d3c62f000)
libicudata.so.56 => /opt/Qt5.7.0/5.7/gcc_64/lib/libicudata.so.56 (0x00007f2d3ac4b000)
libdl.so.2 => /lib64/libdl.so.2 (0x00007f2d3aa47000)
libgthread-2.0.so.0 => /lib64/libgthread-2.0.so.0 (0x00007f2d3a845000)
librt.so.1 => /lib64/librt.so.1 (0x00007f2d3a63c000)
libglib-2.0.so.0 => /lib64/libglib-2.0.so.0 (0x00007f2d3a305000)
/lib64/ld-linux-x86-64.so.2 (0x00007f2d3fb8e000)
libexpat.so.1 => /lib64/libexpat.so.1 (0x00007f2d3a0db000)
libxcb-dri3.so.0 => /lib64/libxcb-dri3.so.0 (0x00007f2d39ed7000)
libxcb-present.so.0 => /lib64/libxcb-present.so.0 (0x00007f2d39cd4000)
libxcb-randr.so.0 => /lib64/libxcb-randr.so.0 (0x00007f2d39ac6000)
libxcb-xfixes.so.0 => /lib64/libxcb-xfixes.so.0 (0x00007f2d398bd000)
libxcb-render.so.0 => /lib64/libxcb-render.so.0 (0x00007f2d396b3000)
libxcb-shape.so.0 => /lib64/libxcb-shape.so.0 (0x00007f2d394af000)
libxcb-sync.so.1 => /lib64/libxcb-sync.so.1 (0x00007f2d392a7000)
libxshmfence.so.1 => /lib64/libxshmfence.so.1 (0x00007f2d390a4000)
libglapi.so.0 => /lib64/libglapi.so.0 (0x00007f2d38e75000)
libselinux.so.1 => /lib64/libselinux.so.1 (0x00007f2d38c4d000)
libXext.so.6 => /lib64/libXext.so.6 (0x00007f2d38a3b000)
libXdamage.so.1 => /lib64/libXdamage.so.1 (0x00007f2d38838000)
libXfixes.so.3 => /lib64/libXfixes.so.3 (0x00007f2d38631000)
libX11-xcb.so.1 => /lib64/libX11-xcb.so.1 (0x00007f2d3842f000)
libX11.so.6 => /lib64/libX11.so.6 (0x00007f2d380f1000)
libxcb-glx.so.0 => /lib64/libxcb-glx.so.0 (0x00007f2d37ed6000)
libxcb-dri2.so.0 => /lib64/libxcb-dri2.so.0 (0x00007f2d37cd1000)
libxcb.so.1 => /lib64/libxcb.so.1 (0x00007f2d37aaf000)
libXxf86vm.so.1 => /lib64/libXxf86vm.so.1 (0x00007f2d378a8000)
libdrm.so.2 => /lib64/libdrm.so.2 (0x00007f2d37699000)
libpcre.so.1 => /lib64/libpcre.so.1 (0x00007f2d37437000)
libXau.so.6 => /lib64/libXau.so.6 (0x00007f2d37233000)
이 문제를 해결하기 위해, 다음 라이브러리를 배포하려고 시도했습니다.
Qt5.7.0/5.7/gcc_64/lib/libicui18n.so.56
Qt5.7.0/5.7/gcc_64/lib/libicuuc.so.56
Qt5.7.0/5.7/gcc_64/lib/libicudata.so.56
Qt5.7.0/5.7/gcc_64/lib/libQt5Core.so.5.7.0
Qt5.7.0/5.7/gcc_64/lib/libQt5Widgets.so.5.7.0
Qt5.7.0/5.7/gcc_64/lib/libQt5Gui.so.5.7.0
Qt5.7.0/5.7/gcc_64/lib/libQt5Network.so.5.7.0
응용 프로그램과 함께
또한, 심볼릭 링크를 만들었습니다.
libQt5Core.so.5
libQt5Widgets.so.5
libQt5Gui.so.5
libQt5Network.so.5
~ libQt5Widgets.so.5.0.7
과 다른 Qt 5.7 라이브러리를 만들었습니다. 나머지 공유 라이브러리는 다른 컴퓨터에도 존재합니다. 하지만 여전히 작동하지 않습니다.
이것은 다음 주제와 관련되어 있습니다. Qt project release ubuntu - error while loading shared libraries: libQt5Widgets.so.5 및 QT5.7 How to deploy Qt Application on Linux 그러나 해결책이 없습니다.
- 무엇이 문제 일 수 있나요?
- 어떻게 해결할 수 있습니까?
미리 감사드립니다.