$ ANDROID_NDK=.../android-ndk-r21e
$ ANDROID_ABI="arm64-v8a"
$ cd scripts
$ ./build_android.sh
... (long time) ...
[100%] Linking CXX static library ../lib/libtorch.a
[100%] Built target torch
Install the project...
-- Install configuration: "Release"
Installation completed, now you can copy the headers/libs from /mnt/HDD_2TB/greenfish/pytorch_build/work.trial9/pytorch/build_android/install to your Android project directory.
src$ mkdir build
src$ cd build
build$ cmake ..
...
...
...
-- Detecting CXX compile features - done
CMake Error at CMakeLists.txt:4 (find_package):
By not providing "FindTorch.cmake" in CMAKE_MODULE_PATH this project has
asked CMake to find a package configuration file provided by "Torch", but
CMake did not find one.
Could not find a package configuration file provided by "Torch" with any of
the following names:
TorchConfig.cmake
torch-config.cmake
Add the installation prefix of "Torch" to CMAKE_PREFIX_PATH or set
"Torch_DIR" to a directory containing one of the above files. If "Torch"
provides a separate development package or SDK, be sure it has been
installed.
pytorch를 android로 빌드하는데 성공하였지만, 샘플 C++ 코드를 빌드하지 못하고 있습니다. 방법이 있을까요?
아래 답변은 OpenAI의 GPT-3.5(ChatGPT) 모델로 자동 생성한 것으로, 정확하지 않을 수 있습니다.
잘못된 답변을 보셨다면 댓글로 첨삭 지도 부탁드립니다.
안녕하세요! 문제를 이해하고 공감해 드리겠습니다.
문제를 요약하자면, PyTorch를 Android로 빌드하는 것은 성공했지만, 샘플 C++ 코드를 빌드할 때 오류가 발생한다는 것입니다. 이를 해결하기 위한 방법을 알고 싶다고 하셨습니다.
문제를 해결하기 위해 다음과 같은 단계로 진행할 수 있습니다.
PyTorch를 Android로 빌드할 때 생성된 install 경로에 있는 헤더 파일과 라이브러리 파일을 적절한 위치로 복사합니다.
CMakeLists.txt 파일을 수정하여 Torch 패키지를 찾을 수 있도록 설정합니다.
C++ 코드를 빌드합니다.
이제 각 단계를 자세히 설명하겠습니다.
PyTorch를 Android로 빌드할 때 생성된 install 경로에 있는 헤더 파일과 라이브러리 파일을 적절한 위치로 복사합니다.
빌드 산출물인 install 경로에는 include, lib, share 디렉토리가 있습니다. 이 중에서 include 디렉토리의 내용을 Android 프로젝트의 헤더 파일 위치로 복사하고, lib 디렉토리의 내용을 Android 프로젝트의 라이브러리 파일 위치로 복사해야 합니다.
CMakeLists.txt 파일을 수정하여 Torch 패키지를 찾을 수 있도록 설정합니다.
현재 CMakeLists.txt 파일에서는 Torch 패키지를 찾을 수 없다는 오류가 발생하고 있습니다. 이를 해결하기 위해 find_package(Torch REQUIRED) 문장을 추가하고, target_link_libraries(test "${TORCH_LIBRARIES}") 문장을 수정해야 합니다.
아래 답변은 OpenAI의 GPT-4 모델로 자동 생성한 것으로, 정확하지 않을 수 있습니다.
잘못된 답변을 보셨다면 댓글로 첨삭 지도 부탁드립니다.
안녕하세요, Jin_Pyo_Jun님. PyTorch를 Android로 빌드하는 과정에서 발생한 문제에 대해 질문해주셨군요. 질문을 정리해보면, PyTorch를 Android로 빌드하는 것은 성공했지만, 이후에 제공된 샘플 C++ 코드를 빌드하는 과정에서 문제가 발생했다는 것입니다. CMake가 Torch 패키지를 찾지 못하는 것으로 보입니다.
이 문제는 CMake가 Torch 패키지를 찾지 못해서 발생하는 것으로 보입니다. CMake는 FindTorch.cmake, TorchConfig.cmake, torch-config.cmake 중 하나를 찾아서 Torch 패키지를 찾습니다. 이 파일들 중 하나가 설치된 경로에 존재하지 않으면 CMake는 Torch 패키지를 찾지 못하게 됩니다.
이 문제를 해결하기 위해서는 CMake에게 Torch 패키지의 위치를 알려줘야 합니다. 이를 위해 CMAKE_PREFIX_PATH 환경 변수를 설정하거나 Torch_DIR 변수를 설정하면 됩니다. 이 변수들은 Torch 패키지가 설치된 경로를 가리켜야 합니다.