Ruby on Rails 4 App 내에 C++로 작성된 프로그램을 구현하는 데 관심이 있습니다.Rails 4 WebApp에서 C++ 프로그램을 실행하는 방법
C++ 응용 프로그램은 콘솔에서 실행되며 파일을 제공하여 작동하고 처리 한 다음 다른 파일을 출력합니다.
https://rubygems.org/gems/RubyInline
gem 'RubyInline', '~> 3.12', '>= 3.12.4'
인라인은 당신이 당신의 루비 코드 내에서 외국 코드를 작성할 수 :
나는 '루비 인라인'혐의로 외국 코드의 사용을 허용하는 보석을 발견했다. 문제의 코드가 변경되었는지 자동으로 판단하고 필요한 경우에만 코드를 작성합니다. 그런 다음 확장이 정의 된 클래스/모듈에 자동으로로드됩니다. 모든 언어로 인라인 코드를 작성할 수있는 추가 빌더를 작성할 수도 있습니다. Inline :: C를 템플릿으로 사용하고 Module # inline에서 필요한 API를 찾습니다.require 'inline' class MyTest inline(:C) do |builder| builder.include '<iostream>' builder.add_compile_flags '-x c++', '-lstdc++' builder.c ' void hello(int i) { while (i-- > 0) { std::cout << "hello" << std::endl; } }' end end t = MyTest.new() t.hello(3)
문제는 내가 만든 큰 C++ 프로그램을 구현하는 방법을 완전히 확실하지 않다이다 :
는 문서에 따르면,이 같은 C 및 C++ 프로그램의 사용을 허용 여러 파일 중에서 C++에 익숙하지 않습니다.
이것은 루비 스크립트 안에 C++ 코드를 추가하고 C++ 프로그램이 여러 파일과 폴더로 만들어진 것처럼 보입니다.
루비 인라인은 내가하고 싶은 일을하거나 거기에 더 좋은 옵션이 있습니까?
C++ 응용 프로그램을 루비 파일에 넣지 않고 직접 호출 할 수있는 방법이 있습니까?
C++ 응용 프로그램에 제공 될 파일이 웹 인터페이스를 통해 업로드됩니다. 어떻게 결과를 출력 할 수 있도록 C++ 프로그램에 피드 할 수 있습니까?
[Ruby에서 쉘 명령 호출하기] ( –
) 질문 할 올바른 질문을 모른다고 생각합니다. 그 질문에 "쉘 명령"이라는 단어를 사용자가 속이 지 않도록하십시오. 시스템에서 명령을 호출 할 수 있어야합니다. –
backticks,'system' 메소드와'Open3'의 사용법을 조사하십시오. Ruby를 사용하면 다른 코드를 쉽게 호출 할 수 있으며 여러 가지 방법이 있습니다. 기능이 내장되어 있기 때문에 보석이 필요하지 않습니다. 인라인이 원하는 작업을 수행 할 수 있는지 또는 더 나은 옵션이 있는지 알려주지는 못합니다. 당신은 우리가 그 질문들에 답하기 위해 당신이 알고있는 모든 것을 우리에게 말해야 할 것입니다. –