Hello,
I am experiencing a recurrence of the XA0141 warning regarding 16KB page size for libe_sqlcipher.so when building my .NET MAUI application for Android. This warning persists even after upgrading SQLitePCLRaw packages. While a similar issue was previously discussed and closed in #603 concerning libe_sqlite3mc.so, this new warning specifically targets libe_sqlcipher.so.
Problem Description & Exact Warning
When building my MAUI project for net9.0-android, I receive the following warnings:
$ dotnet build -f net9.0-android
Maui9Test net9.0-android succeeded with 2 warning(s) (XX.Xs) → bin/Debug/net9.0-android/Maui9Test.dll
/usr/local/share/dotnet/packs/Microsoft.Android.Sdk.Darwin/35.0.78/tools/Xamarin.Android.Common.targets(2207,2): warning XA0141: Android 16 will require 16 KB page sizes, shared library 'libe_sqlcipher.so' does not have a 16 KB page size. Please inform the authors of the NuGet package 'SQLitePCLRaw.lib.e_sqlcipher' version '2.1.11' which contains 'runtimes/linux-arm664/native/libe_sqlcipher.so'. See [https://developer.android.com/guide/practices/page-sizes](https://developer.android.com/guide/practices/page-sizes) for more details.
/usr/local/share/dotnet/packs/Microsoft.Android.Sdk.Darwin/35.0.78/tools/Xamarin.Android.Common.targets(2207,2): warning XA0141: Android 16 will require 16 KB page sizes, shared library 'libe_sqlcipher.so' does not have a 16 KB page size. Please inform the authors of the NuGet package 'SQLitePCLRaw.lib.e_sqlcipher' version '2.1.11' which contains 'runtimes/linux-x64/native/libe_sqlcipher.so'. See [https://developer.android.com/guide/practices/page-sizes](https://developer.android.com/guide/practices/page-sizes) for more details.
The warning indicates that libe_sqlcipher.so included in SQLitePCLRaw.lib.e_sqlcipher v2.1.11 does not meet the 16KB page size requirement for Android 15 (API Level 35) and later. This is unexpected, as the release notes for SQLitePCLRaw v2.1.10 mention "Update Android builds to add support for 16kb page size".
My Setup & Configuration
What version of SQLitePCLRaw are you using?
I am using SQLitePCLRaw.lib.e_sqlcipher version 2.1.11.
If you are using one of the SQLitePCLRaw bundle packages, which one?
I have explicitly referenced the following in my .csproj to try and ensure the latest versions are picked up:
<PackageReference Include="SQLitePCLRaw.lib_e_sqlite3" Version="2.1.11" />
What platform are you running on? What operating system? Which version? What CPU?
- Operating System: macOS
- OS Version: 15.5
- OS Platform: Darwin
- CPU: arm64
What target framework are you building for?
What is the exact error message you are seeing when the problem happens?
I am building for net9.0-android on .NET 9 using the command line.
$ dotnet build -f net9.0-android
Maui9Test net9.0-android succeeded with 2 warning(s) (37.1s) → bin/Debug/net9.0-android/Maui9Test.dll
/usr/local/share/dotnet/packs/Microsoft.Android.Sdk.Darwin/35.0.78/tools/Xamarin.Android.Common.targets(2207,2): warning XA0141: Android 16 will require 16 KB page sizes, shared library 'libe_sqlcipher.so' does not have a 16 KB page size. Please inform the authors of the NuGet package 'SQLitePCLRaw.lib.e_sqlcipher' version '2.1.11' which contains 'runtimes/linux-arm64/native/libe_sqlcipher.so'. See https://developer.android.com/guide/practices/page-sizes for more details.
/usr/local/share/dotnet/packs/Microsoft.Android.Sdk.Darwin/35.0.78/tools/Xamarin.Android.Common.targets(2207,2): warning XA0141: Android 16 will require 16 KB page sizes, shared library 'libe_sqlcipher.so' does not have a 16 KB page size. Please inform the authors of the NuGet package 'SQLitePCLRaw.lib.e_sqlcipher' version '2.1.11' which contains 'runtimes/linux-x64/native/libe_sqlcipher.so'. See https://developer.android.com/guide/practices/page-sizes for more details.
Is this problem something that just started happening? For example, were things working well for you and then you updated something and then the problem showed up? What changed?
This specific warning for libe_sqlcipher.so started appearing after updating to .NET 9.
How can we reproduce the problem you are seeing? Your issue will get attention much faster if you attach a minimal reproduction sample project.
A minimal reproduction project could be created with a new MAUI app targeting net9.0-android and adding the SQLitePCLRaw.bundle_sqlcipher packages. Building this project should then show the warning.
Environment Information (dotnet --info)
Click to expand
.NET SDK:
Version: 9.0.301
Commit: a596cd22e2
Workload version: 9.0.300-manifests.a5af3c0a
MSBuild version: 17.14.5+edd3bbf37
Runtime Environment:
OS Name: Mac OS X
OS Version: 15.5
OS Platform: Darwin
RID: osx-arm64
Base Path: /usr/local/share/dotnet/sdk/9.0.301/
.NET workloads installed:
[maui-ios]
Installation Source: SDK 9.0.300
Manifest Version: 9.0.51/9.0.100
Manifest Path: /usr/local/share/dotnet/sdk-manifests/9.0.100/microsoft.net.sdk.maui/9.0.51/WorkloadManifest.json
Install Type: FileBased
[maui-android]
Installation Source: SDK 9.0.300
Manifest Version: 9.0.51/9.0.100
Manifest Path: /usr/local/share/dotnet/sdk-manifests/9.0.100/microsoft.net.sdk.maui/9.0.51/WorkloadManifest.json
Install Type: FileBased
[maui]
Installation Source: SDK 9.0.300
Manifest Version: 9.0.51/9.0.100
Manifest Path: /usr/local/share/dotnet/sdk-manifests/9.0.100/microsoft.net.sdk.maui/9.0.51/WorkloadManifest.json
Install Type: FileBased
Configured to use loose manifests when installing new manifests.
Host:
Version: 9.0.6
Architecture: arm64
Commit: 3875b54e7b
.NET SDKs installed:
9.0.301 [/usr/local/share/dotnet/sdk]
.NET runtimes installed:
Microsoft.AspNetCore.App 9.0.6 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App]
Microsoft.NETCore.App 9.0.6 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]
Other architectures found:
None
Environment variables:
Not set
global.json file:
Not found
Learn more:
https://aka.ms/dotnet/info
Download .NET:
https://aka.ms/dotnet/download
Could you please investigate why libe_sqlcipher.so is still triggering the XA0141 warning in v2.1.11, despite the 16KB page size support update in v2.1.10? Thank you for your assistance.
Hello,
I am experiencing a recurrence of the XA0141 warning regarding 16KB page size for
libe_sqlcipher.sowhen building my .NET MAUI application for Android. This warning persists even after upgrading SQLitePCLRaw packages. While a similar issue was previously discussed and closed in #603 concerninglibe_sqlite3mc.so, this new warning specifically targetslibe_sqlcipher.so.Problem Description & Exact Warning
When building my MAUI project for
net9.0-android, I receive the following warnings:The warning indicates that
libe_sqlcipher.soincluded inSQLitePCLRaw.lib.e_sqlcipherv2.1.11 does not meet the 16KB page size requirement for Android 15 (API Level 35) and later. This is unexpected, as the release notes forSQLitePCLRaw v2.1.10mention "Update Android builds to add support for 16kb page size".My Setup & Configuration
What version of SQLitePCLRaw are you using?
I am using
SQLitePCLRaw.lib.e_sqlcipherversion2.1.11.If you are using one of the SQLitePCLRaw bundle packages, which one?
I have explicitly referenced the following in my
.csprojto try and ensure the latest versions are picked up:<PackageReference Include="SQLitePCLRaw.lib_e_sqlite3" Version="2.1.11" />What platform are you running on? What operating system? Which version? What CPU?
What target framework are you building for?
What is the exact error message you are seeing when the problem happens?
I am building for
net9.0-androidon .NET 9 using the command line.Is this problem something that just started happening? For example, were things working well for you and then you updated something and then the problem showed up? What changed?
This specific warning for
libe_sqlcipher.sostarted appearing after updating to .NET 9.How can we reproduce the problem you are seeing? Your issue will get attention much faster if you attach a minimal reproduction sample project.
A minimal reproduction project could be created with a new MAUI app targeting
net9.0-androidand adding theSQLitePCLRaw.bundle_sqlcipherpackages. Building this project should then show the warning.Environment Information (
dotnet --info)Click to expand
Could you please investigate why
libe_sqlcipher.sois still triggering the XA0141 warning in v2.1.11, despite the 16KB page size support update in v2.1.10? Thank you for your assistance.