💻 programming/unity
[유니티] WebGL 빌드에러: Getting System.ComponentModel.Win32Exception (2)
연구원-A
2022. 12. 9. 14:48
반응형
리눅스 PC에서 유니티 WebGL을 빌드하는데 아래 에러가 발생했다
Getting System.ComponentModel.Win32Exception (2)
대략적으로 이해한바로는
유닉스 계열 (Linux, macOS)에서 나타나는 문제로,
WebGL을 빌드할 때 사용하는 Emscripten 툴체인에서 Python 라이브러리가 링크되지 않아서 발생한다고 한다
해결하는 방법은 단순한데 EMSDK_PYTHON 환경변수에 Python 경로를 지정해 주면 된다
빌드 에러를 해결하는 방법은 아래와 같다
첫째, Asset 바로 아래에 WebglPreBuildProcessing.cs 파일을 만든다
둘째, 아래 코드를 붙여 넣는다
-
- "<파이썬 경로>" 에는 python3 경로를 입력한다
- 우분투의 경우 whereis python3 명령어를 사용하면 경로를 찾을 수 있다 (e.g. /usr/bin/python3)
#if UNITY_EDITOR
using UnityEditor.Build;
using UnityEditor.Build.Reporting;
public class WebglPreBuildProcessing : IPreprocessBuildWithReport
{
public int callbackOrder => 1;
public void OnPreprocessBuild(BuildReport report)
{
System.Environment.SetEnvironmentVariable("EMSDK_PYTHON", "<파이썬 경로>");
}
}
#endif
빌드가 성공하면 Web에서 열 수 있는 파일들이 생성된다
https://taemin-hwang.github.io/pansori-demo/ (예시)
아래 링크를 참고하여 빌드 에러를 해결했다
https://answers.unity.com/questions/1893328/getting-systemcomponentmodelwin32exception-2-no-su.html
Getting System.ComponentModel.Win32Exception (2): No such file or directory - Unity Answers
answers.unity.com
반응형