svarshavchik / courier

Courier Mail Server
http://www.courier-mta.org
72 stars 12 forks source link

cone fails build on debian #36

Closed ObjectiveWriter closed 2 years ago

ObjectiveWriter commented 2 years ago

cone version 1.2 Debian version: 11.1 (bullseye) AND bookworm/sid

steps to reproduce: install Debian minimal, install all the required dev-tools and libraries (via apt) ./configure => success make => fails

output below


mpaccountadd.lo tmpaccountfolder.lo -lidn 
libtool: link: rm -fr  .libs/libmail.a .libs/libmail.la
libtool: link: ar cru .libs/libmail.a .libs/mail.o .libs/addmessage.o .libs/addmessageimport.o .libs/addmessageremoveattachments.o .libs/addressbook.o .libs/addressbookadd.o .libs/addressbookget.o .libs/addressbookopen.o .libs/addressbooksearch.o .libs/attachments.o .libs/autodecoder.o .libs/envelope.o .libs/base64.o .libs/copymessage.o .libs/decoder.o .libs/driver.o .libs/expungelist.o .libs/fd.o .libs/fdtls.o .libs/file.o .libs/generic.o .libs/genericdecode.o .libs/headers.o .libs/imap.o .libs/imapacl.o .libs/imapidle.o .libs/imaplogin.o .libs/imaplogout.o .libs/imapfetchhandler.o .libs/imaphandler.o .libs/imaphmac.o .libs/imapfolder.o .libs/imapfolders.o .libs/imaplisthandler.o .libs/imapparsefmt.o .libs/imapstatushandler.o .libs/logininfo.o .libs/maildir.o .libs/maildiradd.o .libs/maildirfolder.o .libs/mbox.o .libs/mboxadd.o .libs/mboxexpunge.o .libs/mboxfolder.o .libs/mboxgetmessage.o .libs/mboxlock.o .libs/mboxmagictag.o .libs/mboxmultilock.o .libs/mboxopen.o .libs/mboxread.o .libs/mboxsighandler.o .libs/mimetypes.o .libs/nntp.o .libs/nntpadd.o .libs/nntpcache.o .libs/nntpchecknew.o .libs/nntpfetch.o .libs/nntpfolder.o .libs/nntpgroup.o .libs/nntpgroupinfo.o .libs/nntpgroupopen.o .libs/nntplistactive.o .libs/nntplogin.o .libs/nntplogin2.o .libs/nntplogout.o .libs/nntpnewsrc.o .libs/nntppost.o .libs/nntpxover.o .libs/nntpxpat.o .libs/objectmonitor.o .libs/poll.o .libs/pop3.o .libs/pop3folder.o .libs/pop3maildrop.o .libs/qp.o .libs/rfc2047decode.o .libs/rfc2047encode.o .libs/rfcaddr.o .libs/runlater.o .libs/search.o .libs/smap.o .libs/smapacl.o .libs/smapadd.o .libs/smapaddmessage.o .libs/smapcopy.o .libs/smapcreate.o .libs/smapdelete.o .libs/smapfetch.o .libs/smapfetchattr.o .libs/smapidle.o .libs/smaplist.o .libs/smapmsgrange.o .libs/smapnewmail.o .libs/smapnoopexpunge.o .libs/smapopen.o .libs/smapsearch.o .libs/smapsendfolder.o .libs/smapstatus.o .libs/smapstore.o .libs/smtp.o .libs/smtpfolder.o .libs/snapshot.o .libs/sortfolders.o .libs/structure.o .libs/sync.o .libs/tmpaccount.o .libs/tmpaccountadd.o .libs/tmpaccountfolder.o 
ar: `u' modifier ignored since `D' is the default (see `U')
libtool: link: ranlib .libs/libmail.a
libtool: link: ( cd ".libs" && rm -f "libmail.la" && ln -s "../libmail.la" "libmail.la" )
/bin/bash ./libtool  --tag=CXX   --mode=link g++  -I../libs -I./../libs -g -O2 -static  -o mailtool mailtool.o libmail.la ../libs/rfc2045/librfc2045.la ../libs/rfc822/librfc822.la ../libs/rfc822/libencode.la ../libs/maildir/libmaildir.la ../libs/tcpd/libcouriertls.la -lcourier-unicode ../libs/liblock/liblock.la ../libs/libhmac/libhmac.la ../libs/md5/libmd5.la ../libs/sha1/libsha1.la ../libs/numlib/libnumlib.la ../libs/tcpd/libspipe.la ../libs/soxwrap/libsoxwrap.a `cat ../libs/maildir/maildir.libdeps ../libs/soxwrap/soxlibs.dep` 
cat: ../libs/maildir/maildir.libdeps: No such file or directory
libtool: link: g++ -I../libs -I./../libs -g -O2 -o mailtool mailtool.o  ./.libs/libmail.a ../libs/rfc2045/.libs/librfc2045.a ../libs/rfc822/.libs/librfc822.a -lidn ../libs/rfc822/.libs/libencode.a ../libs/maildir/.libs/libmaildir.a ../libs/tcpd/.libs/libcouriertls.a -lgnutls -lcourier-unicode ../libs/liblock/.libs/liblock.a ../libs/libhmac/.libs/libhmac.a ../libs/md5/.libs/libmd5.a ../libs/sha1/.libs/libsha1.a ../libs/numlib/.libs/libnumlib.a ../libs/tcpd/.libs/libspipe.a ../libs/soxwrap/libsoxwrap.a
/usr/bin/ld: ./.libs/libmail.a(search.o): in function `mail::searchOneMessage::search(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)':
/opt/cone/cone-1.2/libmail/search.C:924: undefined reference to `unicode::iconvert::operator()(char const*, unsigned long)'
/usr/bin/ld: ./.libs/libmail.a(search.o): in function `mail::searchOneMessage::checkNextHeader()':
/opt/cone/cone-1.2/libmail/search.C:612: undefined reference to `unicode::iconvert::begin(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
/usr/bin/ld: mailtool: hidden symbol `_ZN7unicode8iconvertclEPKcm' isn't defined
/usr/bin/ld: final link failed: bad value
collect2: error: ld returned 1 exit status
make[3]: *** [Makefile:679: mailtool] Error 1
make[3]: Leaving directory '/opt/cone/cone-1.2/libmail'
make[2]: *** [Makefile:601: all] Error 2
make[2]: Leaving directory '/opt/cone/cone-1.2/libmail'
make[1]: *** [Makefile:485: all-recursive] Error 1
make[1]: Leaving directory '/opt/cone/cone-1.2'
make: *** [Makefile:392: all] Error 2
ObjectiveWriter commented 2 years ago

bit more info with less verbose output


Making all in libmail
make[2]: Entering directory '/tmp/cone-1.2/libmail'
cp /dev/null libcouriertls.h ; . ../libs/tcpd/couriertls.config ; \
    test "$couriertls" != "" || exit 0 ; \
    echo '#define HAVE_LIBCOURIERTLS 1' >libcouriertls.h
make  all-am
make[3]: Entering directory '/tmp/cone-1.2/libmail'
  CXX      attachments.lo
  CXX      fd.lo
  CXX      fdtls.lo
  CXX      imaplogin.lo
  CXX      mimetypes.lo
  CXX      nntp.lo
  CXX      pop3.lo
  CXX      smtp.lo
  CXXLD    libmail.la
ar: `u' modifier ignored since `D' is the default (see `U')
  CXXLD    mailtool
cat: ../libs/maildir/maildir.libdeps: No such file or directory
/usr/bin/ld: ./.libs/libmail.a(search.o): in function `mail::searchOneMessage::search(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)':
/tmp/cone-1.2/libmail/search.C:924: undefined reference to `unicode::iconvert::operator()(char const*, unsigned long)'
/usr/bin/ld: ./.libs/libmail.a(search.o): in function `mail::searchOneMessage::checkNextHeader()':
/tmp/cone-1.2/libmail/search.C:612: undefined reference to `unicode::iconvert::begin(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
/usr/bin/ld: mailtool: hidden symbol `_ZN7unicode8iconvertclEPKcm' isn't defined
/usr/bin/ld: final link failed: bad value
collect2: error: ld returned 1 exit status
make[3]: *** [Makefile:679: mailtool] Error 1
make[3]: Leaving directory '/tmp/cone-1.2/libmail'
make[2]: *** [Makefile:601: all] Error 2
make[2]: Leaving directory '/tmp/cone-1.2/libmail'
make[1]: *** [Makefile:485: all-recursive] Error 1
make[1]: Leaving directory '/tmp/cone-1.2'
make: *** [Makefile:392: all] Error 2
svarshavchik commented 2 years ago

The issue is with libcourier-unicode.so, it's necessary to look into exactly how it was built or installed.

At the very least:

$ objdump -C -T /usr/lib64/libcourier-unicode.so | grep unicode::iconvert::operator

(or wherever libcourier-unicode.so was installed -- this should produce two lines of output that look like this (the exact numbers will vary):

000000000000e060 g    DF .text  0000000000000023  Base        unicode::iconvert::operator()(char const*, unsigned long)
000000000000e090 g    DF .text  0000000000000023  Base        unicode::iconvert::operator()(char32_t const*, unsigned long)

Also make V=1 should also produce verbose output showing the exact compilation and linking flags.

ObjectiveWriter commented 2 years ago
root@debian:/tmp/cone-1.2.20210522# objdump -C -T /usr/lib64/libcourier-unicode.so | grep unicode::iconvert::operator
objdump: '/usr/lib64/libcourier-unicode.so': No such file
root@debian:/tmp/cone-1.2.20210522# locate libcourier-unicode.so
/usr/lib/x86_64-linux-gnu/libcourier-unicode.so
/usr/lib/x86_64-linux-gnu/libcourier-unicode.so.4
/usr/lib/x86_64-linux-gnu/libcourier-unicode.so.4.1.0
root@debian:/tmp/cone-1.2.20210522# objdump -C -T /usr/lib/x86_64-linux-gnu/libcourier-unicode.so | grep unicode::iconvert::operator
root@debian:/tmp/cone-1.2.20210522# objdump -C -T /usr/lib/x86_64-linux-gnu/libcourier-unicode.so.4 | grep unicode::iconvert::operator
root@debian:/tmp/cone-1.2.20210522# objdump -C -T /usr/lib/x86_64-linux-gnu/libcourier-unicode.so.4.1.0 | grep unicode::iconvert::operator

installed via official debian repositories

root@debian:/tmp/cone-1.2.20210522# apt-cache search libcourier
libcourier-unicode-dev - Courier Unicode library (development files and headers)
libcourier-unicode4 - Courier Unicode library (shared runtime library)
root@debian:/tmp/cone-1.2.20210522# apt-get install libcourier-unicode-dev libcourier-unicode4
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
libcourier-unicode-dev is already the newest version (2.1.2-2).
libcourier-unicode4 is already the newest version (2.1.2-2).
libcourier-unicode4 set to manually installed.
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.

make V=1 as requested


libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I.. -I./.. -I../libs -I./../libs -Wall -I../libs -I./../libs -g -O2 -MT structure.lo -MD -MP -MF .deps/structure.Tpo -c structure.C -o structure.o >/dev/null 2>&1
mv -f .deps/structure.Tpo .deps/structure.Plo
/bin/bash ./libtool  --tag=CXX   --mode=compile g++ -DHAVE_CONFIG_H -I.   -I.. -I./.. -I../libs -I./../libs  -Wall   -I../libs -I./../libs -g -O2 -MT sync.lo -MD -MP -MF .deps/sync.Tpo -c -o sync.lo sync.C
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I.. -I./.. -I../libs -I./../libs -Wall -I../libs -I./../libs -g -O2 -MT sync.lo -MD -MP -MF .deps/sync.Tpo -c sync.C  -fPIC -DPIC -o .libs/sync.o
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I.. -I./.. -I../libs -I./../libs -Wall -I../libs -I./../libs -g -O2 -MT sync.lo -MD -MP -MF .deps/sync.Tpo -c sync.C -o sync.o >/dev/null 2>&1
mv -f .deps/sync.Tpo .deps/sync.Plo
/bin/bash ./libtool  --tag=CXX   --mode=compile g++ -DHAVE_CONFIG_H -I.   -I.. -I./.. -I../libs -I./../libs  -Wall   -I../libs -I./../libs -g -O2 -MT tmpaccount.lo -MD -MP -MF .deps/tmpaccount.Tpo -c -o tmpaccount.lo tmpaccount.C
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I.. -I./.. -I../libs -I./../libs -Wall -I../libs -I./../libs -g -O2 -MT tmpaccount.lo -MD -MP -MF .deps/tmpaccount.Tpo -c tmpaccount.C  -fPIC -DPIC -o .libs/tmpaccount.o
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I.. -I./.. -I../libs -I./../libs -Wall -I../libs -I./../libs -g -O2 -MT tmpaccount.lo -MD -MP -MF .deps/tmpaccount.Tpo -c tmpaccount.C -o tmpaccount.o >/dev/null 2>&1
mv -f .deps/tmpaccount.Tpo .deps/tmpaccount.Plo
/bin/bash ./libtool  --tag=CXX   --mode=compile g++ -DHAVE_CONFIG_H -I.   -I.. -I./.. -I../libs -I./../libs  -Wall   -I../libs -I./../libs -g -O2 -MT tmpaccountadd.lo -MD -MP -MF .deps/tmpaccountadd.Tpo -c -o tmpaccountadd.lo tmpaccountadd.C
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I.. -I./.. -I../libs -I./../libs -Wall -I../libs -I./../libs -g -O2 -MT tmpaccountadd.lo -MD -MP -MF .deps/tmpaccountadd.Tpo -c tmpaccountadd.C  -fPIC -DPIC -o .libs/tmpaccountadd.o
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I.. -I./.. -I../libs -I./../libs -Wall -I../libs -I./../libs -g -O2 -MT tmpaccountadd.lo -MD -MP -MF .deps/tmpaccountadd.Tpo -c tmpaccountadd.C -o tmpaccountadd.o >/dev/null 2>&1
mv -f .deps/tmpaccountadd.Tpo .deps/tmpaccountadd.Plo
/bin/bash ./libtool  --tag=CXX   --mode=compile g++ -DHAVE_CONFIG_H -I.   -I.. -I./.. -I../libs -I./../libs  -Wall   -I../libs -I./../libs -g -O2 -MT tmpaccountfolder.lo -MD -MP -MF .deps/tmpaccountfolder.Tpo -c -o tmpaccountfolder.lo tmpaccountfolder.C
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I.. -I./.. -I../libs -I./../libs -Wall -I../libs -I./../libs -g -O2 -MT tmpaccountfolder.lo -MD -MP -MF .deps/tmpaccountfolder.Tpo -c tmpaccountfolder.C  -fPIC -DPIC -o .libs/tmpaccountfolder.o
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I.. -I./.. -I../libs -I./../libs -Wall -I../libs -I./../libs -g -O2 -MT tmpaccountfolder.lo -MD -MP -MF .deps/tmpaccountfolder.Tpo -c tmpaccountfolder.C -o tmpaccountfolder.o >/dev/null 2>&1
mv -f .deps/tmpaccountfolder.Tpo .deps/tmpaccountfolder.Plo
/bin/bash ./libtool  --tag=CXX   --mode=link g++  -I../libs -I./../libs -g -O2   -o libmail.la  mail.lo addmessage.lo addmessageimport.lo addmessageremoveattachments.lo addressbook.lo addressbookadd.lo addressbookget.lo addressbookopen.lo addressbooksearch.lo attachments.lo autodecoder.lo envelope.lo base64.lo copymessage.lo decoder.lo driver.lo expungelist.lo fd.lo fdtls.lo file.lo generic.lo genericdecode.lo headers.lo imap.lo imapacl.lo imapidle.lo imaplogin.lo imaplogout.lo imapfetchhandler.lo imaphandler.lo imaphmac.lo imapfolder.lo imapfolders.lo imaplisthandler.lo imapparsefmt.lo imapstatushandler.lo logininfo.lo maildir.lo maildiradd.lo maildirfolder.lo mbox.lo mboxadd.lo mboxexpunge.lo mboxfolder.lo mboxgetmessage.lo mboxlock.lo mboxmagictag.lo mboxmultilock.lo mboxopen.lo mboxread.lo mboxsighandler.lo mimetypes.lo nntp.lo nntpadd.lo nntpcache.lo nntpchecknew.lo nntpfetch.lo nntpfolder.lo nntpgroup.lo nntpgroupinfo.lo nntpgroupopen.lo nntplistactive.lo nntplogin.lo nntplogin2.lo nntplogout.lo nntpnewsrc.lo nntppost.lo nntpxover.lo nntpxpat.lo objectmonitor.lo poll.lo pop3.lo pop3folder.lo pop3maildrop.lo qp.lo rfc2047decode.lo rfc2047encode.lo rfcaddr.lo runlater.lo search.lo smap.lo smapacl.lo smapadd.lo smapaddmessage.lo smapcopy.lo smapcreate.lo smapdelete.lo smapfetch.lo smapfetchattr.lo smapidle.lo smaplist.lo smapmsgrange.lo smapnewmail.lo smapnoopexpunge.lo smapopen.lo smapsearch.lo smapsendfolder.lo smapstatus.lo smapstore.lo smtp.lo smtpfolder.lo snapshot.lo sortfolders.lo structure.lo sync.lo tmpaccount.lo tmpaccountadd.lo tmpaccountfolder.lo -lidn 
libtool: link: ar cru .libs/libmail.a .libs/mail.o .libs/addmessage.o .libs/addmessageimport.o .libs/addmessageremoveattachments.o .libs/addressbook.o .libs/addressbookadd.o .libs/addressbookget.o .libs/addressbookopen.o .libs/addressbooksearch.o .libs/attachments.o .libs/autodecoder.o .libs/envelope.o .libs/base64.o .libs/copymessage.o .libs/decoder.o .libs/driver.o .libs/expungelist.o .libs/fd.o .libs/fdtls.o .libs/file.o .libs/generic.o .libs/genericdecode.o .libs/headers.o .libs/imap.o .libs/imapacl.o .libs/imapidle.o .libs/imaplogin.o .libs/imaplogout.o .libs/imapfetchhandler.o .libs/imaphandler.o .libs/imaphmac.o .libs/imapfolder.o .libs/imapfolders.o .libs/imaplisthandler.o .libs/imapparsefmt.o .libs/imapstatushandler.o .libs/logininfo.o .libs/maildir.o .libs/maildiradd.o .libs/maildirfolder.o .libs/mbox.o .libs/mboxadd.o .libs/mboxexpunge.o .libs/mboxfolder.o .libs/mboxgetmessage.o .libs/mboxlock.o .libs/mboxmagictag.o .libs/mboxmultilock.o .libs/mboxopen.o .libs/mboxread.o .libs/mboxsighandler.o .libs/mimetypes.o .libs/nntp.o .libs/nntpadd.o .libs/nntpcache.o .libs/nntpchecknew.o .libs/nntpfetch.o .libs/nntpfolder.o .libs/nntpgroup.o .libs/nntpgroupinfo.o .libs/nntpgroupopen.o .libs/nntplistactive.o .libs/nntplogin.o .libs/nntplogin2.o .libs/nntplogout.o .libs/nntpnewsrc.o .libs/nntppost.o .libs/nntpxover.o .libs/nntpxpat.o .libs/objectmonitor.o .libs/poll.o .libs/pop3.o .libs/pop3folder.o .libs/pop3maildrop.o .libs/qp.o .libs/rfc2047decode.o .libs/rfc2047encode.o .libs/rfcaddr.o .libs/runlater.o .libs/search.o .libs/smap.o .libs/smapacl.o .libs/smapadd.o .libs/smapaddmessage.o .libs/smapcopy.o .libs/smapcreate.o .libs/smapdelete.o .libs/smapfetch.o .libs/smapfetchattr.o .libs/smapidle.o .libs/smaplist.o .libs/smapmsgrange.o .libs/smapnewmail.o .libs/smapnoopexpunge.o .libs/smapopen.o .libs/smapsearch.o .libs/smapsendfolder.o .libs/smapstatus.o .libs/smapstore.o .libs/smtp.o .libs/smtpfolder.o .libs/snapshot.o .libs/sortfolders.o .libs/structure.o .libs/sync.o .libs/tmpaccount.o .libs/tmpaccountadd.o .libs/tmpaccountfolder.o 
ar: `u' modifier ignored since `D' is the default (see `U')
libtool: link: ranlib .libs/libmail.a
libtool: link: ( cd ".libs" && rm -f "libmail.la" && ln -s "../libmail.la" "libmail.la" )
/bin/bash ./libtool  --tag=CXX   --mode=link g++  -I../libs -I./../libs -g -O2 -static  -o mailtool mailtool.o libmail.la ../libs/rfc2045/librfc2045.la ../libs/rfc822/librfc822.la ../libs/rfc822/libencode.la ../libs/maildir/libmaildir.la ../libs/tcpd/libcouriertls.la -lcourier-unicode ../libs/liblock/liblock.la ../libs/libhmac/libhmac.la ../libs/md5/libmd5.la ../libs/sha1/libsha1.la ../libs/numlib/libnumlib.la ../libs/tcpd/libspipe.la ../libs/soxwrap/libsoxwrap.a `cat ../libs/maildir/maildir.libdeps ../libs/soxwrap/soxlibs.dep` 
cat: ../libs/maildir/maildir.libdeps: No such file or directory
libtool: link: g++ -I../libs -I./../libs -g -O2 -o mailtool mailtool.o  ./.libs/libmail.a ../libs/rfc2045/.libs/librfc2045.a ../libs/rfc822/.libs/librfc822.a -lidn ../libs/rfc822/.libs/libencode.a ../libs/maildir/.libs/libmaildir.a ../libs/tcpd/.libs/libcouriertls.a -lssl -lcrypto -lcourier-unicode ../libs/liblock/.libs/liblock.a ../libs/libhmac/.libs/libhmac.a ../libs/md5/.libs/libmd5.a ../libs/sha1/.libs/libsha1.a ../libs/numlib/.libs/libnumlib.a ../libs/tcpd/.libs/libspipe.a ../libs/soxwrap/libsoxwrap.a
/usr/bin/ld: ./.libs/libmail.a(search.o): in function `mail::searchOneMessage::search(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)':
/tmp/cone-1.2.20210522/libmail/search.C:924: undefined reference to `unicode::iconvert::operator()(char const*, unsigned long)'
/usr/bin/ld: ./.libs/libmail.a(search.o): in function `mail::searchOneMessage::checkNextHeader()':
/tmp/cone-1.2.20210522/libmail/search.C:612: undefined reference to `unicode::iconvert::begin(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
/usr/bin/ld: mailtool: hidden symbol `_ZN7unicode8iconvertclEPKcm' isn't defined
/usr/bin/ld: final link failed: bad value
collect2: error: ld returned 1 exit status
make[3]: *** [Makefile:680: mailtool] Error 1
make[3]: Leaving directory '/tmp/cone-1.2.20210522/libmail'
make[2]: *** [Makefile:602: all] Error 2
make[2]: Leaving directory '/tmp/cone-1.2.20210522/libmail'
make[1]: *** [Makefile:486: all-recursive] Error 1
make[1]: Leaving directory '/tmp/cone-1.2.20210522'
make: *** [Makefile:393: all] Error 2
svarshavchik commented 2 years ago

This looks like an issue with Debian's courier-unicode package. It looks to be fairly old (at least 3 ABI revisions older than the current version), and/or not built correctly. It needs to be updated to the current version, and rebuilt.

I don't maintain Debian's packages, can you reach out to Debian's package maintainer?

ObjectiveWriter commented 2 years ago

I can try writing them an e-mail. IF/when they get to it is another matter.

is there an option that i am not seeing so i can like do a static all in one binary build or somethingas an intermittent fix till that gets done? Because that "tiny" issue is ltierally the thing preventing me from upgrading from an older netbook to a newer laptop.

i also tried building an oder version, but those also fail to build btw.

svarshavchik commented 2 years ago

I am not certain that the current version of cone can even link with the much older courier-unicode version. If the Debian package installs the libcourier-unicode.a static library, it might be doable by manually editing the Makefile and doing a static link against -lcourier-unicode only. But if it doesn't, it's not possible to statically link with a static library that's not installed.

ObjectiveWriter commented 2 years ago

I am happy to give this a spin, or as i am in a vm already.

unfortunatly i dont know enough on how to make a debian package of the newer version of the libary or i would be doing that.

ObjectiveWriter commented 2 years ago

as an example of older versions, 0.89-1 fails with the following error, on the current debian. (however i know that on the old netbook that one is running fine. (installed when all was current) and just updated the system around it to the newest debian.


libtool: link: ( cd ".libs" && rm -f "libspipe.la" && ln -s "../libspipe.la" "libspipe.la" )
/bin/bash ./libtool --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.   -I/usr/include/p11-kit-1  -I./.. -I.. -Wall -g -O2 -MT tlscache.lo -MD -MP -MF .deps/tlscache.Tpo -c -o tlscache.lo tlscache.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I/usr/include/p11-kit-1 -I./.. -I.. -Wall -g -O2 -MT tlscache.lo -MD -MP -MF .deps/tlscache.Tpo -c tlscache.c  -fPIC -DPIC -o .libs/tlscache.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I/usr/include/p11-kit-1 -I./.. -I.. -Wall -g -O2 -MT tlscache.lo -MD -MP -MF .deps/tlscache.Tpo -c tlscache.c -o tlscache.o >/dev/null 2>&1
mv -f .deps/tlscache.Tpo .deps/tlscache.Plo
/bin/bash ./libtool --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.   -I/usr/include/p11-kit-1  -I./.. -I.. -Wall -g -O2 -MT libcouriergnutls.lo -MD -MP -MF .deps/libcouriergnutls.Tpo -c -o libcouriergnutls.lo libcouriergnutls.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I/usr/include/p11-kit-1 -I./.. -I.. -Wall -g -O2 -MT libcouriergnutls.lo -MD -MP -MF .deps/libcouriergnutls.Tpo -c libcouriergnutls.c  -fPIC -DPIC -o .libs/libcouriergnutls.o
libcouriergnutls.c:12:10: fatal error: gnutls/extra.h: No such file or directory
   12 | #include <gnutls/extra.h>
roelvanmeer commented 2 years ago

Since this is still open: I managed to build cone on Debian Bullseye. If you want I can share the packaging files and/or the packages themselves.

svarshavchik commented 2 years ago

That's not necessary. In the meantime I've done some work and all Courier packages have scripts that build the source tarballs directly into installable deb packages. This was done on Ubuntu, but it should work on Debian, at most with minimal tweaks.