inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

삼각형의 실전! Vulkan 중급

SPIR-V

windows에서 shaderc의 빌드 실패 문제 해결방법입니다

해결된 질문

461

133c96d

작성한 질문수 1

3

윈도우에서는 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로 변경해야합니다.

 

cross-platform vulkan spir-v computer-graphics

답변 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

dlgmlals3

안녕하세요 vulkan 공부를 하시는 것 같은데요 ~

워낙 하시는 분들이 잘 없기도 해서~

아래 주소로 들어오셔서 같이 공부하면 좋을 것 같아요~

https://open.kakao.com/o/g5MrTNog

일렉트론 패키징 및 배포 관련 질문

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

192

1

코드는 어디서 얻을수있나요 ?

0

293

1