ALT Linux kernel packages development
 help / color / mirror / Atom feed
* [d-kernel] Сборка модуля drbd
@ 2008-09-07 14:42 Eugene Prokopiev
  2008-09-07 14:47 ` Михаил Якушин
  0 siblings, 1 reply; 17+ messages in thread
From: Eugene Prokopiev @ 2008-09-07 14:42 UTC (permalink / raw)
  To: devel-kernel

Скажите, планирует ли кто-нибудь собрать drbd8 для branch/4.0 или мне
можно начинать заниматься этим самостоятельно?

Уже, собственно, начал и для начала прочел только что опубликованную
инструкцию по сборке модулей ядра. Из рассылки также понял, что
кошерно использовать пакет kernel-build-tools вместо репозитария
kernel-build-scripts, однако описания нет, в пакете есть проблемы, а
главное:

$ rpm -ql kernel-build-tools
/usr/bin/upgrade_module_specs
/usr/share/doc/kernel-build-tools-0.11
/usr/share/doc/kernel-build-tools-0.11/kernel-policy.txt
/usr/share/doc/kernel-build-tools-0.11/kernel-spec-example.txt

Т.е. описанного скрипта buildmodules не наблюдается :( Поэтому делаем:

$ git clone git://git.altlinux.org/people/silicium/packages/kernel-build-scripts.git
$ cd kernel-build-scripts/
$ git clone git://git.altlinux.org/people/silicium/packages/kernel-modules.git
modules
$ cd modules/
$ git-branch -a | grep drbd
  origin/template/drbd/alt-linux-4.0
  origin/template/drbd/sisyphus
  origin/template/drbd8/sisyphus

Ага, похожие шаблоны имеются. Попробуем для начала собрать модуль со
старым шаблоном из старого kernel-source-drbd:

$ cd ..
$ ./buildmodules --hasher --hsh-workdir=/home/enp/hasher -k std-smp drbd
* Kernel: 2.6.18-std-smp-alt12.M40.3
* Package 1 of 1: kernel-modules-drbd-std-smp: FAILED
Finished: 0 ok, 1 failed, 0 skipped

Я что-то сделал неправильно? Можно получить более внятную диагностику?

-- 
С уважением,
Прокопьев Евгений

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [d-kernel] Сборка модуля drbd
  2008-09-07 14:42 [d-kernel] Сборка модуля drbd Eugene Prokopiev
@ 2008-09-07 14:47 ` Михаил Якушин
  2008-09-07 16:41   ` Eugene Prokopiev
  0 siblings, 1 reply; 17+ messages in thread
From: Михаил Якушин @ 2008-09-07 14:47 UTC (permalink / raw)
  To: ALT Linux kernel packages development

Eugene Prokopiev wrote:

> Я что-то сделал неправильно? Можно получить более внятную диагностику?
> 

можно,
"Логи сборки складываются в out/logs/kernel-modules-module-flavour.log."


^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [d-kernel] Сборка модуля drbd
  2008-09-07 14:47 ` Михаил Якушин
@ 2008-09-07 16:41   ` Eugene Prokopiev
  2008-09-07 16:45     ` Михаил Якушин
  2008-09-07 18:10     ` Konstantin A. Lepikhov
  0 siblings, 2 replies; 17+ messages in thread
From: Eugene Prokopiev @ 2008-09-07 16:41 UTC (permalink / raw)
  To: ALT Linux kernel packages development

07.09.08, Михаил Якушин<silicium@> написал(а):
> Eugene Prokopiev wrote:
>
>
> > Я что-то сделал неправильно? Можно получить более внятную диагностику?

Cпасибо, не дочитал. Я просто забыл указать -d

А теперь новая проблема: в официальном тарболле drbd присутствует файл
drbd/drbd_buildtag.c, в git его нет. По содержимому файла понятно, что
он каким-то магическим образом генерируется. Как это происходит?

Судя по http://git.altlinux.org/people/lakostis/packages/drbd-tools.git
с этой проблемой должен был столкнуться lakostis, но в спеке решения
не зафиксировано - уже готовый drbd/drbd_buildtag.c лежит в бранче
master и попадает в патч. Ау, lakostis, как ты генерировал этот файл?

-- 
С уважением,
Прокопьев Евгений

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [d-kernel] Сборка модуля drbd
  2008-09-07 16:41   ` Eugene Prokopiev
