![GUI 응용 프로그램을 실행할 때 libgobject-2.0.so.0이 없습니다.](https://linux55.com/image/134213/GUI%20%EC%9D%91%EC%9A%A9%20%ED%94%84%EB%A1%9C%EA%B7%B8%EB%9E%A8%EC%9D%84%20%EC%8B%A4%ED%96%89%ED%95%A0%20%EB%95%8C%20libgobject-2.0.so.0%EC%9D%B4%20%EC%97%86%EC%8A%B5%EB%8B%88%EB%8B%A4..png)
Centos 6.9 32비트에서 qt 위젯 GUI 애플리케이션을 컴파일하고 Centos 7 64비트 시스템에서 실행해 보았습니다. 필수 QT 라이브러리를 복사했지만 애플리케이션을 실행하려고 하면 오류가 발생합니다.
error while loading shared libraries:
libgobject-2.0.so.0: cannot open shared object file: No such file or directory
이 문제를 해결하는 방법?
답변1
무작위 라이브러리를 복사하는 것은 아마도 좋은 생각이 아닐 것입니다. 대신 패키지 시스템을 확인하여 32비트 버전의 라이브러리가 제공되는지 확인하세요. RedHat은 32비트 "i686"을 호출합니다.
# yum whatprovides '*/libgobject-2.0.so.0' | grep i686
glib2-2.54.2-2.el7.i686 : A library of handy utility functions
# yum install glib2.i686
...
가능하다면 복잡성을 줄이고 yum에서 multilib 패키지 문제가 발생할 가능성을 줄이기 위해 multilib 시스템 실행을 피하는 것이 가장 좋습니다. 이를 위해서는 모든 소프트웨어를 64비트로 다시 컴파일해야 합니다.