Subject: Compile against static library fails

Compile against static library fails

From: Luis Lavena <luislavena_at_gmail.com>
Date: Mon, 30 Aug 2010 21:33:22 -0300

Hello,

I'm trying to compile libssh2 as static library using "configure
--enable-static --disable-shared"

During the compilation of the examples, it generates the following failure:

libtool: link: gcc -DLIBSSH2_WIN32 -DWINSOCK_VERSION=0x0200 -o
direct_tcpip.exe direct_tcpip.o ../src/.libs/libssh2.a -lssl -lcrypto
-lz -lws2_32
direct_tcpip.o:direct_tcpip.c:(.text+0xf4): undefined reference to
`_imp__libssh2_init'
direct_tcpip.o:direct_tcpip.c:(.text+0x20b): undefined reference to
`_imp__libssh2_session_init_ex'
direct_tcpip.o:direct_tcpip.c:(.text+0x25a): undefined reference to
`_imp__libssh2_session_startup'
direct_tcpip.o:direct_tcpip.c:(.text+0x2a1): undefined reference to
`_imp__libssh2_hostkey_hash'
direct_tcpip.o:direct_tcpip.c:(.text+0x347): undefined reference to
`_imp__libssh2_userauth_list'
direct_tcpip.o:direct_tcpip.c:(.text+0x44d): undefined reference to
`_imp__libssh2_userauth_password_ex'
direct_tcpip.o:direct_tcpip.c:(.text+0x4d2): undefined reference to
`_imp__libssh2_userauth_publickey_fromfile_ex'
direct_tcpip.o:direct_tcpip.c:(.text+0x700): undefined reference to
`_imp__libssh2_channel_direct_tcpip_ex'
direct_tcpip.o:direct_tcpip.c:(.text+0x74b): undefined reference to
`_imp__libssh2_session_set_blocking'
direct_tcpip.o:direct_tcpip.c:(.text+0x8d1): undefined reference to
`_imp__libssh2_channel_write_ex'
direct_tcpip.o:direct_tcpip.c:(.text+0x93c): undefined reference to
`_imp__libssh2_channel_read_ex'
direct_tcpip.o:direct_tcpip.c:(.text+0x9e1): undefined reference to
`_imp__libssh2_channel_eof'
direct_tcpip.o:direct_tcpip.c:(.text+0xa38): undefined reference to
`_imp__libssh2_channel_free'
direct_tcpip.o:direct_tcpip.c:(.text+0xa5d): undefined reference to
`_imp__libssh2_session_disconnect_ex'
direct_tcpip.o:direct_tcpip.c:(.text+0xa6a): undefined reference to
`_imp__libssh2_session_free'
direct_tcpip.o:direct_tcpip.c:(.text+0xa7f): undefined reference to
`_imp__libssh2_exit'
collect2: ld returned 1 exit status
make[2]: *** [direct_tcpip.exe] Error 1
make[2]: Leaving directory
`/c/Users/Luis/Projects/oss/oci/rubyinstaller/sandbox/src-libssh2/example'
make[1]: *** [all] Error 2
make[1]: Leaving directory
`/c/Users/Luis/Projects/oss/oci/rubyinstaller/sandbox/src-libssh2/example'
make: *** [all-recursive] Error 1

I'm using GCC 4.5.0 (TDM) under Windows.

This works perfectly on Linux which might indicate an issue with
symbols not exported properly.

Anyone seen this?

Thank you.

-- 
Luis Lavena
AREA 17
-
Perfection in design is achieved not when there is nothing more to add,
but rather when there is nothing more to take away.
Antoine de Saint-Exupéry
_______________________________________________
libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel
Received on 2010-08-31