@ 2008-09-07 16:45     ` Михаил Якушин
  2008-09-07 17:09       ` Eugene Prokopiev
  2008-09-07 18:10     ` Konstantin A. Lepikhov
  1 sibling, 1 reply; 17+ messages in thread
From: Михаил Якушин @ 2008-09-07 16:45 UTC (permalink / raw)
  To: ALT Linux kernel packages development

Eugene Prokopiev wrote:
> 07.09.08, Михаил Якушин<silicium@> написал(а):
>> Eugene Prokopiev wrote:
>>
>>
>>> Я что-то сделал неправильно? Можно получить более внятную диагностику?
> 
> Cпасибо, не дочитал. Я просто забыл указать -d
> 
> А теперь новая проблема: в официальном тарболле drbd присутствует файл
> drbd/drbd_buildtag.c, в git его нет. По содержимому файла понятно, что
> он каким-то магическим образом генерируется. Как это происходит?
> 
> Судя по http://git.altlinux.org/people/lakostis/packages/drbd-tools.git
> с этой проблемой должен был столкнуться lakostis, но в спеке решения
> не зафиксировано - уже готовый drbd/drbd_buildtag.c лежит в бранче
> master и попадает в патч. Ау, lakostis, как ты генерировал этот файл?
> 
Этот файл вроде бы генерился толи скриптом идущем в составе tar-ballа 
толи деланием специального make-targetа


^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [d-kernel] Сборка модуля drbd
  2008-09-07 16:45     ` Михаил Якушин
@ 2008-09-07 17:09       ` Eugene Prokopiev
  2008-09-07 17:22         ` Михаил Якушин
  0 siblings, 1 reply; 17+ messages in thread
From: Eugene Prokopiev @ 2008-09-07 17:09 UTC (permalink / raw)
  To: ALT Linux kernel packages development

> > А теперь новая проблема: в официальном тарболле drbd присутствует файл
> > drbd/drbd_buildtag.c, в git его нет. По содержимому файла понятно, что
> > он каким-то магическим образом генерируется. Как это происходит?
> >
> > Судя по
> http://git.altlinux.org/people/lakostis/packages/drbd-tools.git
> > с этой проблемой должен был столкнуться lakostis, но в спеке решения
> > не зафиксировано - уже готовый drbd/drbd_buildtag.c лежит в бранче
> > master и попадает в патч. Ау, lakostis, как ты генерировал этот файл?
> >
> >
>  Этот файл вроде бы генерился толи скриптом идущем в составе tar-ballа толи
> деланием специального make-targetа

в Makefile была цель, которую я было заподозрил, но она, насколько я
понимаю, уже с готовым drbd_buildtag.c что-то делает:

# XXX this is newly created whenever the toplevel makefile does something.
# however it is NOT updated when you just do a make in user/ or drbd/ ...
#
# update of drbd_buildtag.c is forced:
.PHONY: drbd/drbd_buildtag.c
drbd/drbd_buildtag.c:
    $(MAKE) -C drbd drbd_buildtag.c

