Re: [Chicken-users] How to compile with openssl?

2014-10-07 Thread Christian Kellermann
Sascha Ziemann cev...@gmail.com writes:

 This are the modules I use:

 (use http-client
  uri-common
  uuid
  xml-rpc-client
  blowfish)

Does it work, when you add openssl here also?

Cheers,

Christian

-- 
May you be peaceful, may you live in safety, may you be free from
suffering, and may you live with ease.


___
Chicken-users mailing list
Chicken-users@nongnu.org
https://lists.nongnu.org/mailman/listinfo/chicken-users


Re: [Chicken-users] How to compile with openssl?

2014-10-07 Thread Sascha Ziemann
2014-10-07 13:45 GMT+02:00 Christian Kellermann ck...@pestilenz.org:

 * Sascha Ziemann cev...@gmail.com [141007 13:37]:
  The binary is not linked against Openssl:
 
  $ ldd domrobot
  linux-gate.so.1 =  (0xb7793000)
  libchicken.so.6 = /usr/lib/libchicken.so.6 (0xb7402000)
  libm.so.6 = /lib/i386-linux-gnu/libm.so.6 (0xb73d6000)
  libdl.so.2 = /lib/i386-linux-gnu/libdl.so.2 (0xb73d2000)
  libc.so.6 = /lib/i386-linux-gnu/libc.so.6 (0xb7284000)
  /lib/ld-linux.so.2 (0xb7794000)
 
  Should it be so?

 Yes, I think it should.


I tried it but it does not help either:

$ csc -L/usr/lib/i386-linux-gnu/i586 -lssl domrobot.scm
$ ldd domrobot
linux-gate.so.1 =  (0xb77ae000)
libssl.so.1.0.0 = /usr/lib/i386-linux-gnu/i586/libssl.so.1.0.0
(0xb774c000)
libchicken.so.6 = /usr/lib/libchicken.so.6 (0xb73bd000)
libm.so.6 = /lib/i386-linux-gnu/libm.so.6 (0xb7397000)
libdl.so.2 = /lib/i386-linux-gnu/libdl.so.2 (0xb7393000)
libc.so.6 = /lib/i386-linux-gnu/libc.so.6 (0xb7245000)
libcrypto.so.1.0.0 =
/usr/lib/i386-linux-gnu/i586/libcrypto.so.1.0.0 (0xb7081000)
libz.so.1 = /lib/i386-linux-gnu/libz.so.1 (0xb7068000)
/lib/ld-linux.so.2 (0xb77af000)
$ ./domrobot 127.0.0.1

Error: (ssl-connect) Unable to connect over HTTPS. To fix this, install the
openssl egg and try again: https://api.domrobot.com/xmlrpc/;
___
Chicken-users mailing list
Chicken-users@nongnu.org
https://lists.nongnu.org/mailman/listinfo/chicken-users


Re: [Chicken-users] How to compile with openssl?

2014-10-07 Thread Peter Bex
On Tue, Oct 07, 2014 at 01:19:55PM +0200, Sascha Ziemann wrote:
 I tried to load all directly imported modules and also the indirectly
 imported openssl module before compilation:
 
 (begin-for-syntax
  (require-extension openssl)
  (require-extension http-client)
  (require-extension uri-common)
  (require-extension uuid)
  (require-extension xml-rpc-client)
  (require-extension blowfish))
 
 But this does not help.

It may be indirectly imported, but it needs to load it at runtime,
because that's when the SSL connection is made.  You do not even need
to (use ..) it or (require-library ..) it; http-client attempts to do
that at runtime.

You'll need to ensure that openssl is available to the application.
Like the error message says, all you need to do is ensure that it's
installed and it'll work.  If you're using -deploy, make sure that you
add the egg to your application bundle.  If you're using a custom egg
repository, ensure that openssl is in there.

Cheers,
Peter
-- 
http://www.more-magic.net

___
Chicken-users mailing list
Chicken-users@nongnu.org
https://lists.nongnu.org/mailman/listinfo/chicken-users


