Что самый легкий путь состоит в том, чтобы установить локальный сервер подверсии?

Как я понимаю, системные библиотеки, такие как libc, также должны поставляться, потому что исполняемый файл будет аварийно завершаться при другой версии libc.

Это неверно : GLIBC гарантирует обратную совместимость (исполняемый файл, построенный на более старой системе, будет продолжать работать на более новых версиях GLIBC).

Единственный разумный способ добиться того, чего вы хотите - это скомпилировать самую старую версию GLIBC, которую вы хотите поддерживать.

Между тем libc, похоже, связан с ld-linux

Правильно: libc.so.6 и ld-linux являются частью GLIBC, должны происходить из такая же сборка, и любое несоответствие может привести к катастрофическому отказу (SIGSEGV внутри libc.so.6 или внутри ld-linux).

Мне тоже нужно упаковать ld-linux.

Это сложно: абсолютный путь к ld-linux жестко запрограммирован в a.out и не может быть изменен. Сделать перемещаемым a.out, который может допускать изменения в пути к ld-linux, невозможно (если не считать явного вызова загрузчика, который вы уже пробовали; который не работает хорошо для исполняемых файлов, которые повторно исполняются сами) ).

Обновление:

Я мог бы попытаться использовать старую Ubuntu LTS и получить большую часть обратной совместимости, но тогда я не получил бы новые компиляторы C ++ 17, который в основном побеждает весь смысл современной разработки программного обеспечения.

Вы можете установить более новый компилятор на более старой системе и получить C ++ 17 с более старой GLIBC.

Одна трудность в том, что вам может потребоваться более новый libstdc++.so.6.

Хорошая новость заключается в том, что -Wl,-rpath=$ORIGIN работает нормально - только GLIBC трудно переместить. Вы также можете связать исполняемый файл с libstdc++.a с --static-libstdc++.

Тем не менее, в этом могут быть и последствия для лицензирования (но опять же ваш план уже включал распространение всех библиотек, так что проблема не нова).

11
задан raven 19 February 2010 в 22:26
поделиться

8 ответов

Я использовал TortoiseSVN, создал каталог (C: \ Repositories) затем использовал команду меню «Создать здесь репозиторий ...».

27
ответ дан 3 December 2019 в 00:48
поделиться

Просто создайте локальный репозиторий svn и используйте URL-адреса на основе file: // для их исходного кода. Не обязательно иметь конкретный. запущен, экземпляр сервера для этого.

8
ответ дан 3 December 2019 в 00:48
поделиться

Проверьте http://www.visualsvn.com/ для сервера и TortoiseSVN для клиента. Проверьте AnkhSVN для интеграции с Visual Studio 2008.

5
ответ дан 3 December 2019 в 00:48
поделиться

Я хотел бы второй сервер Visual SVN, который является бесплатным и позволит вам запустить его через несколько минут. Однако он подключает SVN через HTTP, а также для локальной установки Subversion, в которой может не быть необходимости.

Если вы предпочитаете запускать просто «ручную» настройку Subversion, ниже приводится пошаговое описание процесса с упором на использование Visual Studio: http://www.west-wind.com/presentations/subversion/

8
ответ дан 3 December 2019 в 00:48
поделиться

Рик Страл, FTW!

Еще одно замечательное руководство по настройке SVN с Windows принадлежит Джеффу Атвуду из Coding Horror:

Настройка Subversion в Windows

вкратце:

  1. Загрузите / установите SVN, настройте как службу Windows
  2. Установите TortoiseSVN (или другой графический интерфейс SVN по выбору). Я рекомендую придерживаться Tortoise, так как были анекдотические ужасающие истории об использовании клиентов SVN, интегрированных с VS
  3. Создание репозитория (либо через CLI, либо через клиент GUI
4
ответ дан 3 December 2019 в 00:48
поделиться

http://www.visualsvn.com/ Это должно помочь с проблемами интеграции

3
ответ дан 3 December 2019 в 00:48
поделиться

Я рекомендую использовать subversion в качестве локального хоста для файлов с tortoise tortoise для интеграции просмотра или / и ankhsvn для интеграции с vs2008.

3
ответ дан 3 December 2019 в 00:48
поделиться

Я бы порекомендовал Toirtoise SVN, он довольно прост в установке и использовании.

Вот документация , это обязательно!

1
ответ дан 3 December 2019 в 00:48
поделиться
Другие вопросы по тегам:

Похожие вопросы: