Follow @Openwall on Twitter for new release announcements and other news
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date: Thu, 22 Dec 2011 08:08:30 -0600
From: "jfoug" <jfoug@....net>
To: <john-users@...ts.openwall.com>
Subject: RE: 1.7.9-jumbo5 fails to build with OMPFLAGS = -fopenmp -msse2

I found this same issue on cygwin. I almost never build for OMP myself, and
when I tried it failed. The problem was traced down to the setting of
ASFLAGS within the rules for cygwin (and possibly others, mingw for sure, if
it can do OMP).  ASFLAGS has to have -sse2 added for the linkage to work.

>From: Alexey Dokuchaev [mailto:danfe@....ru]
>
>Hi there,
>
>I was trying to build OpenMP-enabled JtR on FreeBSD 8.2 and commented
>out
>"OMPFLAGS = -fopenmp -msse2" line in Makefile, but john could not be
>linked because of some missing symbols:
>
>    DES_fmt.o(.text+0xf1): In function `get_key':
>    : undefined reference to `DES_bs_all'
>    DES_fmt.o(.data+0x78): undefined reference to `DES_bs_crypt_25'
>    DES_bs.o(.text+0xd): In function `DES_bs_set_key':
>    : undefined reference to `DES_bs_all'
>    DES_bs.o(.text+0x13): In function `DES_bs_set_key':
>    : undefined reference to `DES_bs_all'
>    DES_bs.o(.text+0xe1): In function `DES_bs_set_key_LM':
>
>It turns out that with -msse2 in ASFLAGS, x86-sse.o lacks those
>functions,
>per "nm x86-sse.o" for example:
>
>    00000000 d const_init_a
>    00000010 d const_init_b
>    00000020 d const_init_c
>    00000030 d const_init_d
>    00000040 d const_stage2
>    00000050 d const_stage3
>             U nt_buffer1x
>             U nt_buffer4x
>    00000000 T nt_crypt_all_sse2
>             U output1x
>             U output4x
>
>When I remove -msse2 from OMPFLAGS (and thus ASFLAGS), all DES_* symbols
>are there (output is too long to list here, "nm x86-sse.o | wc -l"
>yields
>42).  This behavior is consistent between GCC 4.2 and 4.4.  Why does it
>happen?  Does it mean that "OMPFLAGS = -fopenmp -msse2" case is broken,
>or
>I am missing something obvious here?  Thanks,
>
>./danfe

Powered by blists - more mailing lists

Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.