Как скомпилировать GTK2 на машине Linux без прав администратора?
Я работаю на компьютере SUSE Linux Enterprise Server 10 (x86_64), который имеет версию 6.4.6 GVim, которая довольно старая и не поддерживается некоторыми плагинами.
Это корпоративная машина, и никто не будет выполнять никаких административных изменений только потому, что я хочу иметь плагин выравнивания...
Я скачал и успешно скомпилировал версию 7.3 с помощью команды "configure --prefix=/my/local/dir".
Однако он не распознает GTK2 и продолжает использовать уродливый графический интерфейс Motif. Кажется, у меня установлена слишком старая версия GTK: "проверка GTK - версия>= 2.2.0... нет"
Я пытался вручную установить пакет GTK2 dev в локальный путь, но это не удалось. Любые идеи, как я могу продолжить?..
Спасибо...
РЕДАКТИРОВАТЬ
"Не удалось" - означает, что я установил glib2, но Панго его не увидел. Затем я попробовал jhbuilder, но он просто выдал странные ошибки, которые Google не дал решения...
2 ответа
"но это не удалось" не дает достаточно информации о том, что пошло не так, но у меня есть несколько догадок. Какие конкретные параметры командной строки вы пытаетесь использовать? Какое сообщение об ошибке вы получаете?
Несколько советов для создания вещей на местном уровне:
- Вам могут понадобиться другие обновленные зависимости, такие как GLib.
- Для программ, основанных на Autoconf (которые обычно отдаются тем, что
./configureскрипт существует), нужно указать--prefix=/some/writable/dirа также установить переменную средыPKG_CONFIG_PATHВ точкуpkg-configв нужном месте. - Вам в основном нужно создать каталог, например
/home/you/usrкоторый является вашим местным эквивалентом/usrи убедить сценарии сборки библиотек, таких какGLibа такжеGTKиспользовать/home/you/usrдля всего - в случае сомнений, запустите скрипт конфигурации сstrace -Ff -eopenесли можете, и посмотрите, к каким файлам он обращается/usrа затем Google способ получить его, чтобы посмотреть в/home/you/usrвместо. - Возможно, вам также придется переопределить путь установки по умолчанию для библиотек, передав
--libdir=/home/you/usr/libв скрипт настройки. - Связь, то есть каталоги, с которыми нужно связываться для каждого шага ссылки, обрабатывается путем правильной установки
.pcфайлы для библиотек зависимостей в/home/you/usr/lib/pkg-config, Итак, другими словами, автоматически сгенерированный.pcфайлы, которые устанавливаются в/home/you/usr/lib/pkg-configкогда ты бежишьmake installна автозагрузке программы, если вы установитеPKG_CONFIG_PATHправильно, скажите компилятору ссылаться на/home/you/usr/lib/libglib-2.0.soи не/usr/lib/libglib-2.0.so(например).
Что ж, благодаря allquixotic, у меня теперь красивый местный GVim7.3:)
Для будущих читателей я подведу итоги. (надеясь, что я ничего не забыл...):
Перед запуском:
setenv CPPFLAGS "-I/local/path/usr/include"
setenv LDFLAGS "-L/local/path/usr/lib"
setenv LD_LIBRARY_PATH "/local/path/usr/lib"
setenv PKG_CONFIG_PATH "/local/path/usr/lib/pkgconfig"
В каждом компоненте выполните следующие команды:
./configure --prefix=/local/path/usr
make
make install
Вот версии, которые я использовал (обратите внимание, что порядок важен):
glib-2.10.3
atk-1.9.1
freetype-2.2.1
fontconfig-2.3.97
cairo1.0.4
pixman0.9
pango-1.12.4
gtk+-2.8.20
После этого я мог скомпилировать Vim7.3 со следующей конфигурацией:
configure --prefix=/local/path/usr --with-features=big --enable-gui=gtk2 | tee config.log
И убедитесь, что GTK найден.