왜 MacOS 앱이 Launchpad 또는 Finder에서 실행되지 않고 터미널에서 제대로 실행됩니까?


1

최신 MacOS 10.14.2.

터미널에서 실행됩니다.

> "/Applications/Racket v7.1/bin/DrRacket"

그러나 런치 패드에서 앱을 시작할 때 DrRacket이 충돌하거나 실행되지 않습니다 (알 수 없음). Finder에서 실행 파일을 찾은 다음 마우스 오른쪽 버튼을 클릭하고 "열기"를 선택할 때도 마찬가지입니다. 보안 검사).


Racket (language)
Ryan

(Dr) 라켓이 무엇인지 모르지만, 위에 표시된 경로가 바이너리 실행 파일의 전체 경로라고 가정하면 Finder / Launchpad가 아닌 터미널에서 작동하는 이유를 설명합니다. 구체적인 내용은 없지만 "MacOS"앱은 특정 폴더 구조를 가져야합니다. "폴더"( /Applications/Racket v7.1)를 실행하면 Finder는 특정 폴더 구조를 살펴보고 "실제"실행 파일을 찾습니다. 그리고 "./bin"은 그렇지 않습니다. 이 앱이 터미널에서 실행될 때 터미널 창 내에서 실행되거나 자체 GUI를 시작합니까? "X"도 실행해야합니까?
jimtut

답변:


1

크로스 플랫폼이기 때문에 Racket은 표준 macOS App Bundle을 사용하여 빌드되지 않았 으며 DMG를 열면 앱이 아닌 폴더 만 표시됩니다. 폴더 안에는 DrRacket.app가 있으며 Finder 또는 Launchpad를 통해 실행됩니다. 또한보다 전통적인 명령 줄 설치를위한 다양한 폴더가 포함되어 있습니다.

Racket 7.2에서 "/ Applications / Racket \ v7.2 / bin / drracket"(소문자 참고)은 터미널을 통해 GUI 앱을 시작하도록 설계된 쉘 스크립트입니다. 이 폴더에는 터미널 기반 "라켓"응용 프로그램도 포함되어 있습니다.

GUI를 빠르게 시작하거나 Spotlight를 사용하려면 DrRacket.app 파일을 Racket 7.X 폴더의 최상위 레벨에서 데스크탑 또는 Dock으로 드래그하십시오.


0

오래된 코드 서명으로 인해 발생합니다. MacOS는 실행되지 않습니다. 이 동작을 재정의하기 위해 DrRacket 개발자는 응용 프로그램을 폴더 밖으로 끌어다 놓고 폴더로 다시 끌어와 MacOS가 응용 프로그램을 신뢰하도록했습니다. 이것은 효과가 있었다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.