Open Liter233 opened 2 months ago
This problem seems caused by not find the 3rdparty, but I noticed that there is also no 3rdparty folder in the src folder when building on the Windows platform. How can I fix it?
This problem seems caused by not find the 3rdparty, but I noticed that there is also no 3rdparty folder in the src folder when building on the Windows platform. How can I fix it?
The ndk verison is r26d
This code should not call install
:
https://github.com/openscenegraph/OpenSceneGraph/blob/2e4ae2ea94595995c1fc56860051410b0c0be605/CMakeModules/OsgAndroidMacroUtils.cmake#L65
This code should not call
install
: https://github.com/openscenegraph/OpenSceneGraph/blob/2e4ae2ea94595995c1fc56860051410b0c0be605/CMakeModules/OsgAndroidMacroUtils.cmake#L65
Sorry, I am not familiar with building Android. Is the android. mk file necessary? I couldn't find documents or instructions about android mk on the OSG website. I try use find_package to replace FIND_PATH(..),but failed Package: osg[core,freetype,plugins,tools]:arm64-android@3.6.5#25
Package: osg[core,freetype,plugins,tools]:arm64-android@3.6.5#25
Host Environment
To Reproduce
vcpkg install osg[core,tools,plugins]:arm64-android --editable
Failure logs
-- Using cached openscenegraph-OpenSceneGraph-OpenSceneGraph-3.6.5.tar.gz.
-- Using source at /home/yhx/github/vcpkg/buildtrees/osg/src/raph-3.6.5-499ecaa6e1
CMake Warning at ports/osg/portfile.cmake:44 (message):
Atomics detection may fail for cross builds. You can set osg cmake
variables in a custom triplet.
Call Stack (most recent call first):
scripts/ports.cmake:192 (include)
-- Configuring arm64-android
CMake Warning at installed/x64-linux/share/vcpkg-cmake/vcpkg_cmake_configure.cmake:344 (message):
The following variables are not used in CMakeLists.txt:
CMAKE_DISABLE_FIND_PACKAGE_Boost
CMAKE_DISABLE_FIND_PACKAGE_DCMTK
CMAKE_DISABLE_FIND_PACKAGE_FFmpeg
CMAKE_DISABLE_FIND_PACKAGE_GLIB
CMAKE_DISABLE_FIND_PACKAGE_GStreamer
CMAKE_DISABLE_FIND_PACKAGE_Inventor
CMAKE_DISABLE_FIND_PACKAGE_SDL
CMAKE_REQUIRE_FIND_PACKAGE_Boost
CMAKE_REQUIRE_FIND_PACKAGE_COLLADA
CMAKE_REQUIRE_FIND_PACKAGE_GTA
CMAKE_REQUIRE_FIND_PACKAGE_Jasper
CMAKE_REQUIRE_FIND_PACKAGE_NVTT
CMAKE_REQUIRE_FIND_PACKAGE_OpenEXR
Please recheck them and remove the unnecessary options from the
`vcpkg_cmake_configure` call.
If these options should still be passed for whatever reason, please use the
`MAYBE_UNUSED_VARIABLES` argument.
Call Stack (most recent call first):
ports/osg/portfile.cmake:94 (vcpkg_cmake_configure)
scripts/ports.cmake:192 (include)
-- Building arm64-android-dbg
CMake Error at scripts/cmake/vcpkg_execute_build_process.cmake:134 (message):
Command failed: /usr/local/bin/cmake --build . --config Debug --target install -- -v -j5
Working Directory: /home/yhx/github/vcpkg/buildtrees/osg/arm64-android-dbg
See logs for more information:
/home/yhx/github/vcpkg/buildtrees/osg/install-arm64-android-dbg-out.log
Call Stack (most recent call first):
installed/x64-linux/share/vcpkg-cmake/vcpkg_cmake_build.cmake:74 (vcpkg_execute_build_process)
installed/x64-linux/share/vcpkg-cmake/vcpkg_cmake_install.cmake:16 (vcpkg_cmake_build)
ports/osg/portfile.cmake:135 (vcpkg_cmake_install)
scripts/ports.cmake:192 (include)
What should i do? Based on OsgAndroidMacroUtils.cmake, do third-party libraries need both library files and source code? But how to organize Android.mk files? I would greatly appreciate your guidance.
The error extracted from the log is as follows:
/home/yhx/github/vcpkg/buildtrees/osg/src/raph-3.6.5-499ecaa6e1/src/osgPlugins/freetype/FreeTypeFont.h:19:10: fatal error: 'ft2build.h' file not found
#include <ft2build.h>
^~~~~~~~~~~~
This is the missing freetype header file。
Note: vcpkg port osg is not tested on Android.
This is the missing freetype header file.
That's just another symptom. The interesting things are in the config log.
CMake Warning at installed/x64-linux/share/vcpkg-cmake/vcpkg_cmake_configure.cmake:344 (message): The following variables are not used in CMakeLists.txt: CMAKE_DISABLE_FIND_PACKAGE_Boost CMAKE_DISABLE_FIND_PACKAGE_DCMTK CMAKE_DISABLE_FIND_PACKAGE_FFmpeg CMAKE_DISABLE_FIND_PACKAGE_GLIB CMAKE_DISABLE_FIND_PACKAGE_GStreamer CMAKE_DISABLE_FIND_PACKAGE_Inventor CMAKE_DISABLE_FIND_PACKAGE_SDL CMAKE_REQUIRE_FIND_PACKAGE_Boost CMAKE_REQUIRE_FIND_PACKAGE_COLLADA CMAKE_REQUIRE_FIND_PACKAGE_GTA CMAKE_REQUIRE_FIND_PACKAGE_Jasper CMAKE_REQUIRE_FIND_PACKAGE_NVTT CMAKE_REQUIRE_FIND_PACKAGE_OpenEXR
That's a very strong indicator that configuration goes wrong at some point. My local config log has:
-- Jpeg missing
-- PNG missing
-- GIF missing
-- TIF missing
-- Curl missing
-- FREETYPE missing
-- GDAL found /vcpkg/installed/arm64-android/include
-- osgText will not be linked with FontConfig library
-- Windowing system not supported
Windowing system not supported, I see.
same problem
Operating system
Linux
Compiler
clang++
Steps to reproduce the behavior
Failure logs
Package: osg[core,freetype,plugins,tools]:arm64-android@3.6.5#25
Host Environment
To Reproduce
vcpkg install osg[core,plugins,tools,freetype]:arm64-android
Failure logs
/home/yhx/github/vcpkg/buildtrees/osg/install-arm64-android-dbg-err.log
``` CMake Error at cmake_install.cmake:46 (file): file INSTALL cannot find "/home/yhx/github/vcpkg/buildtrees/osg/src/raph-3.6.5-499ecaa6e1.clean/3rdparty/build/gdal": No such file or directory. ```Additional context
arm64-android.cmake
set(VCPKG_TARGET_ARCHITECTURE arm64) set(VCPKG_CRT_LINKAGE static) set(VCPKG_LIBRARY_LINKAGE static) set(VCPKG_CMAKE_SYSTEM_NAME Android) set(VCPKG_MAKE_BUILD_TRIPLET "--host=aarch64-linux-android") set(VCPKG_CMAKE_CONFIGURE_OPTIONS -DANDROID_ABI=arm64-v8a)
add
set(osg_OPENGL_PROFILE "GLES2")