Re: [Chicken-users] How to compile with openssl?

2014-10-07 Thread Sascha Ziemann
2014-10-07 13:48 GMT+02:00 Peter Bex peter@xs4all.nl:


 You'll need to ensure that openssl is available to the application.
 Like the error message says, all you need to do is ensure that it's
 installed and it'll work.  If you're using -deploy, make sure that you
 add the egg to your application bundle.  If you're using a custom egg
 repository, ensure that openssl is in there.


I run the interpreted and compiled version on the same system. How can the
egg not being there for the compiled version, if it is there for the
interpreted version?

I tried strace on the interpreted and the compiled version. The funny thing
is, that the compiled version opens libssl and after that reports the error
that openssl is not available.

$ strace ./domrobot 127.0.0.1 21|grep ssl
stat64(/var/lib//chicken/6/openssl.so, {st_mode=S_IFREG|0755,
st_size=251089, ...}) = 0
stat64(/var/lib//chicken/6/openssl, 0xbff9239c) = -1 ENOENT (No such file
or directory)
stat64(/var/lib//chicken/6/openssl.so, {st_mode=S_IFREG|0755,
st_size=251089, ...}) = 0
open(/var/lib//chicken/6/openssl.so, O_RDONLY) = 3
open(/usr/lib/i586/libssl.so.1.0.0, O_RDONLY) = -1 ENOENT (No such file
or directory)
open(/usr/lib/libssl.so.1.0.0, O_RDONLY) = -1 ENOENT (No such file or
directory)
open(/usr/lib/i586/libssl.so.1.0.0, O_RDONLY) = -1 ENOENT (No such file
or directory)
open(/usr/lib/libssl.so.1.0.0, O_RDONLY) = -1 ENOENT (No such file or
directory)
open(/usr/lib/i386-linux-gnu/i586/libssl.so.1.0.0, O_RDONLY) = 3
write(2, (ssl-connect) Unable to connect ..., 94(ssl-connect) Unable to
connect over HTTPS. To fix this, install the openssl egg and try again) = 94

csi opens just the same lib:

$ grep /usr/lib/i386-linux-gnu/i586/libssl.so.1.0.0 *.trace
csc.trace:open(/usr/lib/i386-linux-gnu/i586/libssl.so.1.0.0, O_RDONLY) = 3
csi.trace:open(/usr/lib/i386-linux-gnu/i586/libssl.so.1.0.0, O_RDONLY) = 4

I do not think that my system installation is broken. I think csi and csc
do different things with libssl.

Regards,
Sascha
___
Chicken-users mailing list
Chicken-users@nongnu.org
https://lists.nongnu.org/mailman/listinfo/chicken-users


Re: [Chicken-users] How to compile with openssl?

2014-10-07 Thread Arthur Maciel
Sascha, putting (use openssl) in your code makes any difference?

Best wishes,
Arthur


2014-10-07 9:16 GMT-03:00 Sascha Ziemann cev...@gmail.com:



 2014-10-07 13:48 GMT+02:00 Peter Bex peter@xs4all.nl:


 You'll need to ensure that openssl is available to the application.
 Like the error message says, all you need to do is ensure that it's
 installed and it'll work.  If you're using -deploy, make sure that you
 add the egg to your application bundle.  If you're using a custom egg
 repository, ensure that openssl is in there.


 I run the interpreted and compiled version on the same system. How can the
 egg not being there for the compiled version, if it is there for the
 interpreted version?

 I tried strace on the interpreted and the compiled version. The funny
 thing is, that the compiled version opens libssl and after that reports the
 error that openssl is not available.

 $ strace ./domrobot 127.0.0.1 21|grep ssl
 stat64(/var/lib//chicken/6/openssl.so, {st_mode=S_IFREG|0755,
 st_size=251089, ...}) = 0
 stat64(/var/lib//chicken/6/openssl, 0xbff9239c) = -1 ENOENT (No such
 file or directory)
 stat64(/var/lib//chicken/6/openssl.so, {st_mode=S_IFREG|0755,
 st_size=251089, ...}) = 0
 open(/var/lib//chicken/6/openssl.so, O_RDONLY) = 3
 open(/usr/lib/i586/libssl.so.1.0.0, O_RDONLY) = -1 ENOENT (No such file
 or directory)
 open(/usr/lib/libssl.so.1.0.0, O_RDONLY) = -1 ENOENT (No such file or
 directory)
 open(/usr/lib/i586/libssl.so.1.0.0, O_RDONLY) = -1 ENOENT (No such file
 or directory)
 open(/usr/lib/libssl.so.1.0.0, O_RDONLY) = -1 ENOENT (No such file or
 directory)
 open(/usr/lib/i386-linux-gnu/i586/libssl.so.1.0.0, O_RDONLY) = 3
 write(2, (ssl-connect) Unable to connect ..., 94(ssl-connect) Unable to
 connect over HTTPS. To fix this, install the openssl egg and try again) = 94

 csi opens just the same lib:

 $ grep /usr/lib/i386-linux-gnu/i586/libssl.so.1.0.0 *.trace
 csc.trace:open(/usr/lib/i386-linux-gnu/i586/libssl.so.1.0.0, O_RDONLY) =
 3
 csi.trace:open(/usr/lib/i386-linux-gnu/i586/libssl.so.1.0.0, O_RDONLY) =
 4

 I do not think that my system installation is broken. I think csi and csc
 do different things with libssl.

 Regards,
 Sascha


 ___
 Chicken-users mailing list
 Chicken-users@nongnu.org
 https://lists.nongnu.org/mailman/listinfo/chicken-users


___
Chicken-users mailing list
Chicken-users@nongnu.org
https://lists.nongnu.org/mailman/listinfo/chicken-users


Re: [Chicken-users] How to compile with openssl?

2014-10-07 Thread Kristian Lein-Mathisen
Hi Sascha,

which CHICKEN version are you using?

There is a bug in some older versions where you need to specify (use
chicken-syntax) for it work in compiled modules. Does that help?

K.

On Tue, Oct 7, 2014 at 2:25 PM, Arthur Maciel arthurmac...@gmail.com
wrote:

 Sascha, putting (use openssl) in your code makes any difference?

 Best wishes,
 Arthur


 2014-10-07 9:16 GMT-03:00 Sascha Ziemann cev...@gmail.com:



 2014-10-07 13:48 GMT+02:00 Peter Bex peter@xs4all.nl:


 You'll need to ensure that openssl is available to the application.
 Like the error message says, all you need to do is ensure that it's
 installed and it'll work.  If you're using -deploy, make sure that you
 add the egg to your application bundle.  If you're using a custom egg
 repository, ensure that openssl is in there.


 I run the interpreted and compiled version on the same system. How can
 the egg not being there for the compiled version, if it is there for the
 interpreted version?

 I tried strace on the interpreted and the compiled version. The funny
 thing is, that the compiled version opens libssl and after that reports the
 error that openssl is not available.

 $ strace ./domrobot 127.0.0.1 21|grep ssl
 stat64(/var/lib//chicken/6/openssl.so, {st_mode=S_IFREG|0755,
 st_size=251089, ...}) = 0
 stat64(/var/lib//chicken/6/openssl, 0xbff9239c) = -1 ENOENT (No such
 file or directory)
 stat64(/var/lib//chicken/6/openssl.so, {st_mode=S_IFREG|0755,
 st_size=251089, ...}) = 0
 open(/var/lib//chicken/6/openssl.so, O_RDONLY) = 3
 open(/usr/lib/i586/libssl.so.1.0.0, O_RDONLY) = -1 ENOENT (No such file
 or directory)
 open(/usr/lib/libssl.so.1.0.0, O_RDONLY) = -1 ENOENT (No such file or
 directory)
 open(/usr/lib/i586/libssl.so.1.0.0, O_RDONLY) = -1 ENOENT (No such file
 or directory)
 open(/usr/lib/libssl.so.1.0.0, O_RDONLY) = -1 ENOENT (No such file or
 directory)
 open(/usr/lib/i386-linux-gnu/i586/libssl.so.1.0.0, O_RDONLY) = 3
 write(2, (ssl-connect) Unable to connect ..., 94(ssl-connect) Unable to
 connect over HTTPS. To fix this, install the openssl egg and try again) = 94

 csi opens just the same lib:

 $ grep /usr/lib/i386-linux-gnu/i586/libssl.so.1.0.0 *.trace
 csc.trace:open(/usr/lib/i386-linux-gnu/i586/libssl.so.1.0.0, O_RDONLY)
 = 3
 csi.trace:open(/usr/lib/i386-linux-gnu/i586/libssl.so.1.0.0, O_RDONLY)
 = 4

 I do not think that my system installation is broken. I think csi and csc
 do different things with libssl.

 Regards,
 Sascha


 ___
 Chicken-users mailing list
 Chicken-users@nongnu.org
 https://lists.nongnu.org/mailman/listinfo/chicken-users



 ___
 Chicken-users mailing list
 Chicken-users@nongnu.org
 https://lists.nongnu.org/mailman/listinfo/chicken-users


___
Chicken-users mailing list
Chicken-users@nongnu.org
https://lists.nongnu.org/mailman/listinfo/chicken-users


Re: [Chicken-users] How to compile with openssl?

2014-10-07 Thread Sascha Ziemann
2014-10-07 14:28 GMT+02:00 Kristian Lein-Mathisen kristianl...@gmail.com:


 which CHICKEN version are you using?


It is the one which comes with Debian stable:  4.7.0-1


 There is a bug in some older versions where you need to specify (use
 chicken-syntax) for it work in compiled modules. Does that help?


Yes! This helps. Thanks!

Regards,
Sascha
___
Chicken-users mailing list
Chicken-users@nongnu.org
https://lists.nongnu.org/mailman/listinfo/chicken-users


Re: [Chicken-users] How to compile with openssl?

2014-10-07 Thread Christian Kellermann
* Sascha Ziemann cev...@gmail.com [141007 15:11]:
 2014-10-07 14:28 GMT+02:00 Kristian Lein-Mathisen kristianl...@gmail.com:
 
 
  which CHICKEN version are you using?
 
 
 It is the one which comes with Debian stable:  4.7.0-1
 
 
  There is a bug in some older versions where you need to specify (use
  chicken-syntax) for it work in compiled modules. Does that help?
 
 
 Yes! This helps. Thanks!

If you can please consider upgrading, 4.7.0 is horribly out of date
and tons of bugs have been fixed in the meantime.

CHICKEN works very well when installed locally, so you don't need
to be root. Also I think on testing there's already a newer version
so maybe you can grab the .deb from there.

Kind regards,

Christian

-- 
May you be peaceful, may you live in safety, may you be free from
suffering, and may you live with ease.

___
Chicken-users mailing list
Chicken-users@nongnu.org
https://lists.nongnu.org/mailman/listinfo/chicken-users


Re: [Chicken-users] How to compile with openssl?

2014-10-07 Thread Sascha Ziemann
2014-10-07 15:23 GMT+02:00 Christian Kellermann ck...@pestilenz.org:

 If you can please consider upgrading, 4.7.0 is horribly out of date
 and tons of bugs have been fixed in the meantime.


With the two non obvious lines:

  (use chicken-syntax)
  (begin-for-syntax (require-extension blowfish))

it works better than Perl's XMLRPC::Lite which fails to parse the XML
result of a method I need and which needs also Jessi packages on Wheezy.
Installing Jessi packages on Wheezy puzzles Apt and causes package
dependency errors. With the Chicken version I can remove the Jessi packages
and Apt is happy again.

Regard,
Sascha
___
Chicken-users mailing list
Chicken-users@nongnu.org
https://lists.nongnu.org/mailman/listinfo/chicken-users