Укажите отработанное время

Отработанное время:
Продуктивное время:
Bug 5283 - Не компилируется etercifs 4.5.0 под Mandriva 2010.0   Make a simular bug
Summary: Не компилируется etercifs 4.5.0 под Mandriva 2010.0
Status: CLOSED FIXED
Alias: None
Product: CIFS@Etersoft
Classification: Продукты (Products)
Component: компиляция модуля (show other bugs)
Version: не указана
Hardware: PC All
: P3 major
Target Milestone: ---
Assignee: Pavel Shilovsky
QA Contact: Денис Баранов
URL:
Whiteboard:
Keywords:
Depends on:
Blocks: 5032
  Show dependency treegraph
 
In work:
Reported: 2010-03-16 15:10 MSK by Денис Баранов
Modified: 2010-04-12 15:09 MSD (History)
6 users (show)

See Also:
Заявки RT: 13809, 13677
Связано с:
Дата напоминания:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Денис Баранов 2010-03-16 15:10:31 MSK
Не компилируется модуль etercifs 4.5.0

# /etc/init.d/etercifs build

Building etercifs 4.5.0 for 2.6.31.5-desktop-1mnb Linux kernel with dkms
Setting etercifs version: OK

Error! The module etercifs 4.5.0 is not currently installed.
This module is not currently ACTIVE for kernel 2.6.31.5-desktop-1mnb (i586).

Error! Your kernel source for kernel 2.6.31.5-desktop-1mnb cannot be found at
/lib/modules/2.6.31.5-desktop-1mnb/build or /lib/modules/2.6.31.5-desktop-1mnb/source.
You can use the --kernelsourcedir option to tell DKMS where it's located.

