Я пытался установить Платформу Haskell и cabal-install
установленный на Linux в пространстве пользователя в системе, которая не имеет пакета Мультиточности GNU (GMP), установил.
Мне удалось получить установленный GHC-6.12.1 и работа GHCi путем установки LB_LIBRARY_PATH
указать на каталог lib, где я установил GMP, но затем столкнулся с проблемами на следующем шаге, добравшись cabal-install
работать. Это продолжало пытаться (статически) связаться с GMP.
Это перестало работать, потому что GMP не установлен в системе и ld
не имеет подсказки, где найти библиотеки, и нет никакой переменной среды (что я знаю), который может сказать ld, где найти установленный пользователями GMP и (по-видимому) никакой способ сказать Интриге конфигурирования предоставлять соответствующее -L
флаг.
После большого бесплодного поиска и взламывания попыток мне пришла в голову нелепо простая идея установить мое собственное ld
сценарий оболочки, который вызывает систему ld
с соответствующим -L
флаг.
Это - оболочка, пишущая сценарий 101, конечно:
#!/bin/sh
/usr/bin/ld -L$HOME/gnu/lib "$@"
С этим сценарием, установленным в каталоге на моем PATH
перед /usr/bin
все проблемы, кажется, ушли.