Других подозрительных мест я, перерыв весь тарболл, не нашел :(

-- 
С уважением,
Прокопьев Евгений

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [d-kernel] Сборка модуля drbd
  2008-09-07 17:09       ` Eugene Prokopiev
@ 2008-09-07 17:22         ` Михаил Якушин
  2008-09-07 17:41           ` Eugene Prokopiev
  0 siblings, 1 reply; 17+ messages in thread
From: Михаил Якушин @ 2008-09-07 17:22 UTC (permalink / raw)
  To: ALT Linux kernel packages development

Eugene Prokopiev wrote:
>>> А теперь новая проблема: в официальном тарболле drbd присутствует файл
>>> drbd/drbd_buildtag.c, в git его нет. По содержимому файла понятно, что
>>> он каким-то магическим образом генерируется. Как это происходит?
>>>
>>> Судя по
>> http://git.altlinux.org/people/lakostis/packages/drbd-tools.git
>>> с этой проблемой должен был столкнуться lakostis, но в спеке решения
>>> не зафиксировано - уже готовый drbd/drbd_buildtag.c лежит в бранче
>>> master и попадает в патч. Ау, lakostis, как ты генерировал этот файл?
>>>
>>>
>>  Этот файл вроде бы генерился толи скриптом идущем в составе tar-ballа толи
>> деланием специального make-targetа
> 
> в Makefile была цель, которую я было заподозрил, но она, насколько я
> понимаю, уже с готовым drbd_buildtag.c что-то делает:
> 
> # XXX this is newly created whenever the toplevel makefile does something.
> # however it is NOT updated when you just do a make in user/ or drbd/ ...
> #
> # update of drbd_buildtag.c is forced:
> .PHONY: drbd/drbd_buildtag.c
> drbd/drbd_buildtag.c:
>     $(MAKE) -C drbd drbd_buildtag.c
> 
> Других подозрительных мест я, перерыв весь тарболл, не нашел :(
> 
в drbd-8.2 в drbd/Makefile:
   drbd_buildtag.c:
         @is_tarball=`test -e ../.git/. && echo false || echo true`;\
         set -e; exec > $@.new; 
          \
         echo -e "/* automatically generated. DO NOT EDIT. */"; 
          \
         echo -e "const char * drbd_buildtag(void)\n{"; 
          \
         if $$is_tarball; then 
          \
           if ! test -e $@ ; then 
          \
                 echo >&2 "your DRBD source tree is broken. unpack 
again.";      \
                 exit 1; 
          \
           fi; 
          \
           grep return $@ ; 
          \
         else 
          \
           GITHEAD=$$(git-rev-parse HEAD); 
          \
           GITDIFF=$$(cd .. && git-diff --name-only HEAD | tr -s '\t\n' 
'  ' |   \
                 sed -e 's/^/ /;s/ *$$//'); 
          \
           echo -e "\treturn \"GIT-hash: $$GITHEAD$$GITDIFF\""; 
          \
         fi ; 
          \
         echo -e "\t\t\" build by $$USER@$$HOSTNAME, `date "+%F 
%T"`\";\n}";     \
         mv --force $@.new $@


^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [d-kernel] Сборка модуля drbd
  2008-09-07 17:22         ` Михаил Якушин
@ 2008-09-07 17:41           ` Eugene Prokopiev
  2008-09-07 17:42             ` Михаил Якушин
  0 siblings, 1 reply; 17+ messages in thread
From: Eugene Prokopiev @ 2008-09-07 17:41 UTC (permalink / raw)
  To: ALT Linux kernel packages development

>  в drbd-8.2 в drbd/Makefile:
>   drbd_buildtag.c:
...
>           GITHEAD=$$(git-rev-parse HEAD);         \
>           GITDIFF=$$(cd .. && git-diff --name-only HEAD | tr -s '\t\n' '  '
> |   \
>                 sed -e 's/^/ /;s/ *$$//');         \
>           echo -e "\treturn \"GIT-hash: $$GITHEAD$$GITDIFF\"";         \
>         fi ;         \
>         echo -e "\t\t\" build by $$USER@$$HOSTNAME, `date "+%F %T"`\";\n}";
...


ыыы .... и как это опакетить? Я правильно понимаю, что для работы ему
нужен .git, который не попадет в тарболл, сгенерированный с помощью
gear? И поэтому я должен буду после мержа сам вызывать этот make
drbd_buildtag.c и прикладывать патч?

-- 
С уважением,
Прокопьев Евгений

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [d-kernel] Сборка модуля drbd
  2008-09-07 17:41           ` Eugene Prokopiev
@ 2008-09-07 17:42             ` Михаил Якушин
  2008-09-07 17:47               ` Eugene Prokopiev
  0 siblings, 1 reply; 17+ messages in thread
From: Михаил Якушин @ 2008-09-07 17:42 UTC (permalink / raw)
  To: ALT Linux kernel packages development

Eugene Prokopiev wrote:
>>  в drbd-8.2 в drbd/Makefile:
>>   drbd_buildtag.c:
> ...
>>           GITHEAD=$$(git-rev-parse HEAD);         \
>>           GITDIFF=$$(cd .. && git-diff --name-only HEAD | tr -s '\t\n' '  '
>> |   \
>>                 sed -e 's/^/ /;s/ *$$//');         \
>>           echo -e "\treturn \"GIT-hash: $$GITHEAD$$GITDIFF\"";         \
>>         fi ;         \
>>         echo -e "\t\t\" build by $$USER@$$HOSTNAME, `date "+%F %T"`\";\n}";
> ...
> 
> 
> ыыы .... и как это опакетить? Я правильно понимаю, что для работы ему
> нужен .git, который не попадет в тарболл, сгенерированный с помощью
> gear? И поэтому я должен буду после мержа сам вызывать этот make
> drbd_buildtag.c и прикладывать патч?
> 
Да, видимо. Или как нибудь заставить это делать gear.


^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [d-kernel] Сборка модуля drbd
  2008-09-07 17:42             ` Михаил Якушин
@ 2008-09-07 17:47               ` Eugene Prokopiev
  2008-09-07 18:14                 ` Konstantin A. Lepikhov
  0 siblings, 1 reply; 17+ messages in thread
From: Eugene Prokopiev @ 2008-09-07 17:47 UTC (permalink / raw)
  To: ALT Linux kernel packages development

07.09.08, Михаил Якушин<silicium@> написал(а):
> Eugene Prokopiev wrote:
>
> >
> > >  в drbd-8.2 в drbd/Makefile:
> > >  drbd_buildtag.c:
> > >
> > ...
> >
> > >          GITHEAD=$$(git-rev-parse HEAD);         \
> > >          GITDIFF=$$(cd .. && git-diff --name-only HEAD | tr -s '\t\n' '
> '
> > > |   \
> > >                sed -e 's/^/ /;s/ *$$//');         \
> > >          echo -e "\treturn \"GIT-hash: $$GITHEAD$$GITDIFF\"";         \
> > >        fi ;         \
> > >        echo -e "\t\t\" build by $$USER@$$HOSTNAME, `date "+%F
> %T"`\";\n}";
> > >
> > ...
> >
> >
> > ыыы .... и как это опакетить? Я правильно понимаю, что для работы ему
> > нужен .git, который не попадет в тарболл, сгенерированный с помощью
> > gear? И поэтому я должен буду после мержа сам вызывать этот make
> > drbd_buildtag.c и прикладывать патч?
> >
> >
>  Да, видимо. Или как нибудь заставить это делать gear.

может у кого-нибудь из присутствующих есть идеи, как заставить?

-- 
С уважением,
Прокопьев Евгений

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [d-kernel] Сборка модуля drbd
  2008-09-07 16:41   ` Eugene Prokopiev
  2008-09-07 16:45     ` Михаил Якушин
@ 2008-09-07 18:10     ` Konstantin A. Lepikhov
  2008-09-07 18:29       ` Eugene Prokopiev
  1 sibling, 1 reply; 17+ messages in thread
From: Konstantin A. Lepikhov @ 2008-09-07 18:10 UTC (permalink / raw)
  To: ALT Linux kernel packages development

Hi Eugene!

Sunday 07, at 08:41:27 PM you wrote:

> 07.09.08, Михаил Якушин<silicium@> написал(а):
> > Eugene Prokopiev wrote:
> >
> >
> > > Я что-то сделал неправильно? Можно получить более внятную диагностику?
> 
> Cпасибо, не дочитал. Я просто забыл указать -d
> 
> А теперь новая проблема: в официальном тарболле drbd присутствует файл
> drbd/drbd_buildtag.c, в git его нет. По содержимому файла понятно, что
> он каким-то магическим образом генерируется. Как это происходит?
Вопрос - а зачем вам git вместо официального тарболла?

> 
> Судя по http://git.altlinux.org/people/lakostis/packages/drbd-tools.git
> с этой проблемой должен был столкнуться lakostis, но в спеке решения
> не зафиксировано - уже готовый drbd/drbd_buildtag.c лежит в бранче
> master и попадает в патч. Ау, lakostis, как ты генерировал этот файл?
я брал готовый тарболл, о чем и было недвухсмысленно сказано в changelog.

-- 
WBR et al.


^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [d-kernel] Сборка модуля drbd
  2008-09-07 17:47               ` Eugene Prokopiev
@ 2008-09-07 18:14                 ` Konstantin A. Lepikhov
  0 siblings, 0 replies; 17+ messages in thread
From: Konstantin A. Lepikhov @ 2008-09-07 18:14 UTC (permalink / raw)
  To: ALT Linux kernel packages development

Hi Eugene!

Sunday 07, at 09:47:10 PM you wrote:

> 07.09.08, Михаил Якушин<silicium@> написал(а):
> > Eugene Prokopiev wrote:
> >
> > >
> > > >  в drbd-8.2 в drbd/Makefile:
> > > >  drbd_buildtag.c:
> > > >
> > > ...
> > >
> > > >          GITHEAD=$$(git-rev-parse HEAD);         \
> > > >          GITDIFF=$$(cd .. && git-diff --name-only HEAD | tr -s '\t\n' '
> > '
> > > > |   \
> > > >                sed -e 's/^/ /;s/ *$$//');         \
> > > >          echo -e "\treturn \"GIT-hash: $$GITHEAD$$GITDIFF\"";         \
> > > >        fi ;         \
> > > >        echo -e "\t\t\" build by $$USER@$$HOSTNAME, `date "+%F
> > %T"`\";\n}";
> > > >
> > > ...
> > >
> > >
> > > ыыы .... и как это опакетить? Я правильно понимаю, что для работы ему
> > > нужен .git, который не попадет в тарболл, сгенерированный с помощью
> > > gear? И поэтому я должен буду после мержа сам вызывать этот make
> > > drbd_buildtag.c и прикладывать патч?
> > >
> > >
> >  Да, видимо. Или как нибудь заставить это делать gear.
> 
> может у кого-нибудь из присутствующих есть идеи, как заставить?
доки рулят - см. debian/changelog:

    - debian/rules: don't use top-level makefile, to prevent re-creation
      of drbd_buildtag.c

см. top level Makefile:

...
# XXX this is newly created whenever the toplevel makefile does something.
# however it is NOT updated when you just do a make in user/ or drbd/ ...

drbd8.x у меня под рукой нет, но подозреваю, что нужно сделать что-то
аналогичное.

-- 
WBR et al.


^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [d-kernel] Сборка модуля drbd
  2008-09-07 18:10     ` Konstantin A. Lepikhov
@ 2008-09-07 18:29       ` Eugene Prokopiev
  2008-09-07 19:20         ` Konstantin A. Lepikhov
  0 siblings, 1 reply; 17+ messages in thread
From: Eugene Prokopiev @ 2008-09-07 18:29 UTC (permalink / raw)
  To: ALT Linux kernel packages development

07.09.08, Konstantin A. Lepikhov<lakostis@> написал(а):
> Hi Eugene!
>
>
>  Sunday 07, at 08:41:27 PM you wrote:
>
>  > 07.09.08, Михаил Якушин<silicium@> написал(а):
>  > > Eugene Prokopiev wrote:
>  > >
>  > >
>  > > > Я что-то сделал неправильно? Можно получить более внятную диагностику?
>  >
>  > Cпасибо, не дочитал. Я просто забыл указать -d
>  >
>  > А теперь новая проблема: в официальном тарболле drbd присутствует файл
>  > drbd/drbd_buildtag.c, в git его нет. По содержимому файла понятно, что
>  > он каким-то магическим образом генерируется. Как это происходит?
>
> Вопрос - а зачем вам git вместо официального тарболла?

да вот я и сам уже думаю о этом :)

>  > Судя по http://git.altlinux.org/people/lakostis/packages/drbd-tools.git
>  > с этой проблемой должен был столкнуться lakostis, но в спеке решения
>  > не зафиксировано - уже готовый drbd/drbd_buildtag.c лежит в бранче
>  > master и попадает в патч. Ау, lakostis, как ты генерировал этот файл?
>
> я брал готовый тарболл, о чем и было недвухсмысленно сказано в changelog.

use GIT fe0c05d shapshot ? ;) Я понял это иначе, возможно находясь под
впечатлением http://git.altlinux.org/people/lakostis/packages/drbd-tools.git
- если из апстримного git ничего не фетчилось, то откуда тогда в
drbd-tools.git апстримные коммиты?

-- 
С уважением,
Прокопьев Евгений

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [d-kernel] Сборка модуля drbd
  2008-09-07 18:29       ` Eugene Prokopiev
@ 2008-09-07 19:20         ` Konstantin A. Lepikhov
  2008-09-08  7:03           ` Eugene Prokopiev
  0 siblings, 1 reply; 17+ messages in thread
From: Konstantin A. Lepikhov @ 2008-09-07 19:20 UTC (permalink / raw)
  To: ALT Linux kernel packages development

Hi Eugene!

Sunday 07, at 10:29:48 PM you wrote:

<skip>
> > я брал готовый тарболл, о чем и было недвухсмысленно сказано в changelog.
> 
> use GIT fe0c05d shapshot ? ;) Я понял это иначе, возможно находясь под
> впечатлением http://git.altlinux.org/people/lakostis/packages/drbd-tools.git
> - если из апстримного git ничего не фетчилось, то откуда тогда в
> drbd-tools.git апстримные коммиты?
там фейковый мерж. Поэтому коммиты есть, а сорцы немного другие, готовые
для сборки :) 

