2022-09-11, 02:03
I'm trying to add the "ICUC4" library to Kodi, so I need to build on various platforms. How can I find out the "normal" build configurations, say, that Jenkins uses for Android, Windoze, etc? I'm starting with Android aarch64 since it "sounds" newer than the other Android flavor. Or am I going about this wrong?
For Android, after much headache and help, I have the basics working. I can cross-compile on Linux, but I don't know the options that I should use or what dependencies that I should build. Undoubtedly I can figure this out, but I am hoping to just copy whatever the 'official' build uses, or at least use that as a starting point. Currently I have:
--host=${host} \
--with-sdk-path=$HOME/android-tools/android-sdk-linux \
--with-ndk-path=$HOME/android-tools/android-ndk-r21e \
--prefix=$HOME/android-tools/xbmc-depends \
--enable-debug=yes
--with-target-cxxflags="-std=c++17"
# --with-target-cflags= \
# --with-target-ldflags= \
# --with-toolchain=/usr
# exit $?
fi
# BUILD TOOLS and dependencies
if ${BUILD_TOOLS} -eq 1 (wiki); then
make -j$(getconf _NPROCESSORS_ONLN)
#exit $?
fi
#make -C tools/depends/target/libicu BUILD_DIR=${BUILD_DIR}
#exit $?
cd ${KODI_SOURCE}
if ${BUILD_KODI} -eq 1 (wiki); then
# Configure CMAKE
make -C tools/depends/target/cmakebuildsys BUILD_DIR=${BUILD_DIR}
# Build KODI
make -j$(getconf _NPROCESSORS_ONLN)
echo $?
fi
But it blows up building Python3.9 "/python3.9/lib-dynload/_sysconfigdata__linux_.py': No such file or directory", which I have not started to investigate. But I don't know if I need to build python for android in the first place (I suspect that I do).
For my purposes I think that I just need to build the minimum required to show that ICU4C can be built and unit-tests run. It would be better to demonstrate that it can be done with the full-blown shipped product so that any problems with memory footprint or other resource limits show up.
Any guidance appreciated.
Thanks
For Android, after much headache and help, I have the basics working. I can cross-compile on Linux, but I don't know the options that I should use or what dependencies that I should build. Undoubtedly I can figure this out, but I am hoping to just copy whatever the 'official' build uses, or at least use that as a starting point. Currently I have:
--host=${host} \
--with-sdk-path=$HOME/android-tools/android-sdk-linux \
--with-ndk-path=$HOME/android-tools/android-ndk-r21e \
--prefix=$HOME/android-tools/xbmc-depends \
--enable-debug=yes
--with-target-cxxflags="-std=c++17"
# --with-target-cflags= \
# --with-target-ldflags= \
# --with-toolchain=/usr
# exit $?
fi
# BUILD TOOLS and dependencies
if ${BUILD_TOOLS} -eq 1 (wiki); then
make -j$(getconf _NPROCESSORS_ONLN)
#exit $?
fi
#make -C tools/depends/target/libicu BUILD_DIR=${BUILD_DIR}
#exit $?
cd ${KODI_SOURCE}
if ${BUILD_KODI} -eq 1 (wiki); then
# Configure CMAKE
make -C tools/depends/target/cmakebuildsys BUILD_DIR=${BUILD_DIR}
# Build KODI
make -j$(getconf _NPROCESSORS_ONLN)
echo $?
fi
But it blows up building Python3.9 "/python3.9/lib-dynload/_sysconfigdata__linux_.py': No such file or directory", which I have not started to investigate. But I don't know if I need to build python for android in the first place (I suspect that I do).
For my purposes I think that I just need to build the minimum required to show that ICU4C can be built and unit-tests run. It would be better to demonstrate that it can be done with the full-blown shipped product so that any problems with memory footprint or other resource limits show up.
Any guidance appreciated.
Thanks