답변:
여러분이 말하는 게임은 .NET Framework를 기반으로하며 Microsoft의 .NET Framework의 무료 오픈 소스 구현 인 Mono로 실행됩니다.
이러한 응용 프로그램은 .NET 기반이므로 어셈블리의 확장명은 .dll입니다. 폴더에서 DLL 파일을 볼 수 있습니다.
크로스 플랫폼 사용을 위해 설계된 하나의 .NET 프로그램은 MSIL로 컴파일되고 .NET / Mono 런타임이 필요한 동일한 "이진"(조립품 인 DLL 포함)으로 Windows, Linux 또는 Mac에서 실행될 수 있습니다. .
Ubuntu 리포지토리에서 사용 가능한 Mono Framework 기반의 일부 무료 응용 프로그램 (게임뿐만 아니라)도 있습니다. 예를 들면 다음과 같습니다. Tomboy.
.dll
하고 .so
, 리눅스에서 의미가있다. 그들은 우리의 편의를 위해서만 사용됩니다.
gcc
예처럼 제공되는 라이브러리를 찾을 수 없습니다 -lm
파일 이름이로 끝나지 않는 경우 .so
나 .a
또는 버전 화 변형을 포함한다.
.dll
에있는 파일에 GameDataFolder/Managed
속하는 내부적으로 모노를 사용하는 네이티브 코드 프로그램.
.NET 공용 언어 런타임 또는 Mono로 실행할 수있는 크로스 플랫폼 실행 파일 및 공유 라이브러리는 Windows에 고유하지 않은 경우에도 각각 이름 .exe
과 .dll
접미사가 붙습니다. .dll
Ubuntu와 같은 GNU / Linux 시스템 또는 Windows 이외의 OS 용 프로그램에서 파일 을 찾을 때 이것이 일반적 입니다. .dll
우분투 시스템에서 대부분을 찾을 때 Golboth의 답변에 설명되어 있습니다. 그러나 그것은 여기서 일어나고있는 것이 아닙니다.
유니티 게임 엔진 - 와 혼동해서는 안 대부분의 우분투 버전의 기본 그래픽 인터페이스는 인기있는 독점적 인 크로스 플랫폼 게임 엔진을 --is. 이 엔진은 .NET Framework 또는 Mono 위에서 실행 되지 않습니다 . 대신 Mono 가 포함되어 있습니다. 즉 Mono가 그 위에서 실행됩니다. 이것이 개발자가 게임에 필요한 코드를 작성하여 Unity 엔진의 일부가 아닌 방법입니다.
일반적으로 Mono는 완전한 .NET / Mono 프로그램을 실행하기 위해 Microsoft의 .NET CLR이 일반적으로 사용되는 것과 같은 방식으로 사용될 수 있습니다. 그러나 Mono는 또한 이러한 응용 프로그램을 사용자 정의 할 수있는 기능을 포함 하여 기본 코드 응용 프로그램에 쉽게 포함 할 수 있도록 설계되었습니다 . 그것은 당신이 묘사하고있는 상황에서 일어나고있는 일입니다. 보고있는 파일은 Mono 또는 .NET CLR에서 직접 실행되는 프로그램에 속하지 않습니다. 대신 모노를 포함하는 기본 코드 프로그램에 속합니다.
주로 C ++로 작성된 Unity 게임 엔진은 시스템 패키지 관리자를 통해 설치된 버전 (있는 경우)을 사용하지 않으며 다른 버전 일 수도 있습니다. 이 내장 모노 런타임은 그 목적이 아니기 때문에 독립형 .NET / Mono 프로그램을 실행하는 데 사용할 수 없습니다. 대신 엔진의 원시 코드 부분이이를 사용하여 CIL 코드를 실행합니다. CIL은 공식 이름 인 Common Intermediate Language 입니다. Microsoft가 원래 개발 한 이후로 이전에 MSIL 또는 Microsoft Intermediate Language라고 불렀습니다. Unity 엔진을 사용하는 게임을 만드는 프로그래머는 일반적으로 C #으로 자체 코드를 작성하지만 일부 다른 언어는 지원됩니다.
Unity 엔진은 Windows에서도 Mono를 포함합니다. 들어 유니버설 윈도우 플랫폼 과 다른 플랫폼 - - 게임 대신 모노의 마이크로 소프트 .NET 프레임 워크를 사용합니다. 그러나 대부분의 모바일 장치 및 게임 콘솔을 비롯하여 대부분의 플랫폼에서 Ubuntu 및 Windows를 포함한 Unity 게임의 대부분은 Mono를 사용합니다. 일부 플랫폼에서는 IL2CPP 를 Mono 대신 사용할 수 있으며 일부 IL2CPP 만 지원됩니다. 자세한 내용은 스크립팅 제한 사항 을 참조하십시오.
.dll
우분투에서 파일을 볼 수있는 다른 상황.dll
우분투 에서 파일 을 볼 수있는 두 가지 상황 이 설명되었습니다.
.dll
우분투 시스템에서 가장 많이 보는 것입니다. 폴더 의 .dll
파일 이 무엇인지는 아닙니다 GameDataFolder/Managed
..dll
우분투 에서 파일을 볼 수있는 합리적 인 두 가지 다른 경우가 있습니다 .
.dll
파일이 아닌 .exe
파일을 생성 합니다 . 일반 .NET Framework 또는 Mono가 아닌 .NET Core 런타임 (CoreCLR이라고 함) 이 이러한 파일을 실행합니다. .NET Core는 Microsoft 제품이지만 표준 .NET Framework와 달리 .NET Core는 Ubuntu와 같은 GNU / Linux 시스템 을 공식적으로 지원 하는 크로스 플랫폼 이며 무료 오픈 소스 소프트웨어 입니다..dll
우분투에서 볼 수 있는 파일은 Windows 라이브러리 일뿐입니다. 프로그램이 Ubuntu 시스템에 저장되어 있지만 Windows에서 실행 중이거나 Ubuntu에 Windows 드라이브를 마운트 한 경우이 오류가 나타날 수 있습니다. Wine 과 함께 제공되거나 winetricks
다른 Windows 소프트웨어를 지원하기 위해 자동으로 설치되는 소프트웨어를 포함 하여 Wine을 사용하여 Ubuntu에서 실행할 수있는 프로그램과 관련하여 볼 수도 있습니다 .이것은 .dll
우분투에서 발생할 수있는 모든 상황을 철저히 나열하려는 시도는 아닙니다 . (예를 들어, OS / 2 라이브러리 일 수도 있습니다 .) 그러나이 4 가지 경우가 가장 일반적이라고 생각합니다.