-- 
WBR et al.


^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [d-kernel] Сборка модуля drbd
  2008-09-07 19:20         ` Konstantin A. Lepikhov
@ 2008-09-08  7:03           ` Eugene Prokopiev
  2008-09-08  7:43             ` Konstantin A. Lepikhov
  0 siblings, 1 reply; 17+ messages in thread
From: Eugene Prokopiev @ 2008-09-08  7:03 UTC (permalink / raw)
  To: ALT Linux kernel packages development

Совсем дурацкая проблема - не могу собрать бенчмарки (хотя нужно ли их
собирать?):

cc -pthread -lm -o io-latency-test io-latency-test.c
/tmp/.private/enp/cc6mXiyl.o: In function `main':
io-latency-test.c:(.text+0x93d): undefined reference to `sqrt'
collect2: выполнение ld завершилось с кодом возврата 1
make: *** [io-latency-test] Ошибка 1

в этом же самом окружении:

$ cat test.c
#include <math.h>
#include <stdio.h>

int main()
{
        printf("%f\n",sqrt(2));
        return 0;
}

$ cc -pthread -lm -o test test.c
$ ./test
1.414214
$ ldd test
        linux-gate.so.1 =>  (0xffffe000)
        libc.so.6 => /lib/libc.so.6 (0xb7e69000)
        /lib/ld-linux.so.2 (0x80000000)


-- 
С уважением,
Прокопьев Евгений

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [d-kernel] Сборка модуля drbd
  2008-09-08  7:03           ` Eugene Prokopiev
