RubyMotion6.1 환경 구축

요점


RubyMotion6.0은 이달 (2019년 4월) 초에 출시되었습니다.
안드로이드용 패치는 12일, 최신 버전은 6.1이다.
최근 애플의 방침과 변화에 좌우되다.나는 x의 후반부는 따라잡기 어렵다고 생각한다. 응용 프로그램의 업데이트도 줄타기 상태에서 진행된 것이다.
6.0은 Xcode10.2 대응 버전입니다.
방금 업데이트되었지만 지금까지의 응용 프로그램이 순조롭게 실행되었기 때문에 버전 업그레이드 순서를 기록해야 합니다.

설치 또는 업데이트


재설치 시


RubyMotion을 설치하려면 다운로드 사이트에서 계획을 선택하고 필요한 사항을 입력하면 설치 프로그램의 다운로드 링크를 받아 다운로드합니다.
스타터는 제한이 있지만 무료로 사용할 수 있습니다.


(아래 업데이트에서만 다운로드 절차를 사용하지 않기 때문에 다른 부분이 있으면 수정합니다.)

업데이트 시


업데이트하려면 터미널에서만 실행해야 합니다motion update.
$ sudo motion update
그러나 최근의 시스템 변경 때문인지 라이센스가 만료되었습니다.
Your software license is expired, please visit http://account.rubymotion.com to renew.
Slack 같은 현상이 발생했으니 연락하면 정확한 허가 키를 가르쳐 주십시오.
그 키로 activate를 한 후에 업데이트합니다.
$ motion activate your_license_key
$ sudo motion update

환경 구축


환경 구축은 기본적으로 변경 로그에 쓰여 있습니다. 변경 로그와 결합하여 보십시오.
다음 명령을 사용하여 변경 로그를 볼 수 있습니다.
$ motion changelog
Ruby Motion 6.0부터 Mojave 10.14.4와 Xcode 10.2는 필수적인 환경입니다.
Apple의 방침은 Xcode 10.2에서 구축하지 않으면 응용 프로그램을 받아들이지 않기 때문에 응용 프로그램을 공개하려면 루비 모션 6.0 이후를 사용해야 한다.
Mojave는 필수이기 때문에 High Sierra를 사용할 때는 Mojave를 사용해야 합니다.(이곳에서는 Mojave를 사용하는 단계를 설명하지 않음)

1. Xcode10.2 설치


AppStore에서 Xcode를 설치하는 것은 권장되지 않습니다.
RubyMotion이 최신 버전에 대응하기 전에 딜레이가 있기 때문인 것 같습니다. 때로는 자동으로 업데이트된 후에 갑자기 구축할 수 없는 상황에 빠지기도 합니다.
자동으로 업데이트되지 않도록 Developer 웹 사이트에서 다운로드하여 설치합니다.
언뜻 보기에는 다운로드할 수 없을 것 같지만 다운로드 페이지 오른쪽 상단에 있는 More를 누르면 xcode로 검색하면 찾을 수 있습니다.

다운로드한 파일을 확장하면 Xcode 응용 프로그램이 있으므로/Applications로 복사합니다.
이전 버전을 유지하려면 이전 Xcode 이름을 바꾸고 복사합니다.

2. Xcode 계정 설정


Xcode를 엽니다.
Command line tools 설치 화면이 나타나면 직접 설치합니다.
Xcode를 연 후 Preference 계정을 열고 Apple ID로 로그인합니다.

3. Xcode Command line tools 설치 및 Xcode 응용 프로그램 선택


Command line tools가 설치되지 않은 경우 터미널에서 다음 명령을 실행하십시오.
$ sudo xcode-select --install && sudo xcode-select --reset
Command line tools가 설치되어 있으면 xcode-select 만 있으면 됩니다.
Xcode가 여러 개 있는 경우 xcode-select 를 전환해서 사용할 수 있습니다.지금까지 이 명령을 사용하지 않았다면 문제없지만, 다른 버전을 지정했다면 리셋 후 Xcode10.2를 선택하십시오.
$ sudo xcode-select --reset

4.macOS SDK 헤더 설치


2. 의 단계에서 macOS용 SDK 헤드를 설치하지 않은 것 같습니다. 아래 명령으로 설치하십시오.
$ sudo installer -pkg /Library/Developer/CommandLineTools/Packages/macOS_SDK_headers_for_macOS_10.14.pkg -target /

5.homebrew의 청결 설치


change Log에 homebrew의 청결한 설치를 강력하게 권장합니다.
홈브레인에 많이 설치하고 싶은데 옛날부터 마이너스 유산이 있으면 일치하지 않고 잘 안 되는 경우가 있기 때문에 청결하게 설치하는 게 좋아요.
변경 로그에 따라 다음을 수행합니다.brew list에 홈brew에 설치된 모듈의 목록이 표시됩니다. 필요하면 제어하십시오.(이것은 나중에 다시 추가할 때의 기준이겠지.)
다음 명령을 사용하여 홈brew를 마운트 해제합니다.
$ ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/uninstall)"
그런 다음 다시 설치합니다.
$ /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
Homebrew를 사용하여 RubyMotion을 설치하는 데 필요한 모듈입니다.
$ brew install gcc
$ brew install cmake
$ brew install libxml2
$ brew install sqlite
$ brew install rbenv
루비를 설치합니다.
2.3.7 이상의 권장사항은 설명에 따라 2.3.7을 설치합니다.아마 최신판도 문제없을 것 같습니다.
$ rbenv install 2.3.7
프로젝트에서 버전을 고정합시다.고정되지 않으면 Gem이 없는 다른 Ruby 버전을 참조하는 등의 영향이 나타납니다.
$ rbenv local 2.3.7
나는 rvm도 사용할 수 있다고 생각한다. 그러나, rbenv로 설명되었기 때문에, 앞으로의 일을 고려하여 rbenv를 하는 것은 나무랄 데가 없을 것이다.
지금까지 저는 rvm를 사용했지만 Mojave가 된 후에 rbenv로 바꿨습니다.

6. 기존 프로젝트 구축


RubyMotion의 버전 업그레이드 등 환경이 변경될 경우 청결하게 구축해야 합니다.rake rake pod:install CocoaPods 사용 시에만 가능합니다.
$ rake clean:all
$ rake rake pod:install
$ rake
보통 이렇게 하면 되는데, 오류가 생겼다.
objc[70585]: Class __SwiftNativeNSIndexSetBase is implemented in both /usr/lib/swift/libswiftCore.dylib (0x7fff97c92e98) and /Applications/Xcode.app/Contents/Frameworks/libswiftCore.dylib (0x10f6f6f20). One of the two will be used. Which one is undefined.
This copy of libswiftCore.dylib requires an OS version prior to 10.14.4.
이 경우 7.

7. dylib 복사


Change Log에 기록되어 있지 않지만 6 과 같이 오류가 발생했을 때 수행됩니다.
(Slack 대화에 쓰여있는)
잘 모르겠지만 /Applications/Xcode.app/Contents/Frameworks 몇 가지 부족한 것이 있으니 /usr/lib/swift부터 보충하자.
$ cp -r /usr/lib/swift/*.dylib /Applications/Xcode.app/Contents/Frameworks
응용 프로그램이 여기까지 시작될 수 있습니다.
iOS의 지원은 11.2이기 때문에 iOS10을 지원하려면 이전의 RubyMotion 버전을 사용할 수 있지만 iTunes Connect는 Xcode10.2에서 구축된 버전만 허용하기 때문에 안타깝게도 iOS10 지원을 포기할 수밖에 없습니다.
필요한 경우 Rakefile에서 deployment_ 사용target을 지정합니다.
app.deployment_target = '11.2'

앞으로...


Ruby Motion이 Amir Rajan 씨에게 물려받은 것은 어떤 일입니까?이 때문에 불이 꺼지는 것을 느꼈지만 응용 프로그램을 계속 개발하고 있다.
그러나 Apple Watch Series 4의 바이너리는 대응할 수 없습니다. (6.1은 아직 시도하지 않았습니다. 6.1은 대응할 수 없습니다.)판면 디자인을 개선해야 한다는 요구가 있지만 갱신할 수 없고 급한 점이 있다.
(Apple Watch Series 4 실기가 없어서 확인할 수 없지만 최대한 노력해 봤습니다. 아는 사람이 Apple Watch Series 4가 있다고 해서 확인할 사람이 있으면 연락 주세요.)
앞으로 Dragon Ruby LLC와 새로운 체제를 바탕으로 추진하여 이전보다 더욱 빨라질 것으로 기대하고 있습니다.
https://docs.brew.sh/FAQ RubyKaigi 2019 를 주제로 아미르 라잔 씨가 말했다.
Ruby Motion, Nintendo Switch, Dragon Ruby라는 키워드로 추측하면 밝은 미래를 말할 수 있기를 기대합니다.
아쉽게도 올해 루비카이지는 참가할 수 없을 뿐만 아니라 실시간으로 생방송을 볼 수 없어 녹화가 공개되기를 기다리고 있다.
후쿠오카 가고 싶다~
모두들 즐겁게 놀기를 바랍니다.

좋은 웹페이지 즐겨찾기