You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I think either iOS or Android already do this. Can we duplicate what they do? If, then although the dylib is copied into the /bin directory, it never makes it into the OSX package. Currently, I manually add a reference to libxsqlite3 to the packages directory, but this is not ideal.
(This is a change from previous Xamarin.Mac behavior. Now it is "Xamarin Mac Mobile Framework" so the behavior is getting closer to Xamarin iOS.)
The text was updated successfully, but these errors were encountered:
Perhaps there is no analog. Looks like Xamarin.iOS the .a gets added as an Include/Link. Android, the libraries get Embedded. For Xamarin.Mac, it works to place the libxsqlite3 in Native References. For the csproj, it means adding
In this case the NativeReference would have to point to the package directory.
Update. iOS in SQLitePCL.raw does this
{
// throw new NotImplementedException(string.Format("{0}, {1}", cfg.env, cfg.what));
// for now, if you have multiple libs, use libtool -static -o new.a old1.a old2.a ... to make a gigantic universal one
string lib = string.Format("lib{0}.a", cfg.what);
string libPath = libPattern
.Replace("$which", "sqlite")
.Replace("$platform", "ios")
.Replace("$arch", "universal")
.Replace("$lib", lib);
f.WriteStartElement("ItemGroup");
// TODO warning says this is deprecated
f.WriteStartElement("ManifestResourceWithNoCulture");
// TODO underscore
f.WriteAttributeString("Include", Path.Combine(libRoot, libPath));
f.WriteElementString("Link", lib);
f.WriteEndElement(); // ManifestResourceWithNoCulture
f.WriteEndElement(); // ItemGroup
}
If we make a version of this for Mac (instead of simply copying it into the /bin directory), it should work. Will need to write an ItemGroup with NativeReference and Kind/SmartLink inside of it.
I think either iOS or Android already do this. Can we duplicate what they do? If, then although the dylib is copied into the /bin directory, it never makes it into the OSX package. Currently, I manually add a reference to libxsqlite3 to the packages directory, but this is not ideal.
(This is a change from previous Xamarin.Mac behavior. Now it is "Xamarin Mac Mobile Framework" so the behavior is getting closer to Xamarin iOS.)
The text was updated successfully, but these errors were encountered: