# Won't compile: qmail qmail-remote.o In function `tls_init': : undefined



## FweeBSD (Nov 9, 2010)

```
/usr/ports/distfiles/qmail-1.03 # make
./load qmail-remote control.o constmap.o timeoutread.o  timeoutwrite.o timeoutconn.o tcpto.o now.o dns.o ip.o  tls.o ssl_timeoutio.o `cat 
ssl.lib`  ipalloc.o strsalloc.o ipme.o quote.o ndelay.a case.a sig.a open.a  lock.a seek.a getln.a stralloc.a alloc.a substdio.a error.a  str.a 
fs.a auto_qmail.o  `cat dns.lib` `cat socket.lib`
qmail-remote.o(.text+0xbae): In function `tls_init':
: undefined reference to `SSL_library_init'
qmail-remote.o(.text+0xbb6): In function `tls_init':
: undefined reference to `SSLv23_client_method'
qmail-remote.o(.text+0xbbe): In function `tls_init':
: undefined reference to `SSL_CTX_new'
qmail-remote.o(.text+0xbe4): In function `tls_init':
: undefined reference to `SSL_CTX_load_verify_locations'
.
.
.
```
Any ideas where the hang up is?


----------



## wblock@ (Nov 9, 2010)

FweeBSD said:
			
		

> ```
> /usr/ports/distfiles/qmail-1.03 # make
> ./load qmail-remote control.o constmap.o timeoutread.o  timeoutwrite.o timeoutconn.o
> ```
> ...



Line #1.  You're not building the port, you're building from the distfile.
`# cd /usr/ports/mail/qmail; make`

(But please consider the many fine non-qmail MTAs.)


----------



## FweeBSD (Nov 9, 2010)

wblock said:
			
		

> Line #1.  You're not building the port, you're building from the distfile.
> `# cd /usr/ports/mail/qmail; make`
> 
> 
> (But please consider the many fine non-qmail MTAs.)




Right.  It's Plesk specific.  Need to compile in
a bunch of Plesk patches.

Gotta have qmail.

Any other suggestions?


----------



## wblock@ (Nov 9, 2010)

Put the patches into the files/ directory of the qmail port, adjusting them if necessary.


----------



## FweeBSD (Nov 11, 2010)

wblock said:
			
		

> Put the patches into the files/ directory of the qmail port, adjusting them if necessary.



Here is what I did:


```
cd /usr/ports/distfiles/
  wget [url]ftp://ftp.eu.uu.net/pub/unix/mail/qmail/qmail-1.03.tar.gz[/url]
  tar xvzf qmail-1.03.tar.gz
  cd qmail-1.03
  wget [url]http://kb.parallels.com/Attachments/806/Attachments/plesk86_qmail_patches.tgz[/url]
  tar zxvf plesk86_qmail_patches.tgz
```
Uncompressing the patch file dumps into "files" subdir:


```
patch -p0 < ./files/patch-BC
  patch -p0 < ./files/patch-big-dns
  patch -p0 < ./files/patch-chown
  patch -p0 < ./files/patch-pb
  patch -p0 < ./files/patch-pe
  patch -p0 < ./files/patch-pf
  patch -p0 < ./files/patch-pg
  patch -p0 < ./files/patch-ph
  patch -p0 < ./files/patch-pi
  patch -p0 < ./files/patch-pp
  patch -p0 < ./files/patch-ps
  patch -p0 < ./files/patch-pt
  patch -p0 < ./files/patch-pu-tls
  patch -p0 < ./files/patch-pv-smtp-auth
  patch -p0 < ./files/patch-qmail-date-localtime
  patch -p0 < ./files/patch-qmtpd
  patch -p0 < ./files/patch-spf
  patch -p0 < ./files/patch-TD
  patch -p0 < ./files/patch-z01-isoc
  patch -p0 < ./files/patch-z02-libssl
  patch -p0 < ./files/patch-z03-next-mx
  patch -p0 < ./files/patch-z04-tcp-env
  patch -p0 < ./files/patch-z10-spp
  patch -p0 < ./files/patch-z15-smtpd-relay-reject
  patch -p0 < ./files/patch-z20-perms
  patch -p0 < ./files/patch-z25-mms
  patch -p0 < ./files/patch-z30-tlsserverciphers-fix
  patch -p0 < ./files/patch-z33-dk-0.54
  patch -p0 < ./files/patch-z35-dk-auth
  patch -p0 < ./files/patch-z37-dk-mailhandler
  patch -p0 < ./files/patch-z40-smtpd-maxrcpt
  patch -p0 < ./files/patch-z42-inject-maxrcpt  

  cd /usr/ports/distfiles/qmail-1.03
  cp -p conf-users conf-users.1.bak
  cp -p conf-groups conf-groups.1.bak
  
  grep -E '^(qmail|alias)' /etc/passwd | awk 'BEGIN {FS=":"; OFS=" ";} {if ($1 == "qmaill") {print $1,$3,"\nroot 0"} else {print $1,$3}}' > 
conf-users

  grep -E '^(qmail|nofiles)' /etc/group | awk 'BEGIN {FS=":"; OFS=" ";} {print $1,$3}' > conf-groups

  cp -p conf-qmail conf-qmail.1.bak
  echo "/usr/local/psa/qmail" > conf-qmail

  cd /usr/ports/security/openssl
  make install
  pkg-config --libs openssl > ssl.lib

  cd /usr/ports/distfiles/qmail-1.03/
  cp -p conf-spawn conf-spawn-2010-Oct-31.txt
  nano -w conf-spawn
  make
```
Any suggestions on how to get it to compile?


----------

