Обновите Subversion 1.4.3 до 1.5.2 в Debian (размещенная учетная запись)

StackOverflow https://stackoverflow.com/questions/189906

Вопрос

Я пытаюсь обновить свой сервер Subversion (он размещен на Dreamhost)

Это то, что я запускаю:

Но я не могу продолжать дальше из-за этой ошибки:

  • проверка имени выходного файла компилятора C по умолчанию...
  • настроить:ошибка:Компилятор C не может создавать исполняемые файлы
  • См. `config.log' Больше подробностей.
  • не удалось настроить неон

Поскольку я не эксперт в Linux, я не знаю, как поступить.

Итак, вопрос:каков наилучший способ обновления (учитывая ограничения, связанные с использованием этого хостинг-провайдера).

Обновлять:

Содержание config.log можно посмотреть здесь (не знаю, как лучше всего показывать файлы здесь, в SO)

Обновлять:

Кажется, я просматривал не тот файл config.log.
Наверное, мне следовало посмотреть subversion.1.5.2/neon/config.log

Это было полезно?

Решение

Если вы используете openssl с SVN, вам необходимо настроить SVN с помощью

./configure .... --with-openssl=/path/to/openssl

Когда я делал это раньше, у меня возникали проблемы со сборкой других двоичных файлов, использующих эту библиотеку, если я не указывал -fPIC флаг.Поэтому лучше всего запустить make с этим параметром (если у вас возникла такая проблема).Возможно, вам также придется указать make на ваш двоичный файл сборки.поэтому ваш вызов будет выглядеть примерно так:

make CC="gcc -fPIC" LDFLAGS="/path/to/openssl/lib"

Не забудьте собрать openssl с помощью CC="gcc -fPIC" слишком!

Удачи!

Другие советы

Вам нужно будет создать свою собственную копию под своей учетной записью.

mkdir ~/src
cd ~/src
wget http://subversion.tigris.org/downloads/subversion-1.5.2.tar.bz2
wget http://subversion.tigris.org/downloads/subversion-deps-1.5.2.tar.bz2
tar -xjf subversion-1.5.2.tar.bz2
tar -xjf subversion-deps-1.5.2.tar.bz2
cd subversion-1.5.2
./configure --prefix=/home/$USER --with-ssl
make
make install

Вам также нужно будет изменить свой путь, чтобы это работало, если вы еще этого не сделали.

Когда используешь

./configure --prefix=/usr/bin --with-libs=/usr/bin/openssl --with-ssl

тогда вы можете увидеть в neon/config.log, что он ищет включения в /usr/bin/openssl/include...хотя это, конечно, только двоичный файл.Итак, пропустите эту опцию «--with-libs» и просто убедитесь, что пакет разработки SSL установлен с помощью

apt-get install libssl-dev

Это может быть мерой безопасности: если система скомпрометирована, злоумышленнику теоретически будет труднее создать в системе дополнительный код атаки, чтобы получить больший доступ.

Решением этой проблемы является кросс-компиляция кода на локальном компьютере, а затем передача его на сервер.Если вы не можете установить систему, как предлагает Aupajo, поместите исполняемый файл в каталог $HOME/bin.Однако имейте в виду, что это, вероятно, означает, что у вас не будет разрешения на запуск svn-сервера, а будет только клиентское приложение.

Вот ссылка на использование Debian для кросс-компиляции, однако некоторые поисковые запросы в Google должны предоставить вам дополнительную информацию.

Я тоже застрял с этой ошибкой:

configure: error: C compiler cannot create executables

Оказывается, в моем случае у меня была чистая установка Debian Etch без компилятора C.Я установил его (полагаю, неправильно) через apt-get install gcc .Несколько поисков в Google привели меня к установке g++ вместо этого через

apt-get install g++

После этого это сработало.Не уверен, что это поможет вам, но мне помогло.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top