2013-07-30 4 views
2

최신 버전의 Qt (5.1)를 설치했으며 macdeployqt 도구를 사용하여 Mac에 내 응용 프로그램을 배포하려고 할 때 응용 프로그램이 여전히 다른 Mac에서 작동하지 않습니다. 그것은 내 Mac에서 완벽하게 작동하며 오류를 나타내는 것은 아닙니다. 조사한 결과 나는 이것이 내 문제라고 생각합니다. Qt 5.1 and Mac: Bug making macdeployqt not working properlyhttps://bugreports.qt-project.org/browse/QTBUG-14699 그러나 설명이 너무 기술적인데 (내 모국어가 아닌 + 영어), 완전한 초보자입니다. 내가 무엇을해야하는지 설명 할 수 있습니까? 내 응용 프로그램을 Mac에서 간단하게 만들 수 있습니까? 단계별로? Windows에서 완벽하게 작동합니다 (표준 DLL 포함).Macdeployqt가 작동하지 않습니다

정말 고마워. 같은 문제를 겪고있는 많은 초보자에게 도움이 될 것 같아.

+0

답변을 직접 제공하고 있습니다. 첫 번째 링크 섹션 인''UPDATE, HOW TO DEPLOY :''를 읽고 그것을 따라 가십시오. 일반적으로 : 1. 이중 슬래시를 수정하십시오. 2. 자신의 macdeployqt를 컴파일하십시오. 3. 주어진 qml 디렉토리로 macdeployqt를 호출하십시오. –

답변

2

OS X (MacOS) 용 Qt 배포를 분류 할 수있는 3 가지 도구가 있습니다.

  1. macdeployqt

    :이 도구는 응용 프로그램이 그 프로젝트에 필요한 응용 프로그램 번들에 추가하고 응용 프로그램이 곳을 찾을 알 수 있도록 그 경로를 업데이트 선언 모든 Qt는 라이브러리를 수집합니다.

  2. otool : 이진 파일의 내용을 검사하는 복잡한 도구이지만이 경우에는 -L 인수와 함께 사용하면 응용 프로그램에서 참조 할 모든 라이브러리에 대한 경로가 표시됩니다. 이것들은 그 도서관을 찾기 위해 찾는 길입니다.

  3. install_name_tool

    : macdeployqt는 응용 프로그램에 필요한 Qt는 라이브러리를 처리하므로,이 앱이 필요로하는 다른 라이브러리에 대한 경로를 업데이트 install_name_tool를 사용할 수 있습니다. 예를 들어, 응용 프로그램이 의존하는 별도의 비 Qt 프레임 워크가있는 경우 프레임 워크를 응용 프로그램 번들로 복사 한 다음 install_name_tool을 사용하여 프레임 워크 경로를 업데이트해야합니다.

문제가 발생하는 경우, 라이브러리/프레임 워크는 애플리케이션 번들에서 올바른 위치에 복사 한 후 경로를 확인하는 otool -L을 사용되어 있는지 확인하십시오. 잘못된 것이 있으면 name_install 도구를 사용하여 수정하십시오.

여전히 작동하지 않으면 질문을 편집하고 otool -L에서 출력을 추가하십시오.

역사적으로 다양한 버전의 Qt가 macdeployqt 유틸리티에서 버그를 겪었으므로 제대로 작동하지 않는 경우 check the qt bug tracker을 사용해도됩니다.

+0

해답을 주셔서 감사합니다.하지만 시도해 보았습니다. 아직 작동하지 않습니다. 내 신경이 쓰이기 때문에 창 응용 프로그램을 사용할 수있게 만들 것입니다. macdeployqt 도구를 사용하는 것보다 복잡하지 않아야합니다. – Pomologue

+0

어렵지 않습니다. 일단 무슨 일이 일어나는지 이해하면 실행 파일에 otool -L 실행 결과를 게시하십시오. 예를 들면 다음과 같습니다. otool -L/Applications/Calculator/Contents/MacOS/Calculator – TheDarkKnight

+0

안녕하세요, 주위를 고집하고 도우려는 데 대해 감사 드리며, 정말 멋지고 친절합니다. 나는 맥과 함께 많은 친구들에게 앱을 보냈고 마침내 매버릭스 (10.9) 만 실행하는 사람들 만이 문제를 겪고 있다는 것을 알았다. Google 검색에서 나중에 Qt가 단순히 매버릭스를 지원하지 않는다는 것을 알았습니다. 너무 단순했습니다. – Pomologue