우분투에서 개발한 Qt 프로그램을 다른 컴퓨터의 우분투에서도 돌아가게 하는 방법이 있을까요?
안녕하세요.
요 며칠 째 계속 저것 때문에 고생만 하다가
얻는게 없어서 이렇게 질문 드립니다.
패키징을 해서 배포하는 방식으로 해보려고 했는데
계속 내용이 텅텅 빈 패키지만 만들어져서
그냥 실행파일이랑 라이브러리를 같이 옮겨서 다른 컴퓨터에서 돌려보려고 합니다.
현재 ldd로 실행파일을 검사해보면
linux-vdso.so.1 => (0x00007fff055ff000)
libQt5OpenGL.so.5 => /home/kkangji/Qt5.1.0/5.1.0/gcc_64/lib/libQt5OpenGL.so.5 (0x00007fadb0200000)
libQt5Declarative.so.5 => /home/kkangji/Qt5.1.0/5.1.0/gcc_64/lib/libQt5Declarative.so.5 (0x00007fadafc72000)
libQt5Widgets.so.5 => /home/kkangji/Qt5.1.0/5.1.0/gcc_64/lib/libQt5Widgets.so.5 (0x00007fadaf44e000)
libQt5ScriptTools.so.5 => /home/kkangji/Qt5.1.0/5.1.0/gcc_64/lib/libQt5ScriptTools.so.5 (0x00007fadaf19c000)
libQt5Xml.so.5 => /home/kkangji/Qt5.1.0/5.1.0/gcc_64/lib/libQt5Xml.so.5 (0x00007fadaef60000)
libQt5Script.so.5 => /home/kkangji/Qt5.1.0/5.1.0/gcc_64/lib/libQt5Script.so.5 (0x00007fadaeae5000)
libQt5Gui.so.5 => /home/kkangji/Qt5.1.0/5.1.0/gcc_64/lib/libQt5Gui.so.5 (0x00007fadae48d000)
libQt5Core.so.5 => /home/kkangji/Qt5.1.0/5.1.0/gcc_64/lib/libQt5Core.so.5 (0x00007fadade04000)
libstdc++.so.6 => /usr/lib/x86_64-linux-gnu/libstdc++.so.6 (0x00007fadadaef000)
libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007fadad7f3000)
libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007fadad5dd000)
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007fadad21d000)
libGL.so.1 => /usr/lib/libGL.so.1 (0x00007fadaceef000)
libQt5XmlPatterns.so.5 => /home/kkangji/Qt5.1.0/5.1.0/gcc_64/lib/libQt5XmlPatterns.so.5 (0x00007fadac8ae000)
libQt5Network.so.5 => /home/kkangji/Qt5.1.0/5.1.0/gcc_64/lib/libQt5Network.so.5 (0x00007fadac554000)
libQt5Sql.so.5 => /home/kkangji/Qt5.1.0/5.1.0/gcc_64/lib/libQt5Sql.so.5 (0x00007fadac315000)
libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007fadac0f8000)
libgobject-2.0.so.0 => /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 (0x00007fadabea8000)
libglib-2.0.so.0 => /lib/x86_64-linux-gnu/libglib-2.0.so.0 (0x00007fadabbb3000)
libX11.so.6 => /usr/lib/x86_64-linux-gnu/libX11.so.6 (0x00007fadab87e000)
libicui18n.so.51 => /home/kkangji/Qt5.1.0/5.1.0/gcc_64/lib/libicui18n.so.51 (0x00007fadab464000)
libicuuc.so.51 => /home/kkangji/Qt5.1.0/5.1.0/gcc_64/lib/libicuuc.so.51 (0x00007fadab0de000)
libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007fadaaed9000)
libgthread-2.0.so.0 => /usr/lib/x86_64-linux-gnu/libgthread-2.0.so.0 (0x00007fadaacd7000)
librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 (0x00007fadaaacf000)
/lib64/ld-linux-x86-64.so.2 (0x00007fadb0466000)
libnvidia-tls.so.319.32 => /usr/lib/tls/libnvidia-tls.so.319.32 (0x00007fadaa8cb000)
libnvidia-glcore.so.319.32 => /usr/lib/libnvidia-glcore.so.319.32 (0x00007fada8374000)
libXext.so.6 => /usr/lib/x86_64-linux-gnu/libXext.so.6 (0x00007fada8163000)
libffi.so.6 => /usr/lib/x86_64-linux-gnu/libffi.so.6 (0x00007fada7f5a000)
libpcre.so.3 => /lib/x86_64-linux-gnu/libpcre.so.3 (0x00007fada7d1d000)
libxcb.so.1 => /usr/lib/x86_64-linux-gnu/libxcb.so.1 (0x00007fada7afe000)
libicudata.so.51 => /home/kkangji/Qt5.1.0/5.1.0/gcc_64/lib/libicudata.so.51 (0x00007fada63b5000)
libXau.so.6 => /usr/lib/x86_64-linux-gnu/libXau.so.6 (0x00007fada61b1000)
libXdmcp.so.6 => /usr/lib/x86_64-linux-gnu/libXdmcp.so.6 (0x00007fada5fab000)
이렇게 뜨는데
여기서 뜨는 라이브러리들을 모두 복사해서 한 실행 파일과 같이 한 폴더에 넣으면 되는지요?
그 외에 .pro 파일에서 따로 설정을 해줘야 한다거나 하는 사항이 있는지 궁금합니다.
같은 내용으로 여러번 질문 올리네요. 죄송합니다 ㅜㅜ
도움 부탁드리겠습니다~~
f
우선 실행 파일을 옮겨서 ldd 로 필요한 라이브러리 확인 하신 후 라이브러리들을 /usr/local/lib 에 복사하시고 ~/.bashrc 에 export LD_LIBRARY_PATH=/usr/local/lib 이 구문을 추가 후 source .bashrc 하시면 될 듯 합니다.
ㅇ
소스코드를 다운받아서 static 컴파일 하는 것도 괜찮을 듯 합니다.
답변 감사합니다.
한번 시도해보겠습니다^^
패키지만들기가 어려우시다면
패키지만들기가 어려우시다면
http://qt-project.org/wiki/Qt-Installer-Framework
이걸 시도해보세요.
해본적은 없어서 저도 잘 모르지만 인스톨러를 만들수 있다고 하네요.
답변 감사합니다.
유용한 정보 감사합니다~
댓글 달기