@ 2008-09-08  7:43             ` Konstantin A. Lepikhov
  2008-09-08  8:28               ` Eugene Prokopiev
  0 siblings, 1 reply; 17+ messages in thread
From: Konstantin A. Lepikhov @ 2008-09-08  7:43 UTC (permalink / raw)
  To: ALT Linux kernel packages development

Hi Eugene!

Monday 08, at 11:03:59 AM you wrote:

> Совсем дурацкая проблема - не могу собрать бенчмарки (хотя нужно ли их
> собирать?):
> 
> cc -pthread -lm -o io-latency-test io-latency-test.c
> /tmp/.private/enp/cc6mXiyl.o: In function `main':
> io-latency-test.c:(.text+0x93d): undefined reference to `sqrt'
> collect2: выполнение ld завершилось с кодом возврата 1
> make: *** [io-latency-test] Ошибка 1
--as-needed ;) Библиотеки должны идти после объектных файлов.

> 
> в этом же самом окружении:
> 
> $ cat test.c
> #include <math.h>
> #include <stdio.h>
> 
> int main()
> {
>         printf("%f\n",sqrt(2));
>         return 0;
> }
> 
> $ cc -pthread -lm -o test test.c
> $ ./test
> 1.414214
> $ ldd test
>         linux-gate.so.1 =>  (0xffffe000)
>         libc.so.6 => /lib/libc.so.6 (0xb7e69000)
>         /lib/ld-linux.so.2 (0x80000000)
> 
> 

