Package Details: libscrypt 1.21-2

Git Clone URL: https://aur.archlinux.org/libscrypt.git (read-only)
Package Base: libscrypt
Description: shared library that implements scrypt() functionality - a replacement for bcrypt()
Upstream URL: https://github.com/technion/libscrypt
Licenses: BSD
Submitter: TrialnError
Maintainer: TrialnError (Morganamilo)
Last Packager: Morganamilo
Votes: 2
Popularity: 0.166967
First Submitted: 2015-10-31 11:57
Last Updated: 2017-12-05 00:29

Dependencies (0)

Sources (1)

Pinned Comments

devopsdeluxe commented on 2017-04-23 18:20

Seems to be an issue with my CFLAGS:

```
CFLAGS="-march=native -O2 -pipe -fstack-protector-strong"
```

I added a temporary cflag to the PKGBUILD to make it work:

```
CFLAGS="${CFLAGS} -fPIC"
```

Latest Comments

Morganamilo commented on 2017-12-04 23:39

Thanks, I must admit I kinda forgot co-maintainers where a thing. I'll fix this soon.

TrialnError commented on 2017-12-04 21:32

Yeah, I wrote it and I must admit I totally forgot about this (obviously). Cannot take a look at it now as I'm pretty beat as I was working all day. In case of forgetting it again, which could happen, I will add you as a co-maintainer.

Morganamilo commented on 2017-12-04 01:25

Would you be willing to add CFLAGS="${CFLAGS} -fPIC" to the PKGBUILD? As mentioned it seems to fix it and I am unaware of any other solution. You said you'd take a look into it on 2017-04-24, hopefully you're still active. Otherwise I'll make an orphan request and change it myself.

TrialnError commented on 2017-04-24 17:30

Another report about a missing Compiler/Linkerflag. I will take again a look at it.
In the meantime I will pin your post.

(And no reason to flag it out of date, as there is no new version)

devopsdeluxe commented on 2017-04-23 18:20

Seems to be an issue with my CFLAGS:

```
CFLAGS="-march=native -O2 -pipe -fstack-protector-strong"
```

I added a temporary cflag to the PKGBUILD to make it work:

```
CFLAGS="${CFLAGS} -fPIC"
```

devopsdeluxe commented on 2017-04-23 18:00

Details on build failure:

```
Cloning into 'libscrypt'...
remote: Counting objects: 5, done.
remote: Compressing objects: 100% (5/5), done.
remote: Total 5 (delta 0), reused 4 (delta 0)
Unpacking objects: 100% (5/5), done.
:: View libscrypt PKGBUILD? [Y/n] n
:: Checking libscrypt integrity...
==> Making package: libscrypt 1.21-1 (Sun Apr 23 12:54:49 CDT 2017)
==> Retrieving sources...
-> Downloading libscrypt-1.21.tar.gz...
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 125 0 125 0 0 560 0 --:--:-- --:--:-- --:--:-- 560
100 19425 0 19425 0 0 34384 0 --:--:-- --:--:-- --:--:-- 155k
==> Validating source files with sha1sums...
libscrypt-1.21.tar.gz ... Passed
:: Building libscrypt package(s)...
==> Making package: libscrypt 1.21-1 (Sun Apr 23 12:54:51 CDT 2017)
==> Checking runtime dependencies...
==> Checking buildtime dependencies...
==> WARNING: Using existing $srcdir/ tree
==> Starting build()...
cc -march=native -O2 -pipe -fstack-protector-strong -D_FORTIFY_SOURCE=2 -c -o crypto_scrypt-nosse.o crypto_scrypt-nosse.c
cc -march=native -O2 -pipe -fstack-protector-strong -D_FORTIFY_SOURCE=2 -c -o sha256.o sha256.c
cc -march=native -O2 -pipe -fstack-protector-strong -D_FORTIFY_SOURCE=2 -c -o crypto-mcf.o crypto-mcf.c
cc -march=native -O2 -pipe -fstack-protector-strong -D_FORTIFY_SOURCE=2 -c -o b64.o b64.c
cc -march=native -O2 -pipe -fstack-protector-strong -D_FORTIFY_SOURCE=2 -c -o crypto-scrypt-saltgen.o crypto-scrypt-saltgen.c
cc -march=native -O2 -pipe -fstack-protector-strong -D_FORTIFY_SOURCE=2 -c -o crypto_scrypt-check.o crypto_scrypt-check.c
cc -march=native -O2 -pipe -fstack-protector-strong -D_FORTIFY_SOURCE=2 -c -o crypto_scrypt-hash.o crypto_scrypt-hash.c
cc -march=native -O2 -pipe -fstack-protector-strong -D_FORTIFY_SOURCE=2 -c -o slowequals.o slowequals.c
cc -march=native -O2 -pipe -fstack-protector-strong -D_FORTIFY_SOURCE=2 -c -o main.o main.c
cc -march=native -O2 -pipe -fstack-protector-strong -D_FORTIFY_SOURCE=2 -c -o crypto_scrypt-hexconvert.o crypto_scrypt-hexconvert.c
cc -Wl,-O1,--sort-common,--as-needed,-z,relro -shared -o libscrypt.so.0 crypto_scrypt-nosse.o sha256.o crypto-mcf.o b64.o crypto-scrypt-saltgen.o crypto_scrypt-check.o crypto_scrypt-hash.o slowequals.o -lm -lc
/usr/bin/ld: sha256.o: relocation R_X86_64_32 against `.data' can not be used when making a shared object; recompile with -fPIC
/usr/bin/ld: crypto-mcf.o: relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a shared object; recompile with -fPIC
/usr/bin/ld: b64.o: relocation R_X86_64_32S against `.rodata' can not be used when making a shared object; recompile with -fPIC
/usr/bin/ld: crypto-scrypt-saltgen.o: relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a shared object; recompile with -fPIC
/usr/bin/ld: crypto_scrypt-check.o: relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a shared object; recompile with -fPIC
/usr/bin/ld: crypto_scrypt-nosse.o: relocation R_X86_64_PC32 against symbol `__stack_chk_fail@@GLIBC_2.4' can not be used when making a shared object; recompile with -fPIC
/usr/bin/ld: final link failed: Bad value
collect2: error: ld returned 1 exit status
make: *** [Makefile:17: libscrypt.so.0] Error 1
==> ERROR: A failure occurred in build().
Aborting...
:: failed to build libscrypt package(s)
```

TrialnError commented on 2015-12-12 11:54

Hi

Thanks for the comment.
If I do understand it correctly, this is somewhat necessary if it shall be included in a library?

Maybe this is worth to be taken to upstream?

kainlite commented on 2015-12-10 16:06

Hey,

How are you?, I tried using this package, but I had to modify the Makefile, it can be fixed like this:

Makefile.patch:

9c9
< LDFLAGS?=-Wl,-z,now -Wl,-z,relro -Wl,-soname,libscrypt.so.0 -Wl,--version-script=libscrypt.version
---
> LDFLAGS?=-Wl,-z,now -Wl,-z,relro -Wl,-soname,libscrypt.so.0 -Wl,--version-script=libscrypt.version -fPIC

PKGBUILD ( in the build section ):

patch "$srcdir/$pkgname-$pkgver/Makefile" -p1 "$srcdir/Makefile.patch"

Also you need to add the file to sources.

Thanks.