2009-07-17 8 views
6

저는 Mono를 사용하여 C# 및 C++로 응용 프로그램을 개발하기 시작했습니다. Mono가 C++ 코드를 컴파일하는 방법은 무엇입니까? 그것은 GCC를 사용하고 있습니까? 그것은 STL 컨테이너가 있다는 것을 보는 것이 놀랍습니다 ... 또한 Boost 라이브러리와 GSL 라이브러리를 Mono와 함께 사용할 수 있습니까? 미리 감사드립니다 !!!Mono를 사용하여 C++로 개발하기

답변

7

IDE가 아닌 MonoDevelop 인 IDE를 사용해야합니다. 자체 모노

예, MonoDevelop는 사용의 gcc/g ++ C/C++ 소스 코드를 컴파일 할 수 있지만 CIL에 컴파일되지 않는다 -.. 그것은 네이티브 바이너리로 컴파일

내가 제대로 이해하고 경우에, 당신에게

그러나 모노 모드가 혼합 모드 어셈블리 또는 실행 파일을 지원하는지 묻는 경우 (예 : assemblies/exe에 네이티브 및 .NET CIL이 모두 포함되어있는 경우)이 기능이 지원되지 않으며 C++을 Mono의 순수한 CIL로 컴파일하지 않는다는 사실을 알려 드려서 죄송합니다.

+0

예, MonoDevelop을 사용하고 있습니다. 내가 가지고있는 문제는 내가 부스트 라이브러리를 연결하는 방법을 모른다는 것입니다. array.hpp 파일을 포함시키려는 경우 #include 를 작성하지만이 파일은 다른 파일을 호출하고 array.hpp 파일의 해당 파일에 대한 디렉토리는 "/ boost/somefile ", 디렉토리에 문제가 있습니다. 내가 무엇을 할 수 있을지? – user123668

+0

특히 디렉토리는/boost/somefile이 아닌/directories/boost/somefile이어야합니다. – user123668

+1

좋아요, 당신이하고 싶은 것은 C++ include 경로를 설정하는 것입니다. 당신은 #include를 포함하지 말고 #include 를 include 경로로/include/path/to를 MonoDevelop의 프로젝트 옵션 (코드 생성 중). – jstedfast

5

혼합 모드가 필요하지 않으면 (예 : 네이티브 부분을 잊어 버리고 CIL 전용으로 이동) 모노는 C++ 코드에서 작동합니다 (Windows에서 혼합 모드를 실험적으로 지원하는 것으로 들었습니다. 특히 , 그리고 와인을 통해 다른 곳으로,하지만 그 부분은 황금 시간대 준비가 안된다고 생각합니다.) 현재 잘 지원되는 C++ 컴파일러는 Net 2.x 프레임 워크에서 Microsoft C++/CLI입니다. GCC를 추가하려는 노력이 수년간 진행되어 왔지만 지금까지 생산 준비가 완료된 결과에 대해서는 아직까지 알지 못했습니다. (

관련 문제