Форум русскоязычного сообщества Ubuntu


Следите за новостями русскоязычного сообщества Ubuntu в Twitter-ленте @ubuntu_ru_loco

Автор Тема: ubuntu 9.10 + microdc2  (Прочитано 3942 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн MAKAPOH

  • Автор темы
  • Любитель
  • *
  • Сообщений: 74
    • Просмотр профиля
ubuntu 9.10 + microdc2
« : 05 Декабря 2009, 06:18:13 »
не компиллится microdc2 на ubuntu server 9.10, на 9.04 компиллировалось отлично
(Нажмите, чтобы показать/скрыть)

поиск в гугле вывел на то что нужно установить libxml2-dev, он установлен но все равно не компиллирует (

Оффлайн ElfW

  • Новичок
  • *
  • Сообщений: 1
    • Просмотр профиля
Re: ubuntu 9.10 + microdc2
« Ответ #1 : 17 Декабря 2009, 00:28:13 »
Ларчик просто открывался...
Для начала необходимо apt-get install libxml2-devА дальше, а одном из багтрекеров Генты опубликовали вот такой патч:

diff -ur microdc2-0.15.6.old/configure microdc2-0.15.6/configure
--- microdc2-0.15.6.old/configure       2006-12-24 13:45:07.000000000 -0500
+++ microdc2-0.15.6/configure   2009-09-01 21:10:50.000000000 -0400
@@ -21508,7 +21508,7 @@
 _ACEOF
 
   fi
-  if test $LIBXML2_VERSION -ge 2616; then
+  if test $LIBXML2_VERSION > 2616; then
     cat >>confdefs.h <<\_ACEOF
 #define HAVE_LIBXML2 1
 _ACEOF

Вся проблема была в неправильном определении скриптом версии libxml2.
Патчимся, делаем:
LIBS=/usr/lib/libncurses.a ./configure
make
make install

и наслаждаемся жизнью!

Оффлайн Rico-X

  • Новичок
  • *
  • Сообщений: 3
    • Просмотр профиля
Re: ubuntu 9.10 + microdc2
« Ответ #2 : 29 Июня 2010, 15:46:27 »
Прошу прощения за тупой вопрос, но как правильно наложить патч. На сорцах делаю patch -i {фаил с патчем}. После чего получаю patching file configure. Делаю LIBS=/usr/lib/libncurses.a ./configure
Далее make и
/home/rico-x/work/microdc2-0.15.6/src/command.c:867: undefined reference to `main_to_utf8_string'
/home/rico-x/work/microdc2-0.15.6/src/command.c:862: undefined reference to `main_to_utf8_string'
hub.o: In function `prepare_chat_string_for_display':
/home/rico-x/work/microdc2-0.15.6/src/hub.c:422: undefined reference to `try_utf8_to_main_string'
filelist-in.o: In function `parse_main':
/home/rico-x/work/microdc2-0.15.6/src/filelist-in.c:363: undefined reference to `filelist_xml_open'
/home/rico-x/work/microdc2-0.15.6/src/filelist-in.c:365: undefined reference to `filelist_bzxml_open'
user.o: In function `user_handle_command':
/home/rico-x/work/microdc2-0.15.6/src/user.c:1056: undefined reference to `utf8_to_main_string'
collect2: ld returned 1 exit status
make[3]: *** [microdc2] Ошибка 1
make[3]: Выход из каталога `/home/rico-x/work/microdc2-0.15.6/src'
make[2]: *** [all-recursive] Ошибка 1
make[2]: Выход из каталога `/home/rico-x/work/microdc2-0.15.6/src'
make[1]: *** [all-recursive] Ошибка 1
make[1]: Выход из каталога `/home/rico-x/work/microdc2-0.15.6'
make: *** [all] Ошибка 2
Не могу понять что не так.
З.Ы. Ubuntu 10.04 Серверная

Гарри Кашпировский

  • Гость
Re: ubuntu 9.10 + microdc2
« Ответ #3 : 19 Августа 2010, 01:47:48 »
Значит не пропатчился файл, я поправил это руками без применения программы патч, ибо всего пару символов поменять.
Кстати там не 21508, а 21511 строка.
« Последнее редактирование: 19 Августа 2010, 01:51:45 от KT315 »

Гарри Кашпировский

  • Гость
Re: ubuntu 9.10 + microdc2
« Ответ #4 : 04 Сентября 2010, 14:05:22 »
Значит не пропатчился файл, я поправил это руками без применения программы патч, ибо всего пару символов поменять.
PS Собрал для себя пакетик, кому интересно - пробуйте.
Ссылко ниже
« Последнее редактирование: 26 Июля 2011, 23:23:29 от KT315 »

Оффлайн Rico-X

  • Новичок
  • *
  • Сообщений: 3
    • Просмотр профиля
Re: ubuntu 9.10 + microdc2
« Ответ #5 : 30 Сентября 2010, 14:28:58 »
Спасибо все завелось.

Оффлайн Ve0

  • Активист
  • *
  • Сообщений: 262
    • Просмотр профиля
    • bUbuntu.spb.ru
Re: ubuntu 9.10 + microdc2
« Ответ #6 : 19 Июня 2011, 15:54:51 »
не получается собрать на Ubuntu 10.04 x64

патчик не помог... ((

Пользователь решил продолжить мысль 19 Июня 2011, 15:59:34:
прошу прощения... наврал.... патчик помог! Спасибо)))
« Последнее редактирование: 19 Июня 2011, 15:59:34 от Ve0 »
bUbuntu - In a world without walls who needs Windows?..

Гарри Кашпировский

  • Гость
Re: ubuntu 9.10 + microdc2
« Ответ #7 : 26 Июля 2011, 23:22:25 »
Обновил пакеты для 10.04:
i386 - microdc2_0.15.6-1_i386.deb
amd64 - microdc2_0.15.6-1_amd64.deb
Запилен init, запускающий сабж как демон, требует screen, включен в рекомендуемые зависимости.
Управление демоном:
service microdc2 start|stop|restart
(Нажмите, чтобы показать/скрыть)
« Последнее редактирование: 26 Июля 2011, 23:29:45 от KT315 »

Оффлайн Ve0

  • Активист
  • *
  • Сообщений: 262
    • Просмотр профиля
    • bUbuntu.spb.ru
Re: ubuntu 9.10 + microdc2
« Ответ #8 : 09 Августа 2011, 14:36:48 »
Обновил пакеты для 10.04:
i386 - microdc2_0.15.6-1_i386.deb
amd64 - microdc2_0.15.6-1_amd64.deb
Запилен init, запускающий сабж как демон, требует screen, включен в рекомендуемые зависимости.
Управление демоном:
service microdc2 start|stop|restart
(Нажмите, чтобы показать/скрыть)

Спасибо огромное за сборки.

У меня вот вопросик. А никто не сталкивался с такой темой, что когда прописываешь путь к лог файлу в конфиге, то microdc2 просто не запускается?

set logfile /home/veosrv/.microdc2/log
« Последнее редактирование: 09 Августа 2011, 14:38:46 от Ve0 »
bUbuntu - In a world without walls who needs Windows?..

Оффлайн Ve0

  • Активист
  • *
  • Сообщений: 262
    • Просмотр профиля
    • bUbuntu.spb.ru
Re: ubuntu 9.10 + microdc2
« Ответ #9 : 11 Августа 2011, 14:38:16 »
Нашел какое то решение.

http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=609746

там есть 2 патчика:
libxml2-configure.patch
--- microdc2-0.15.6.old/configure 2008-10-18 04:11:32.000000000 +0300
+++ microdc2-0.15.6/configure 2008-10-18 04:12:42.000000000 +0300
@@ -21508,7 +21508,7 @@
 _ACEOF
 
   fi
-  if test $LIBXML2_VERSION -ge 2616; then
+#  if test $LIBXML2_VERSION -ge 2616; then
     cat >>confdefs.h <<\_ACEOF
 #define HAVE_LIBXML2 1
 _ACEOF
@@ -21519,10 +21519,10 @@
 
 #    LIBS="$LIBS $LIBXML2_LIBS"
 #    CFLAGS="$CFLAGS $LIBXML2_CFLAGS"
-  else
-    { echo "$as_me:$LINENO: WARNING: XML libxml2 library version 2.6.16 or later is required to support XML filelists" >&5
-echo "$as_me: WARNING: XML libxml2 library version 2.6.16 or later is required to support XML filelists" >&2;}
-  fi
+#  else
+#    { echo "$as_me:$LINENO: WARNING: XML libxml2 library version 2.6.16 or later is required to support XML filelists" >&5
+#echo "$as_me: WARNING: XML libxml2 library version 2.6.16 or later is required to support XML filelists" >&2;}
+#  fi
 fi
 
 # Checks for header files

logfile_segfault.patch
--- a/src/screen.c      Fri Jan 25 18:46:56 2008 +0200
+++ b/src/screen.c      Sat Jan 26 01:28:53 2008 +0200
@@ -228,10 +228,29 @@ static void
 static void
 flag_vputf(DCDisplayFlag flag, const char *format, va_list args)
 {
-    //va_list args2;
+    if (log_fh != NULL && log_flags & flag) {
+        char c_time[1024];
+        time_t now = time(NULL);
+        struct tm _tm = {0};
+        va_list args_dup;
 
-    //va_copy(args2, args);
+        if (NULL != localtime_r(&now, &_tm) && 0 != strftime(c_time, 1023, "%d.%m.%Y %H:%M:%S", &_tm)) {
+            fprintf(log_fh, "%s ", c_time);
+        }
 
+        // args would become undefined after xvasprintf() call, so make a copy
+        // of args to use it later below.
+        va_copy(args_dup, args);
+        char* msg = xvasprintf(format, args_dup);
+        va_end(args_dup);
+
+        char* log_msg = main_to_log_string(msg);
+        free(msg);
+        fprintf(log_fh, log_msg);
+        free(log_msg);
+        fflush(log_fh);
+    }
+   
     if (display_flags & flag) {
         if (screen_state == SCREEN_SUSPENDED) {
             ptrv_append(suspend_msgs, xvasprintf(format, args));
@@ -243,21 +262,6 @@ flag_vputf(DCDisplayFlag flag, const cha
             vprintf(format, args);
             fflush(stdout);
         }
-    }
-    if (log_fh != NULL && log_flags & flag) {
-        char c_time[1024];
-        time_t now = time(NULL);
-        struct tm _tm = {0};
-        if (NULL != localtime_r(&now, &_tm) && 0 != strftime(c_time, 1023, "%d.%m.%Y %H:%M:%S", &_tm)) {
-            fprintf(log_fh, "%s ", c_time);
-        }
-        char* msg = xvasprintf(format, args);
-        //va_end(args2);
-        char* log_msg = main_to_log_string(msg);
-        free(msg);
-        fprintf(log_fh, log_msg);
-        free(log_msg);
-        fflush(log_fh);
     }
 }

никто не пробовал их применить?

2KT315, если не сложно, можешь собрать пакеты с этими патчиками?
bUbuntu - In a world without walls who needs Windows?..

Гарри Кашпировский

  • Гость
Re: ubuntu 9.10 + microdc2
« Ответ #10 : 12 Августа 2011, 22:13:47 »
По первому патчу, см ответ №1. Решение более элегантное, чем просто выпиливаение проверки libxml.
По второму патчу - хз, попробуй, потестим, репазитарий в подписи, второй патч применил.
« Последнее редактирование: 12 Августа 2011, 22:17:00 от KT315 »

Оффлайн Ve0

  • Активист
  • *
  • Сообщений: 262
    • Просмотр профиля
    • bUbuntu.spb.ru
Re: ubuntu 9.10 + microdc2
« Ответ #11 : 15 Августа 2011, 10:58:59 »
KT315 мега спасибо!

у меня еще вопросик... не сталкивался с такой темой, что когда microdc2 работает, и ты добавляешь в шару какой либо файлик то microdc2 отваливается вообще? приходится ее перезапускать...

Супер! Лог заработал, microdc2 не вываливается больше при установки файла лога.
« Последнее редактирование: 15 Августа 2011, 11:05:25 от Ve0 »
bUbuntu - In a world without walls who needs Windows?..

 

Страница сгенерирована за 0.078 секунд. Запросов: 25.