2012-10-21 5 views
0

Linux의 명령 줄에서이 C# 프로그램을 시작하려면 어떤 명령을 사용해야합니까? 이미 (Monodevelop를 사용하여) 컴파일했지만 커맨드 라인에서 시작하는 법을 모르겠습니다.Linux의 명령 줄에서 C# 프로그램 시작

using System; 
class ExampleClass 
{ 
    static void Main() 
    { 
     Console.WriteLine("Hello, world!"); 
    } 
} 
+0

당신은 이미 컴파일나요? 경로 또는 현재 디렉토리에 바이너리가 있습니까? – birryree

+3

컴파일 된 경우 ['mono myprogram.exe'] (http://www.mono-project.com/Guide:Running_Mono_Applications) –

+1

또한이 질문은 왜 거부됩니까? 나는 이것이 명백한 질문이라는 것을 안다. (초보자가 아닌 사람들을 위해) - 그것은 어떤 이유로 든 나쁘다. –

답변

5

Linux에서 C# 또는 다른 .NET 프로그램을 시작하는 데 필요한 명령 줄은 Linux 시스템 구성 방법에 따라 다릅니다.

표준 대답은 mono 프로그램을 실행하고 실행 어셈블리의 이름을 매개 변수로 전달하는 것입니다. 실행 가능한 어셈블리의 이름은 일반적으로 프로젝트 파일의 이름과 동일하지만 쉽게 변경할 수 있습니다. 컴파일이 끝나면 .exe으로 끝나는 파일을 찾으십시오. 폴더 bin\Debug 또는 bin\Release 또는 이와 유사한 폴더에서 찾을 수 있습니다 (프로젝트 빌드 설정 방법에 따라 다름). 그래서 당신은라는 프로그램을 구축하는 경우, hello.exe 당신은 당신의 프로젝트 폴더로 갈 것이다 실행 : 리눅스 모르기 때문에

~/projects/hello $ mono bin\Debug\hello.exe 

당신이 mono 프로그램을 실행해야하는 이유는, 방법을 실행하는 기본적으로. NET 런타임. Windows에 .NET을 설치하면 실제로 프로그램을로드하는 OS 부분이 변경되므로 Windows는 .NET 프로그램을 자동으로 인식하고 런타임을로드합니다. Linux에서는 먼저 mono 프로그램을 실행하여 직접해야합니다.

Linux에서 많은 관리 코드를 실행하는 경우 Windows와 동일한 방식으로 Linux 커널을 구성 할 수 있습니다. Linux는 "기타 바이너리 형식"을 지원합니다.이 형식을 사용하면 Linux에 원시 Linux 형식이 아닌 바이너리를 실행하는 방법을 알릴 수 있습니다. 이것은 약간 진보 된 것입니다 - 리눅스 배포판이 더 좋은 방법을 가지고 있다면 나는 놀라지 않을지라도 당신이 맞춤 커널을 만들 것을 요구합니다. 이 프로세스에 대한 자세한 내용은 여기에서 찾을 수 있습니다 :

http://www.kernel.org/doc/Documentation/mono.txt

관련 문제