Error! Could not locate etercifs.ko.gz for module etercifs in the DKMS tree.
You must run a dkms build for kernel 2.6.31.5-desktop-1mnb (i586) first.
[root@localhost ~]# uname -a
Linux localhost 2.6.31.5-desktop-1mnb #1 SMP Fri Oct 23 01:46:54 EDT 2009 i686 AMD Athlon(tm) 64 X2 Dual Core Processor 4200+ GNU/Linux
Comment 1 Pavel Shilovsky 2010-03-16 22:48:12 MSK
У виртуальной машины Mandriva 2010 сохранённый статус, и я не могу запустить её в режиме headless. Может кто-нибудь выключить её?
Comment 2 Vitaly Lipatov 2010-03-17 14:40:07 MSK
(In reply to comment #0)
> Error! Your kernel source for kernel 2.6.31.5-desktop-1mnb cannot be found at
> /lib/modules/2.6.31.5-desktop-1mnb/build or
> /lib/modules/2.6.31.5-desktop-1mnb/source.
Ну так видимо надо поставить соотв. пакет в систему, с хидерами ядра, при чём тут Павел?

(In reply to comment #1)
> У виртуальной машины Mandriva 2010 сохранённый
> статус, и я не могу запустить её в режиме
> headless. Может кто-нибудь выключить её?
А что,
# vbox stop UUID
не помогает?
Comment 3 Pavel Shilovsky 2010-03-17 23:36:03 MSK
Ну она не запущена, потому остановить её нельзя. Та же проблема, что и в баге 4931.

Проверил на Mandriva 2010.0.
Было несовпадение версий ядра и хидеров - 2.6.31.5 и 2.6.31.6 соответственно. После установки требуемых хидеров сборка прошла успешно.

Обновил пакет на виртуальной машине до 4.5.0-alt2 и появилась ошибка:
gprintf: command not found

Mandriva сама правит init скрипт после установки. Причём делает это не особо корректно. Чтобы отменить это, следует сделать export DONT_GPRINTIFY в %install секции в spec файле, но не сломает ли это нам остальные сборки? Пока я вручную поправил init скрипт на виртуальной машине. Сам gprintf обнаружить в репозитории не удалось, потому создал символическую ссылку на printf.
Comment 4 Jemoytel Sergey 2010-03-18 18:44:25 MSK
"DKMS: install Completed.
Loading kernel module etercifs 4.5.0... FATAL: Error inserting etercifs (/lib/modules/2.6.31.12-desktop-1mnb/dkms/fs/cifs/etercifs.ko.gz): Invalid module format"

А вот что выдает на Mandriva 2010.0 c ядром 2.26.31.12
Comment 5 Pavel Shilovsky 2010-03-18 18:55:09 MSK
[root@localhost ~]# /etc/init.d/etercifs build

Building etercifs 4.5.0 for 2.6.31.12-desktop-1mnb Linux kernel with dkms
Setting etercifs version: OK

-------- Uninstall Beginning --------
Module:  etercifs
Version: 4.5.0
Kernel:  2.6.31.12-desktop-1mnb (i586)
-------------------------------------

Status: Before uninstall, this module version was ACTIVE on this kernel.

etercifs.ko.gz:
 - Uninstallation
   - Deleting from: /lib/modules/2.6.31.12-desktop-1mnb/dkms/fs/cifs//
 - Original module
   - No original module was found for this module on this kernel.
   - Use the dkms install command to reinstall any previous module version.
depmod.....

DKMS: uninstall Completed.

Error! This module/version has already been built on: 2.6.31.12-desktop-1mnb
Directory: /var/lib/dkms/etercifs/4.5.0/2.6.31.12-desktop-1mnb/i586
already exists.  Use the dkms remove function before trying to build again.

etercifs.ko.gz:
 - Installation
   - Installing to /lib/modules/2.6.31.12-desktop-1mnb/dkms/fs/cifs//

depmod....

DKMS: install Completed.
[root@localhost ~]# /etc/init.d/etercifs start
Loading kernel module etercifs 4.5.0...                                 [ DONE ]

Всё хорошо.

Какое ядро загружено?
Comment 6 Jemoytel Sergey 2010-03-18 19:31:18 MSK
service etercifs build

Building etercifs 4.5.0 for 2.6.31.12-server-1mnb Linux kernel with dkms
Setting etercifs version: OK

-------- Uninstall Beginning --------
Module:  etercifs
Version: 4.5.0
Kernel:  2.6.31.12-server-1mnb (i586)
-------------------------------------

Status: Before uninstall, this module version was ACTIVE on this kernel.

etercifs.ko.gz:
 - Uninstallation
   - Deleting from: /lib/modules/2.6.31.12-server-1mnb/dkms/fs/cifs//
 - Original module
   - No original module was found for this module on this kernel.
   - Use the dkms install command to reinstall any previous module version.
depmod.....

DKMS: uninstall Completed.

Error! This module/version has already been built on: 2.6.31.12-server-1mnb
Directory: /var/lib/dkms/etercifs/4.5.0/2.6.31.12-server-1mnb/i586
already exists.  Use the dkms remove function before trying to build again.

etercifs.ko.gz:
 - Installation
   - Installing to /lib/modules/2.6.31.12-server-1mnb/dkms/fs/cifs//

depmod....

DKMS: install Completed.


# uname -a
Linux sterh 2.6.31.12-server-1mnb #1 SMP Tue Jan 26 04:04:01 EST 2010 i686 Intel(R) Pentium(R) 4 CPU 3.06GHz GNU/Linux

Фантастика, сейчас собралось... Но на вышеуказанном ядре. Ошибка была на 2.6.31.12-desktop-1mnb

Наверное стоит закрыть ошибку...
Comment 7 Pavel Shilovsky 2010-03-18 20:51:28 MSK
Поправил проблему gprintf для Mandriva. 4.5.0-alt3 собрал на ftp.
Comment 8 Vitaly Lipatov 2010-03-19 16:35:58 MSK
(In reply to comment #7)
> Поправил проблему gprintf для Mandriva. 4.5.0-alt3
> собрал на ftp.
> 
Описание сути проблемы и стоило в багу написать.

В сообщении от Четверг 18 марта 2010 piastry@office.etersoft.ru написал(a):
> Проблема в том, что в Mandriva есть специальный скрипт, который парсит init
> скрипты при установке и заменяет в них echo на gprintf. Этот кусок
> переводился некорректно, потому я вынес его в файл functions.sh, который
> этот специальный скрипт не правит. Мне кажется, это лучше, чем добавлять
> export DONT_GPRINTIFY в %install секцию spec файла.
Comment 9 Калюхович Юрий 2010-04-09 16:04:21 MSD
(In reply to comment #7)
> Поправил проблему gprintf для Mandriva. 4.5.0-alt3
> собрал на ftp.
> 

почему alt3 ?
где лежит исправленный пакет? есть ли сборка?
тот что на фтп - etercifs-4.5.0-eter3mdv - содержит в себе эту ошибку
Comment 10 Vitaly Lipatov 2010-04-09 20:58:23 MSD
(In reply to comment #9)
> 
> почему alt3 ?
> где лежит исправленный пакет? есть ли
> сборка?
> тот что на фтп - etercifs-4.5.0-eter3mdv - содержит в
> себе эту ошибку

Ну alt3 - это eter3, вот вроде в changelog вписано:
* Thu Mar 18 2010 Pavel Shilovsky <piastry@altlinux.org> 4.5.0-alt3                                                                                                    
- Fix gprintf problem on Mandriva
Comment 11 Pavel Shilovsky 2010-04-09 21:38:22 MSD
(In reply to comment #9)
> (In reply to comment #7)
> > Поправил проблему gprintf для Mandriva. 4.5.0-alt3
> > собрал на ftp.
> > 
> 
> почему alt3 ?
> где лежит исправленный пакет? есть ли
> сборка?
> тот что на фтп - etercifs-4.5.0-eter3mdv - содержит в
> себе эту ошибку
>

Какую конкретно? Про gprintf или компиляцию? Если первую, то там хидеры были просто не те. По поводу второй: если имеется ввиду "gprintf: command not found
", то надо просто поставить этот самый gprintf. Это уже архитектурная особенность мандривы. Как вариант могу предложить сделать символическую ссылку на printf.
Comment 12 Jemoytel Sergey 2010-04-09 22:53:09 MSD
(In reply to comment #11)
> (In reply to comment #9)
> > (In reply to comment #7)
> > > Поправил проблему gprintf для Mandriva. 4.5.0-alt3
> > > собрал на ftp.
> > > 
> > 
> > почему alt3 ?
> > где лежит исправленный пакет? есть ли
> > сборка?
> > тот что на фтп - etercifs-4.5.0-eter3mdv - содержит в
> > себе эту ошибку
> >
> 
> Какую конкретно? Про gprintf или компиляцию?
> Если первую, то там хидеры были просто не
> те. По поводу второй: если имеется ввиду
> "gprintf: command not found
> ", то надо просто поставить этот самый gprintf.
> Это уже архитектурная особенность
> мандривы. Как вариант могу предложить
> сделать символическую ссылку на printf.
> 


# which printf
/usr/bin/printf

# service etercifs restart
/etc/init.d/etercifs: line 151: gprintf: command not found
                                                                        [ DONE ]
/etc/init.d/etercifs: line 230: gprintf: command not found
                                                                        [ DONE ]
/etc/init.d/etercifs: line 192: gprintf: command not found
                                                                        [ DONE ]
вот такая особенность при установленном gprintf
Comment 13 Vitaly Lipatov 2010-04-10 03:59:48 MSD
(In reply to comment #11)
...
> те. По поводу второй: если имеется ввиду
> "gprintf: command not found
> ", то надо просто поставить этот самый gprintf.
> Это уже архитектурная особенность
> мандривы. Как вариант могу предложить
> сделать символическую ссылку на printf.
Не понимаю, это только наш init-скрипт содержит замены на gprintf,
что, больше ни один скрипт в /etc/init.d/ не содержит gprintf?

Надо бы немного покопать, кто всё же меняет. 
В собранном пакете никаких gprintf нет, то есть действенность
"export DONT_GPRINTIFY в %install секцию spec файла."
я понять не могу.
Comment 14 Pavel Shilovsky 2010-04-10 09:46:43 MSD
Это по поводу кто меняет:

В сообщении от Четверг 18 марта 2010
piastry@office.etersoft.ru написал(a):
> Проблема в том, что в Mandriva есть специальный скрипт, который парсит init
> скрипты при установке и заменяет в них echo на gprintf. Этот кусок
> переводился некорректно, потому я вынес его в файл functions.sh, который
> этот специальный скрипт не правит. Мне кажется, это лучше, чем добавлять
> export DONT_GPRINTIFY в %install секцию spec файла.

Говорю же, надо или поставить этот самый gprintf в систему, или сделать
# ln -s /usr/bin/printf /usr/bin/gprintf
Comment 15 Vitaly Lipatov 2010-04-10 11:49:31 MSD
(In reply to comment #14)
...
> Говорю же, надо или поставить этот самый
> gprintf в систему, или сделать
> # ln -s /usr/bin/printf /usr/bin/gprintf

Функция gprintf (printf с gettext) находится в
/etc/init.d/functions 
Видимо, его надо включать при наличии. 

Comment 16 Pavel Shilovsky 2010-04-10 14:32:44 MSD
Сделал в 4.5.0-alt5. Выложил на ftp.
Comment 17 Калюхович Юрий 2010-04-12 13:36:13 MSD
(In reply to comment #16)
> Сделал в 4.5.0-alt5. Выложил на ftp.
> 

клиентам отписал.
Comment 18 Vitaly Lipatov 2010-04-12 15:09:19 MSD
Всё давно компилируется.
Проблему с gprintf исправили, закрываю.