-- 
WBR et al.


^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [d-kernel] Сборка модуля drbd
  2008-09-08  7:43             ` Konstantin A. Lepikhov
@ 2008-09-08  8:28               ` Eugene Prokopiev
  2008-09-08 11:39                 ` Kirill A. Shutemov
  0 siblings, 1 reply; 17+ messages in thread
From: Eugene Prokopiev @ 2008-09-08  8:28 UTC (permalink / raw)
  To: ALT Linux kernel packages development

08.09.08, Konstantin A. Lepikhov<lakostis@> написал(а):

>  > cc -pthread -lm -o io-latency-test io-latency-test.c
>  > /tmp/.private/enp/cc6mXiyl.o: In function `main':
>  > io-latency-test.c:(.text+0x93d): undefined reference to `sqrt'
>  > collect2: выполнение ld завершилось с кодом возврата 1
>  > make: *** [io-latency-test] Ошибка 1
>
> --as-needed ;) Библиотеки должны идти после объектных файлов.

Так вроде нет никаких дополнительных объектных файлов ...

Как должна выглядеть строка? И в чем разница с:

>  > $ cc -pthread -lm -o test test.c

-- 
С уважением,
Прокопьев Евгений

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [d-kernel] Сборка модуля drbd
  2008-09-08  8:28               ` Eugene Prokopiev
