Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sqlite/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sqlite 在monomac上使用dllmap_Sqlite_Mono_Dylib_Monomac_Xamarin.mac - Fatal编程技术网

Sqlite 在monomac上使用dllmap

Sqlite 在monomac上使用dllmap,sqlite,mono,dylib,monomac,xamarin.mac,Sqlite,Mono,Dylib,Monomac,Xamarin.mac,我正试图使用一个定制的sqlite构建和MonoMac,有效地按照这一点 然而,使用dllmap似乎不起作用 我的自定义动态库正在部署到[myapp.app]/Contents/Frameworks/mycustomlib.dylib otool-L mycustomlib.dylib的输出看起来正确: @executable_path/../Frameworks/mycustomlib.dylib (compatibility version 0.0.0, current version 0.

我正试图使用一个定制的sqlite构建和MonoMac,有效地按照这一点

然而,使用dllmap似乎不起作用

我的自定义动态库正在部署到
[myapp.app]/Contents/Frameworks/mycustomlib.dylib

otool-L mycustomlib.dylib的输出看起来正确:

@executable_path/../Frameworks/mycustomlib.dylib (compatibility version 0.0.0, current version 0.0.0)
/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 169.3.0)
我的
myapp.exe.config
文件如下所示:

<?xml version="1.0" encoding="UTF-8" ?>
<configuration>
    <dllmap dll="sqlite3" target="@executable_path/../Frameworks/mycustomlib.dylib" os="!windows" />
</configuration>

我已经确认它与
[myapp.app]/Contents/MonoBundle
中的
myapp.exe
一起被复制

我可以通过重新编译
Mono.Data.Sqlite
并直接用
mycustomlib
替换对
sqlite3
的引用来强制实现这一点。然而,dllmap路由要好得多


我错过了什么?如何调试此文件?

将dllmap配置从
myapp.exe.config
移动到新的
Mono.Data.Sqlite.dll.config
文件以使重新映射生效。

将dllmap配置从
myapp.exe.config
移动到新的
Mono.Data.Sqlite.dll.config
文件以使重新映射生效。

您做了吗解决过这个问题吗?我完全被这件事缠住了。在我的例子中,我的动态库最终被放在了参考资料中(尽管我想知道你是如何把它放进“Frameworks”文件夹的?)。你在使用Xamarin Studio吗?好的,我刚刚意识到将动态库放到NativeReferences中会创建框架文件夹,虽然我不确定在调试中如何访问它,但你是否也会有框架文件夹?我的dllmap仍然无法工作:pn从未让dllmap工作过。至于/Frameworks文件夹,我有一个构建后shell脚本,它创建了目录结构并将文件移动到其中。您解决过这个问题吗?我完全被这件事缠住了。在我的例子中,我的动态库最终被放在了参考资料中(尽管我想知道你是如何把它放进“Frameworks”文件夹的?)。你在使用Xamarin Studio吗?好的,我刚刚意识到将动态库放到NativeReferences中会创建框架文件夹,虽然我不确定在调试中如何访问它,但你是否也会有框架文件夹?我的dllmap仍然无法工作:pn从未让dllmap工作过。至于/Frameworks文件夹,我有一个构建后的shell脚本,它创建了目录结构并将文件移动到其中。我记得我试过了,但没有成功。。。但我不记得细节了。投票给你,谢谢你的建议。没问题,我只是在尝试使用sqlcipher而不是打包的sqlite3时遇到了同样的问题,这就是我的诀窍。我记得我尝试过,但没有成功。。。但我不记得细节了。向上投票,谢谢你的建议。没问题,我只是在尝试使用sqlcipher而不是打包的sqlite3时遇到了同样的问题,这就是我的窍门。