2011-01-15 2 views
5

가이클은 C/C++ 프로젝트에 임베드하는 과정이 다소 복잡해 보이지만 iOS 나 Android에서는 어떻게 작동합니까? 해당 플랫폼에서 사용할 수없는 타사 라이브러리가 필요합니까?iOS 또는 Android의 C++ 앱에 Guile을 포함시킬 수 있습니까?

자바 스크립트 또는 루아와는 달리 임베디드 스크립팅 언어로 어떻게 사용합니까?

+0

@ 크리스티안 : 하하하. 참조 : http://www.gnu.org/software/guile/ –

답변

3

iOS에서 C++ (명백하게)는 백엔드 코드에서 작동하지만 GUI/이벤트 처리를 위해서는 Objective-C가 필요합니다. (수정 됨). 또한 Android 코드는 일반적으로 Java입니다. 네이티브 코드를 작성할 수는 있지만, 안드로이드에서 네이티브 코드와 Dalvik 코드 간의 통신 오버 헤드로 인해 느린 속도를 보이는 경우가 많습니다.

가이클은 GCC를 기반으로하며, 애플의 Xcode에는 GCC의 변형이 포함되어 있으므로 작동하도록 할 수 있습니다. 그러나 몇 가지 사항에주의해야합니다.

1) Apple의 GCC 포크에는 최신 버전의 Guile을 빌드하는 데 필요한 모든 기능이 없을 수 있습니다. 2) Guile 자체가 LGPL (GNU Lesser General Public License)에 의거하여 라이센스를 받았으며 iOS 응용 프로그램에서 사용할 수 있도록 허가 되었기 때문에 많은 Guile 라이브러리가 GPL을 사용하여 사용할 수 없게되었습니다. 원인).

나는 이것을 테스트 할 수 없었지만 (Mac에 액세스 할 수는 없음), Guile은 적어도 Xcode로 빌드해야합니다.

내장 된 스크립팅 언어로서의 Guile의 성능은 개인적인 선호가 우선합니다. Guile은 완전한 기능을 갖춘 현대적인 계획이지만 목표 시장을 고려해야합니다. 그들이 Scheme을 거부 할 가능성이 있다면 JavaScript (특히)가 더 나은 선택 일 수 있습니다.

+0

마틴 요크 (Martin York)의 답변을 사용하고 있습니다. http://stackoverflow.com/questions/270455/is-it-possible-to-program-iphone- in-c를 참조하십시오. 또한 SnappyTouch (http://gamesfromwithin.com/)는 iOS 백엔드로 C++을 사용하고 있다고 생각합니다. 그 너머, 정보 주셔서 감사합니다! – GrooveStomp

+0

나는 고쳐졌다. Apple은 프론트 엔드에 Objective-C 만 있으면됩니다. 또한 : 3.3.1 - 응용 프로그램은 Apple이 정한 방식으로 만 문서화 된 API를 사용할 수 있으며 비공개 API를 사용하거나 호출해서는 안됩니다. 응용 프로그램은 원래 iPhone OS WebKit 엔진에서 실행되는 Objective-C, C, C++ 또는 JavaScript로 작성되어야하며 C, C++ 및 Objective-C로 작성된 코드 만 컴파일하고 문서화 된 API (예 : 중개 번역이나 호환성 레이어 또는 도구를 통해 문서화 된 API에 링크되는 응용 프로그램은 금지됩니다. 응답을 수정합니다. – nickname

관련 문제