windows에서 shaderc의 빌드 실패 문제 해결방법입니다
윈도우에서는 shaderc를 빌드하려고 하면
unknown command: "create
make: *** [Android.mk:77: obj/local/arm64-v8a/libshaderc_combined.a] Error 1라면서 오류가 발생합니다.
이를 해결하기 위해서는 Android.mk에서 45~51번째 줄을 아래 링크에서 제공하는 코드로 수정이 필요합니다.
[Bug]: llvm-ar.exe error "unknown command" · Issue #1815 · android/ndk (github.com)
또한, CMakeLists에서도 빌드 명령에서 APP_STL:=<stl_version>에 무엇을 넣느냐에 따라서 libshaderc.a의 경로가 달라지기 때문에 수정이 필요할 수 있습니다.
저는 뭘 넣어야 할지 몰라서 c++_shared를 사용했는데, 그러면, c++_shared라는 이름으로 폴더 이름이 만들어져 libshaderc.a를 링크하는 부분을 system에서 c++_shared로 변경해야합니다.
답변 3
1
윈도우즈에서 shaderc 빌드 에러와 해결법을 공유해주셔서 감사합니다. APP_STL의 경우 따로 명시하지 않으면 system으로 설정됩니다. 강의에서 제가 사용한 명령어는 아래와 같습니다.
$ ../../../ndk-build NDK_PROJECT_PATH=. APP_BUILD_SCRIPT=Android.mk \
APP_ABI=all libshaderc_combined
0
혹시 윈도우에서는 shaderc 경로가 어딘지 공유해주실 수 있으신가요?
C:\Program Files\Android\Android Studio1\plugins\android-ndk 여기는 아닌 것 같습니다..ㅋㅋ
0
윈도우 환경이 없어 확인해보지 못했지만 공식 문서에 따르면 설정된 ndk 폴더 아래에 있습니다. 아니면 https://github.com/google/shaderc 에서 다운받으셔서 빌드하셔도 됩니다.
1
C:/Users/[USERNAME]/AppData/Local/Android/Sdk/ndk/25.1.8937393
저는 이 경로에 설치되어있었습니다. 다른 수강생분들 참고하세요~
0
[x86] Compile++ : SPIRV-Tools-opt <= scalar_analysis.cpp
[x86] Compile++ : SPIRV-Tools-opt <= scalar_analysis_simplification.cpp
[x86] Compile++ : SPIRV-Tools-opt <= scalar_replacement_pass.cpp
[x86] Compile++ : SPIRV-Tools-opt <= set_spec_constant_default_value_pass.cpp
[x86] Compile++ : SPIRV-Tools-opt <= simplification_pass.cpp
[x86] Compile++ : SPIRV-Tools-opt <= spread_volatile_semantics.cpp
[x86] Compile++ : SPIRV-Tools-opt <= ssa_rewrite_pass.cpp
[x86] Compile++ : SPIRV-Tools-opt <= strength_reduction_pass.cpp
[x86] Compile++ : SPIRV-Tools-opt <= strip_debug_info_pass.cpp
[x86] Compile++ : SPIRV-Tools-opt <= strip_nonsemantic_info_pass.cpp
[x86] Compile++ : SPIRV-Tools-opt <= struct_cfg_analysis.cpp
[x86] Compile++ : SPIRV-Tools-opt <= type_manager.cpp
[x86] Compile++ : SPIRV-Tools-opt <= types.cpp
[x86] Compile++ : SPIRV-Tools-opt <= unify_const_pass.cpp
[x86] Compile++ : SPIRV-Tools-opt <= upgrade_memory_model.cpp
[x86] Compile++ : SPIRV-Tools-opt <= value_number_table.cpp
[x86] Compile++ : SPIRV-Tools-opt <= vector_dce.cpp
[x86] Compile++ : SPIRV-Tools-opt <= workaround1209.cpp
[x86] Compile++ : SPIRV-Tools-opt <= wrap_opkill.cpp
[x86] StaticLibrary : libSPIRV-Tools-opt.a
"[x86] Combine: libshaderc_combined.a <= libglslang.a libOGLCompiler.a libOSDependent.a libshaderc.a libshaderc_util.a libSPIRV.a libHLSL.a libSPIRV-Tools.a libSPIRV-Tools-opt.a"
md ".\libs\system\x86" >NUL 2>NUL || rem
copy /b/y ".\obj\local\x86\libshaderc_combined.a " ".\libs\system\x86\libshaderc.a" > NUL
윈도우즈 에서는 shaderc 빌드 완료하면 이런 로그가 나옵니다. 에러인줄 알았는데 정상적으로 빌드된 거네요;
0
안녕하세요 vulkan 공부를 하시는 것 같은데요 ~
워낙 하시는 분들이 잘 없기도 해서~
아래 주소로 들어오셔서 같이 공부하면 좋을 것 같아요~
일렉트론 패키징 및 배포 관련 질문
0
109
2
MeshObject 공용 사용 방법
1
95
2
BuildBLAS 할당 리소스 사이즈
0
80
2
ConstnatBufferPool관련 질문
0
69
2
강의에서 말씀해주신대로 폴더에 넣었는데 실행이 되지않습니다
0
87
2
8)MVVM Pattern실습 + Builder Pattern +이벤트처리 방법 관련질문
0
100
2
안드로이드 에뮬레이터는 실행되는데 없다고 인식
0
190
3
Metal api 강의
0
110
2
섹션6 >> Hello color animation 과제에서 궁금한 점이 있습니다.
1
104
2
비주얼 스튜디오 파일
0
192
2
Microsoft.Maui.Controls Update후 오류발생
0
164
2
VkSubmitInfo2에 대해 질문드립니다.
0
124
2
VkImageLayout 열거형에 대해 질문드립니다.
0
136
2
예제 코드 (on_vkQueueWaitIdle)로그 관련
0
189
2
RGB 값 관련 질문드립니다.
0
127
2
vert_phong.vert negate 질문
0
124
2
glm-tri.cpp 의 glVertexAttribPointer 질문입니다.
0
160
2
vulkan 강의 일정
0
151
2
descriptorSet에 대한 질문들
0
309
2
descriptorCount 에 대한 질문
0
231
2
질문이 있습니다.
0
207
1
섹션2-6 vulkan device 질문
0
267
2
섹션 4-2 command pool
0
191
1
코드는 어디서 얻을수있나요 ?
0
293
1





