Home CROSS2OH Migrated Libraries(Usefulness of CROSS2OH)
Post

CROSS2OH Migrated Libraries(Usefulness of CROSS2OH)

We collected C/C++ libraries used by highly downloaded Android apps but not yet ported to Open- Harmony. After porting them using CROSSOH, we submitted PRs to the openharmony-sig/tpc_c_cplusplus repository following community specifications.
Library NameApp sourceAndroid App#Downloads of Android AppCategory#Stars#KLOC#Pull Request IDPull Request Link (gitcode)
dracoGoogle playTrip.com10M-50MMultimedia65036197101189Link
mbedtlsGoogle playBeautyCam50M-100MNetworking5480715161237Link
libiec61850Google playWeChat100M-500MNetworking8731703661288Link
zopfliGoogle playStarMaker100M-500MFile Handling3427172391289Link
libuclGoogle playVK100M-500MFile Handling1625378191297Link
bdwgcGoogle playHong Kong Disneyland1M-5MFile Handling2978855011398Link
cppcodecGoogle playMicrosoft Excel1B-5BData Handling61440581394Link
bullet3Google playGodot Editor500K-1MMultimedia1257712775971393Link
Log4zGoogle playMi Fitness10M-50MUtilities33464781379Link
meshoptimizerGoogle playAgoda50M-100MMultimedia5621457911408Link
WorldGoogle playWeSing100M-500MMultimedia1182132011402Link
yyjsonGoogle playVooV Meeting1M-5MData Handling3105928451426Link
kcpGoogle playiQIYI50M-100MNetworking1534239571403Link
oggGoogle playMicrosoft Edge100M-500MMultimedia347178401409Link
reactphysics3dGoogle playLazada500M-1BMultimedia15293044061410Link
utf8procGoogle playCamScanner100M-500MData Handling1046238991412Link
tinygltfGoogle playTango100M-500MMultimedia20224405481413Link
json11Google playTrip.com10M-50MData Handling255214541414Link
libsamplerateGoogle playHong Kong Disneyland1M-5MMultimedia6133804031415Link
spirv-reflect-sdkGoogle playWeSing100M-500MUtilities6871587241416Link
SQLiteCppGoogle playHong Kong Disneyland1M-5MData Handling22163823941419Link
capstoneGoogle playbilibili5M-10MSecurity756611235911421Link
yaml-cppGoogle playbilibili5M-10MFile Handling51221815541422Link
cpu_featuresGoogle playIntune Company Portal50M-100MUtilities245173551423Link
re2Google playDeepL Translate10M-50MUtilities8945474931433Link
squirrelFdroidTIC-80--Other915260401439Link
libdivsufsortGoogle playShopee5M-10MScientific36348121445Link
g3logGoogle playAmazon Shopping500M-1BUtilities908125391450Link
enchiveGoogle playDuolingo500M-1BFile Handling63139721451Link
lizardGoogle playbilibili5M-10MFile Handling654254671452Link
u8g2FdroidRemote Video Camera--Multimedia56186803271715Link
n2nFdroidMullvad VPN1M-5MNetworking65451341671713Link
massdnsFdroidNextDNS Manager100K-500KNetworking33391501751716Link
libmillFdroidBleOta100-500Utilities3056200281719Link
webuiFdroidMixer Controller--Utilities35591459021718Link
zapFdroidPlainApp1M-5MNetworking2875736961720Link
enetFdroidRethink500K-1MNetworking2911103861721Link
Collections-CFdroidEteSync10K-50KData Handling2908273121724Link
scFdroidEngineDataLogger--Data Handling2478237561725Link
onigurumaGoogle playMeitu100M-500MUtilities24461251681726Link
Help ×

The following GIF demonstrates an example of using CROSS2OH with the log4z library as the target C/C++ software to be ported. The process automatically performs the following steps:
(1) an initial cross-compilation attempt, which fails and terminates due to errors;
(2) running CROSS2OH to detect CPI issues and generate the corresponding *.patch files;
(3) repeating the cross-compilation, which now succeeds.
Finally, we can observe that the resulting artifacts (e.g., *.a and *.h files) are generated in the lycium/usr directory. These artifacts are usable within the OpenHarmony environment. Additionally, the *.patch files and the cross-compilation log (build.log) can be found in the thirdparty/ directory.

avatar
help