@ 2008-09-08 11:39                 ` Kirill A. Shutemov
  0 siblings, 0 replies; 17+ messages in thread
From: Kirill A. Shutemov @ 2008-09-08 11:39 UTC (permalink / raw)
  To: ALT Linux kernel packages development

[-- Attachment #1: Type: text/plain, Size: 1075 bytes --]

On Mon, Sep 08, 2008 at 12:28:54PM +0400, Eugene Prokopiev wrote:
> 08.09.08, Konstantin A. Lepikhov<lakostis@> написал(а):
> 
> >  > cc -pthread -lm -o io-latency-test io-latency-test.c
> >  > /tmp/.private/enp/cc6mXiyl.o: In function `main':
> >  > io-latency-test.c:(.text+0x93d): undefined reference to `sqrt'
> >  > collect2: выполнение ld завершилось с кодом возврата 1
> >  > make: *** [io-latency-test] Ошибка 1
> >
> > --as-needed ;) Библиотеки должны идти после объектных файлов.
> 
> Так вроде нет никаких дополнительных объектных файлов ...
> 
> Как должна выглядеть строка? И в чем разница с:
> 
> >  > $ cc -pthread -lm -o test test.c

Строка должна выглядить 

$ cc -o test test.c -pthread -lm

См. http://www.altlinux.org/UpStream/AsNeeded

-- 
Regards,  Kirill A. Shutemov
 + Belarus, Minsk
 + ALT Linux Team, http://www.altlinux.com/

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 197 bytes --]

^ permalink raw reply	[flat|nested] 17+ messages in thread

end of thread, other threads:[~2008-09-08 11:39 UTC | newest]

Thread overview: 17+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2008-09-07 14:42 [d-kernel] Сборка модуля drbd Eugene Prokopiev
2008-09-07 14:47 ` Михаил Якушин
2008-09-07 16:41   ` Eugene Prokopiev
2008-09-07 16:45     ` Михаил Якушин
2008-09-07 17:09       ` Eugene Prokopiev
2008-09-07 17:22         ` Михаил Якушин
2008-09-07 17:41           ` Eugene Prokopiev
2008-09-07 17:42             ` Михаил Якушин
2008-09-07 17:47               ` Eugene Prokopiev
2008-09-07 18:14                 ` Konstantin A. Lepikhov
2008-09-07 18:10     ` Konstantin A. Lepikhov
2008-09-07 18:29       ` Eugene Prokopiev
2008-09-07 19:20         ` Konstantin A. Lepikhov
2008-09-08  7:03           ` Eugene Prokopiev
2008-09-08  7:43             ` Konstantin A. Lepikhov
2008-09-08  8:28               ` Eugene Prokopiev
2008-09-08 11:39                 ` Kirill A. Shutemov

ALT Linux kernel packages development

This inbox may be cloned and mirrored by anyone:

	git clone --mirror http://lore.altlinux.org/devel-kernel/0 devel-kernel/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 devel-kernel devel-kernel/ http://lore.altlinux.org/devel-kernel \
		devel-kernel@altlinux.org devel-kernel@altlinux.ru devel-kernel@altlinux.com
	public-inbox-index devel-kernel

Example config snippet for mirrors.
Newsgroup available over NNTP:
	nntp://lore.altlinux.org/org.altlinux.lists.devel-kernel


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git