我已经在 linux 上编译了单声道 2.10.9 和 3.0.3,并且希望能够将这些安装移动到不同的位置而无需重新编译。我遇到的问题是 mono-sgen 在重定位后无法找到 etc/ 目录。有趣的是,使用 boehm GC 的 mono能够在重定位后找到该目录。这两个可执行文件的行为不同是有原因的吗?
我已经能够使用 MONO_PATH 指定更新的库路径,如下所示:
export MONO_PATH=${PKG_DIR}/lib/mono/4.0:${PKG_DIR}/lib/mono/3.5:${PKG_DIR}/lib/mono/2.0:${PKG_DIR}/lib/mono/compat-2.0
但我坚持让 mono-sgen 找到 etc/ 目录。结果我收到的例外是:
ConfigurationErrorsException: Error Initializing the configuration system.
如果使用新前缀重新编译单声道是最简单的解决方案,我会走那条路,但希望我可以做些别的事情来让它工作。当您可以重新定位具有所有依赖项的整个程序并且它仍然有效时,这很好。