Skip to content

Change to mono search path logic breaks MacOS dll loading #67

@CptMoore

Description

@CptMoore

The changes introduced in #57 break env variable interpretations on MacOS.

Before we could specify the target assembly relative to the resources directory path and omit additional search paths:

DOORSTOP_TARGET_ASSEMBLY="Mods/ModTek/lib/ModTek.Preloader.dll"

Now it has to be:

DOORSTOP_TARGET_ASSEMBLY="BattleTech.app/Contents/Resources/Mods/ModTek/lib/ModTek.Preloader.dll"
DOORSTOP_MONO_DLL_SEARCH_PATH_OVERRIDE="BattleTech.app/Contents/Resources/Mods/ModTek/lib"

Note that neither Windows nor Linux are affected, its just MacOS.

Our workaround is to add via run.sh a hardcoded prefix to paths in case its Darwin:

    additional_path="BattleTech.app/Contents/Resources"
    DOORSTOP_TARGET_ASSEMBLY="$additional_path/$DOORSTOP_TARGET_ASSEMBLY"
    DOORSTOP_MONO_DLL_SEARCH_PATH_OVERRIDE="$additional_path/$DOORSTOP_MONO_DLL_SEARCH_PATH_OVERRIDE"

Additionally, the README does not mention DOORSTOP_MONO_DLL_SEARCH_PATH_OVERRIDE.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions