Абсолютные и относительные пути
Oct. 7th, 2014 12:09 pm![[personal profile]](https://www.dreamwidth.org/img/silk/identity/user.png)
Есть одна вещь, которая меня смущает - это популярность прибивания гвоздями абсолютных путей в разного рода конфигах.
Вот сейчас мигрирую исходники и сборку софта, использующего mono, на убунте. Сборка скачивает, конфигурирует и собирает моно.
Первый раз расположил рабочую копию не совсем верно, переместил в правильное место - и все, xbuild не работает, потому что в нем гвоздями прибито место, откуда запускать моно. С абсолютным путем. Зачем это так?
Лежит оно все рядом, можно тупо использовать относительный путь, используя путь, с которого запущен скрипт, папку с собранным софтом в таком варианте можно переносить куда угодно, ничего не сломается. Но почему-то так не делают, надо переконфигурировать и пересобирать.
Вот сейчас мигрирую исходники и сборку софта, использующего mono, на убунте. Сборка скачивает, конфигурирует и собирает моно.
Первый раз расположил рабочую копию не совсем верно, переместил в правильное место - и все, xbuild не работает, потому что в нем гвоздями прибито место, откуда запускать моно. С абсолютным путем. Зачем это так?
Лежит оно все рядом, можно тупо использовать относительный путь, используя путь, с которого запущен скрипт, папку с собранным софтом в таком варианте можно переносить куда угодно, ничего не сломается. Но почему-то так не делают, надо переконфигурировать и пересобирать.
no subject
Date: 2014-10-07 09:29 am (UTC)no subject
Date: 2014-10-07 09:40 am (UTC)Потом, если это моно, то значит опенсорц и вы, лично вы, можете запатчить и опубликовать. Людям будет полезно -- внедрят.
Как правило, есть такой подход (попробуйте например Х собрать) -- configure, make, make install
и у configure классическая опция --prefix or --with-dir=/foo которая в точности про это, и есть какой-то дефолт
а вы просто не знаете
no subject
Date: 2014-10-07 10:33 am (UTC)no subject
Date: 2014-10-07 01:20 pm (UTC)почему, точно не знаю
наверное dlopen() такого не любит как один из резонов
no subject
Date: 2014-10-07 02:26 pm (UTC)Вот в виндах (до висты) было ограничение - только junction на директории, но без симлинков на индивидуальные файлы.
no subject
Date: 2014-10-07 10:07 am (UTC)no subject
Date: 2014-10-07 10:18 am (UTC)no subject
Date: 2014-10-07 10:35 am (UTC)no subject
Date: 2014-10-07 12:18 pm (UTC)no subject
Date: 2014-10-07 12:23 pm (UTC)no subject
Date: 2014-10-07 12:40 pm (UTC)no subject
Date: 2014-10-07 01:00 pm (UTC)no subject
Date: 2014-10-07 01:18 pm (UTC)no subject
Date: 2014-10-09 07:12 pm (UTC)Скажем так всё, что не касается проекта скрипты ебать не должно вообще. Это не их собачье дело как у меня обустроена иерархия директорий. У них есть каталог, в каталоге проект. Там пусть диктуют. И то там тоже желательно не размахиваться, чтобы не уничтожать гибкость по глупости.