From owner-freebsd-questions@FreeBSD.ORG Thu Apr 1 23:12:44 2004 Return-Path: Delivered-To: freebsd-questions@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 8650916A4CE for ; Thu, 1 Apr 2004 23:12:44 -0800 (PST) Received: from peter.smxy.org (smxy.org [64.32.179.41]) by mx1.FreeBSD.org (Postfix) with ESMTP id 3380743D55 for ; Thu, 1 Apr 2004 23:12:44 -0800 (PST) (envelope-from ste@smxy.org) Received: from localhost (localhost [127.0.0.1]) by peter.smxy.org (Postfix) with ESMTP id 5E11F21C9 for ; Fri, 2 Apr 2004 02:12:43 -0500 (EST) Received: from smxy.org ([127.0.0.1]) by localhost (peter.smxy.org [127.0.0.1]) (amavisd-new, port 10025) with ESMTP id 51834-09 for ; Fri, 2 Apr 2004 02:12:42 -0500 (EST) Received: from smxy.org (bgp377940bgs.plnfld01.nj.comcast.net [68.36.5.198]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by peter.smxy.org (Postfix) with ESMTP for ; Fri, 2 Apr 2004 02:12:42 -0500 (EST) Message-ID: <406D1265.1030102@smxy.org> Date: Fri, 02 Apr 2004 02:12:37 -0500 From: "Shaun T. Erickson" User-Agent: Mozilla Thunderbird 0.5 (Windows/20040207) X-Accept-Language: en-us, en MIME-Version: 1.0 To: freebsd-questions@freebsd.org Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit X-Virus-Scanned: by amavisd-new at smxy.org Subject: OT: how do I get this to link? X-BeenThere: freebsd-questions@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list Reply-To: ste@smxy.org List-Id: User questions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 02 Apr 2004 07:12:44 -0000 I'm trying to port a program to FreeBSD 5.2.1-RELEASE-p4, from Linux. First, I haven't tried to do anything like this since college, which was a looong time ago, so please forgive my ignorance ... I can't get the program to link. In the output below, the things that c-client4.a is complaining about are found in the pam and ssl libs earlier in the line (I grep'd for a number of them, in /usr/lib/*.a, and they were found in those two libs). I have tried many different ways of ordering the libs, and this is the one that produces the least undefined references. I have all the libs found in /usr/lib first and the libs from /usr/local/lib second. I'm pulling my hair out trying to get this to work. Can someone help me figure this out please? Here's the output: peter# make gcc -c filtercmd.c -DSQUIRRELMAILCONFIGFILE='"/usr/local/www/squirrelmail/config/config.php"' gcc -c checkcreds_cclient.c -I/usr/local/include/c-client '-DMAIL_H="mail.h"' '-DLINKAGE_C="linkage.c"' -DIMAP_TIMEOUT=2 '-DMAILBOXFLAGS="/norsh/tls/novalidate-cert"' gcc -o filtercmd filtercmd.o checkcreds_cclient.o -lpam -lssl -lcrypt -lkrb5 -lcom_err -lz -lcrypto -L/usr/local/lib -lc-client4 -lgssapi_krb5 -lk5crypto -static /usr/local/lib/libc-client4.a(osdep.o): In function `ssl_onceonlyinit': osdep.o(.text+0x859d): warning: tmpnam() possibly used unsafely; consider using mkstemp() /usr/local/lib/libc-client4.a(osdep.o): In function `checkpw': osdep.o(.text+0x83f7): undefined reference to `pam_start' osdep.o(.text+0x8417): undefined reference to `pam_set_item' osdep.o(.text+0x842e): undefined reference to `pam_authenticate' osdep.o(.text+0x8445): undefined reference to `pam_acct_mgmt' osdep.o(.text+0x845c): undefined reference to `pam_setcred' osdep.o(.text+0x847f): undefined reference to `pam_setcred' osdep.o(.text+0x8492): undefined reference to `pam_end' osdep.o(.text+0x84ac): undefined reference to `pam_end' /usr/local/lib/libc-client4.a(osdep.o): In function `ssl_onceonlyinit': osdep.o(.text+0x8690): undefined reference to `RAND_seed' osdep.o(.text+0x86d9): undefined reference to `SSL_library_init' /usr/local/lib/libc-client4.a(osdep.o): In function `ssl_start_work': osdep.o(.text+0x899f): undefined reference to `TLSv1_client_method' osdep.o(.text+0x89a6): undefined reference to `SSLv23_client_method' osdep.o(.text+0x89ae): undefined reference to `SSL_CTX_new' osdep.o(.text+0x89e1): undefined reference to `SSL_CTX_ctrl' osdep.o(.text+0x8a17): undefined reference to `SSL_CTX_set_verify' osdep.o(.text+0x8a22): undefined reference to `SSL_CTX_set_default_verify_paths' osdep.o(.text+0x8a2d): undefined reference to `SSL_new' osdep.o(.text+0x8a52): undefined reference to `BIO_new_socket' osdep.o(.text+0x8a65): undefined reference to `SSL_set_bio' osdep.o(.text+0x8a70): undefined reference to `SSL_set_connect_state' osdep.o(.text+0x8a7b): undefined reference to `SSL_state' osdep.o(.text+0x8aa3): undefined reference to `SSL_ctrl' osdep.o(.text+0x8abe): undefined reference to `SSL_write' osdep.o(.text+0x8af0): undefined reference to `SSL_get_peer_certificate' /usr/local/lib/libc-client4.a(osdep.o): In function `ssl_open_verify': osdep.o(.text+0x8bf2): undefined reference to `X509_STORE_CTX_get_error' osdep.o(.text+0x8bfa): undefined reference to `X509_verify_cert_error_string' osdep.o(.text+0x8c08): undefined reference to `X509_STORE_CTX_get_current_cert' osdep.o(.text+0x8c10): undefined reference to `X509_get_subject_name' osdep.o(.text+0x8c2a): undefined reference to `X509_NAME_oneline' /usr/local/lib/libc-client4.a(osdep.o): In function `ssl_getdata': osdep.o(.text+0x90e4): undefined reference to `SSL_get_fd' osdep.o(.text+0x914e): undefined reference to `SSL_pending' osdep.o(.text+0x9306): undefined reference to `SSL_read' osdep.o(.text+0x9325): undefined reference to `SSL_get_error' /usr/local/lib/libc-client4.a(osdep.o): In function `ssl_sout': osdep.o(.text+0x942f): undefined reference to `SSL_write' /usr/local/lib/libc-client4.a(osdep.o): In function `ssl_abort': osdep.o(.text+0x94ca): undefined reference to `SSL_shutdown' osdep.o(.text+0x94d5): undefined reference to `SSL_free' osdep.o(.text+0x94ed): undefined reference to `SSL_CTX_free' /usr/local/lib/libc-client4.a(osdep.o): In function `ssl_server_init': osdep.o(.text+0x96eb): undefined reference to `ERR_load_crypto_strings' osdep.o(.text+0x96f0): undefined reference to `SSL_load_error_strings' osdep.o(.text+0x976a): undefined reference to `TLSv1_server_method' osdep.o(.text+0x9771): undefined reference to `SSLv23_server_method' osdep.o(.text+0x9779): undefined reference to `SSL_CTX_new' osdep.o(.text+0x97bf): undefined reference to `SSL_CTX_ctrl' osdep.o(.text+0x97d2): undefined reference to `SSL_CTX_set_cipher_list' osdep.o(.text+0x9806): undefined reference to `SSL_CTX_use_certificate_chain_file' osdep.o(.text+0x983e): undefined reference to `SSL_CTX_use_RSAPrivateKey_file' osdep.o(.text+0x988b): undefined reference to `SSL_CTX_ctrl' osdep.o(.text+0x98a2): undefined reference to `SSL_CTX_set_tmp_rsa_callback' osdep.o(.text+0x98ad): undefined reference to `SSL_new' osdep.o(.text+0x98e4): undefined reference to `SSL_set_fd' osdep.o(.text+0x98ef): undefined reference to `SSL_accept' osdep.o(.text+0x99ac): undefined reference to `ERR_error_string' osdep.o(.text+0x99c9): undefined reference to `ERR_get_error' /usr/local/lib/libc-client4.a(osdep.o): In function `ssl_genkey': osdep.o(.text+0x9a2d): undefined reference to `RSA_generate_key' osdep.o(.text+0x9a59): undefined reference to `ERR_error_string' osdep.o(.text+0x9a76): undefined reference to `ERR_get_error' /usr/local/lib/libc-client4.a(osdep.o): In function `ssl_server_input_wait': osdep.o(.text+0x9aea): undefined reference to `SSL_get_fd' osdep.o(.text+0x9afb): undefined reference to `SSL_pending' osdep.o(.text+0x9b1f): undefined reference to `SSL_read' *** Error code 1 Stop in /usr/local/www/squirrelmail/plugins/serversidefilter/script. peter# -ste