QT 앱을 배포하는 가장 좋은 방법은 무엇입니까? trolltech에서 호스팅되는 설명서를 읽었지만 정적 라이브러리 또는 동적 라이브러리와 링크하여 사용자가 프레임 워크를 설치하게하는 것이 더 좋습니다. 나는 정말로 내 앱을 사용하는 사람이 단순한 GUI 프론트 엔드를 실행하기 위해 160MB 프레임 워크를 다운로드해야하는 것을 원하지 않는다.OS X 및 Linux에 QT 앱 배포
답변
유감스럽게도 사용자는 자신의 번들에 필요한 Qt 라이브러리를 포함시켜야합니다. 사용자가 Mac에 Qt를 설치할 수는 없기 때문입니다 (Linux 패키징 시스템에서는 최소한 Qt 버전을 요구할 수 있습니다).
macdeployqt라고하는 멋진 도구가 있습니다. 번들 응용 프로그램에서 호출하면 필요한 라이브러리가 압축되어 참조 할 수 있도록 링크가 변경됩니다. Mac 용 번들을 만드는 것은 정말 고통스런 일입니다 (여전히 그렇지만 상당히 적습니다).
http://doc.trolltech.com/4.6/deployment-mac.html#the-mac-deployment-tool
그런 다음 다른 응용 프로그램과 마찬가지로 .dmg 이미지를 만들 수 있습니다. macdeployqt에는 기본적인 것을 만드는 옵션이 있습니다.
Linux의 경우 Qt 사본을 사용하는 것이 더 낫습니다. OS X의 경우 거의 모든 응용 프로그램이 정적으로 컴파일 된 라이브러리를 사용합니다.
OS X에서는 4.5로 시작하는 Qt와 함께 제공되는 macdeployqt
도구를 사용하여 동적 빌드와 후 처리 결과를 얻는 좋은 방법입니다.
이렇게하면 응용 프로그램에서 사용하는 Qt 프레임 워크가 응용 프로그램 번들로 복사되므로 응용 프로그램의 정적 버전을 빌드하는 것보다 큰 패키지가 생성됩니다. ,
- 우선 당신은 단지 project.pro 파일의에서 당신이 필요로하는 물건을 (포함해야합니다 : 여기 는 동적 빌드에서 가능한 가장 작은 파일 크기를 얻을 수 있는지 확인하기 위해 무엇을 할 수
QT += core gui network xml
회선). - 응용 프로그램 번들을 열고 불필요한 "Qt 플러그인"을 번들에서 제거하십시오.
macdeployqt
은 자동으로 을 모두 Qt 플러그인이 들어있어 부피가 커질 수 있습니다. - 모드로 애플리케이션을 빌드해야합니다. 그렇지 않으면 응용 프로그램이 Qt4 프레임 워크의 디버그 라이브러리에 연결될 수 있으며 이 실제로입니다 (예 : 디버그 라이브러리의 경우 90MB가 넘고 디버깅 기호가없는 릴리스 변형의 경우 16MB). 이것은 귀하의 경우에 일어날 수 있습니다.
- 응용 프로그램 바이너리가 큰 경우 UPX을 사용하여 실행 파일을 40-50 % 압축 할 수 있습니다.
이외의 경우 압축 된 디스크 이미지를 사용하여 응용 프로그램을 배포해야합니다. 내 프로젝트의
하나는 이 QtGui, QtNetwork,QtCore 및 QtXml 그 결과 번들의 크기가 약 16 MB입니다 사용합니다.
희망이 있습니다.
- 1. Mac OS X에서 QT 앱 배포
- 2. Qt + OS X + Bluetooth
- 3. Mac OS X 프로그래밍 및 배포
- 4. ruby dev : mac os x 또는 linux에 사용되는 (로컬) 서버
- 5. 간단한 Mac OS X 사운드 앱
- 6. Qt Creator (Mac OS X)에 Qt SDK를 추가하는 방법
- 7. Mac OS X 앱 이름 바꾸기
- 8. Ruby는 OS X 앱/iOS 앱 개발에 실용적입니까?
- 9. CardDAV 및 OS X Server
- 10. 레일 및 SSL_CERT_FILE OS X
- 11. Mac 및 Windows에 Qt + Boost 응용 프로그램 배포
- 12. Android 앱 작성 및 배포
- 13. NSSavePanel, CGImageDestinationFinalize 및 OS X 샌드 박스
- 14. Linux에서 Mac OS X 용 Qt 애플리케이션 컴파일
- 15. os x
- 16. Mac OS X Lion에 Qt SDK 설치시 문제가 발생했습니다.
- 17. Java가 Windows 및 Linux에 사전 설치되어 있습니까?
- 18. OS X 오류 로그에서 앱 오류를 진단하는 방법은 무엇입니까?
- 19. OS X Server Lion
- 20. OS X bash : dirname
- 21. Mac OS X : 파인더 + 앱 샌드 박스에서 파일 열기
- 22. OS X 용 독립 실행 형 Django 앱
- 23. Mac OS X 웹 공유 및 Django
- 24. OS X 및 Windows에서 작동하는 데이터베이스 엔진
- 25. Mac OS X 시스템 프로그래밍 및 bsd
- 26. Mac OS X 및 iPhone에서 점프 효과
- 27. JavaFX 애플릿 javascript 및 max os x
- 28. iPhone 개발을위한 OS X 및 Vmware의 성공?
- 29. 모노 (OS X 및 코코아 용)
- 30. OS X Lion에서 디스플레이 감지 및 깨우기
나는 Mac OS X의 대부분의 애플 리케이션은 애플 리케이션 번들 –
@ Kamil True 내부의 프레임 워크를 포함하고 있습니다. 좋은 생각은 아니지만, 시스템 전체에 프레임 워크를 설치하려고하는 것입니다. 윈도우/리눅스 방식의 차이점 –