Modify

Opened 5 years ago

Closed 3 years ago

#12418 closed defect (moved_to_github)

dovecot compilation fails as @LIBICONV@ cannot be found

Reported by: anonymous Owned by: florian
Priority: normal Milestone: Barrier Breaker 14.07
Component: packages Version: Attitude Adjustment 12.09 Beta
Keywords: dovecot Cc:

Description

Hi,

dovecot does not compile in my setup, it always fails, as @LIBICONV@ cannot be found.

I tried to explicitely select libiconv or libiconv-full as well (they are not auto-selected), but this did not fix it.

My configuration is attached (one with dovecot currently not selected, this config DOES compile, another one with dovecot selected, this does NOT compile)

  • Attitude Adjustment beta (from branches)
  • Buffalo WZR-HP-AG300H
  • Built on a Debian 6 system

Attachments (4)

NO-DOVECOT-OK.config (89.0 KB) - added by rudermi@… 5 years ago.
config that DOES compile
DOVECOT-ERROR.config (88.9 KB) - added by rudermi@… 5 years ago.
config that does NOT compile
iconv.m4 (7.3 KB) - added by whoisterencelee 4 years ago.
trunk/staging_dir/target-mips_r2_eglibc-2.15/usr/share/aclocal/iconv.m4
iconv.2.m4 (4.9 KB) - added by whoisterencelee 4 years ago.
working /trunk/staging_dir/target-mips_r2_eglibc-2.15/usr/share/aclocal/iconv.m4

Download all attachments as: .zip

Change History (12)

Changed 5 years ago by rudermi@…

config that DOES compile

Changed 5 years ago by rudermi@…

config that does NOT compile

comment:1 Changed 5 years ago by anonymous

This is the complete error during compilation:

make[7]: Entering directory `/mnt/openwrt/attadj_12.09/build_dir/target-mips_r2_uClibc-0.9.33.2/dovecot-1.2.13/src/imap'
/bin/bash ../../libtool --tag=CC --mode=link mips-openwrt-linux-uclibc-gcc -std=gnu99 -Os -pipe -mips32r2 -mtune=mips32r2 -fno-caller-saves -fhonour-copts -Wno-error=unused-but-set-variable -msoft-float -Wall -W -Wmissing-prototypes -Wmissing-declarations -Wpointer-arith -Wchar-subscripts -Wformat=2 -Wbad-function-cast -Wstrict-aliasing=2 -I/mnt/openwrt/attadj_12.09/staging_dir/target-mips_r2_uClibc-0.9.33.2/usr/include -export-dynamic -L/mnt/openwrt/attadj_12.09/staging_dir/target-mips_r2_uClibc-0.9.33.2/usr/lib -L/mnt/openwrt/attadj_12.09/staging_dir/target-mips_r2_uClibc-0.9.33.2/lib -L/mnt/openwrt/attadj_12.09/staging_dir/toolchain-mips_r2_gcc-4.6-linaro_uClibc-0.9.33.2/usr/lib -L/mnt/openwrt/attadj_12.09/staging_dir/toolchain-mips_r2_gcc-4.6-linaro_uClibc-0.9.33.2/lib -o imap cmd-append.o cmd-capability.o cmd-cancelupdate.o cmd-check.o cmd-close.o cmd-copy.o cmd-create.o cmd-delete.o cmd-enable.o cmd-examine.o cmd-expunge.o cmd-fetch.o cmd-id.o cmd-idle.o cmd-list.o cmd-logout.o cmd-lsub.o cmd-namespace.o cmd-noop.o cmd-rename.o cmd-search.o cmd-select.o cmd-sort.o cmd-status.o cmd-store.o cmd-subscribe.o cmd-thread.o cmd-uid.o cmd-unselect.o cmd-unsubscribe.o cmd-x-cancel.o client.o commands.o commands-util.o imap-expunge.o imap-fetch.o imap-fetch-body.o imap-search.o imap-search-args.o imap-status.o imap-sync.o mail-storage-callbacks.o main.o ../../src/lib-storage/register/libstorage-register.a ../../src/lib-storage/list/libstorage_list.a ../../src/lib-storage/index/cydir/libstorage_cydir.a ../../src/lib-storage/index/dbox/libstorage_dbox.a ../../src/lib-storage/index/maildir/libstorage_maildir.a ../../src/lib-storage/index/mbox/libstorage_mbox.a ../../src/lib-storage/index/raw/libstorage_raw.a ../../src/lib-storage/index/shared/libstorage_shared.a ../../src/lib-storage/index/libstorage_index.a ../../src/lib-storage/libstorage.a ../../src/lib-index/libindex.a ../../src/lib-imap/libimap.a ../../src/lib-mail/libmail.a ../../src/lib-auth/libauth.a ../../src/lib-charset/libcharset.a ../../src/lib/liblib.a ../lib-dict/libdict.a ../lib/mountpoint.o @LIBICONV@ -export-dynamic -ldl -lrt
OpenWrt-libtool: link: mips-openwrt-linux-uclibc-gcc -std=gnu99 -Os -pipe -mips32r2 -mtune=mips32r2 -fno-caller-saves -fhonour-copts -Wno-error=unused-but-set-variable -msoft-float -Wall -W -Wmissing-prototypes -Wmissing-declarations -Wpointer-arith -Wchar-subscripts -Wformat=2 -Wbad-function-cast -Wstrict-aliasing=2 -I/mnt/openwrt/attadj_12.09/staging_dir/target-mips_r2_uClibc-0.9.33.2/usr/include -o imap cmd-append.o cmd-capability.o cmd-cancelupdate.o cmd-check.o cmd-close.o cmd-copy.o cmd-create.o cmd-delete.o cmd-enable.o cmd-examine.o cmd-expunge.o cmd-fetch.o cmd-id.o cmd-idle.o cmd-list.o cmd-logout.o cmd-lsub.o cmd-namespace.o cmd-noop.o cmd-rename.o cmd-search.o cmd-select.o cmd-sort.o cmd-status.o cmd-store.o cmd-subscribe.o cmd-thread.o cmd-uid.o cmd-unselect.o cmd-unsubscribe.o cmd-x-cancel.o client.o commands.o commands-util.o imap-expunge.o imap-fetch.o imap-fetch-body.o imap-search.o imap-search-args.o imap-status.o imap-sync.o mail-storage-callbacks.o main.o ../lib/mountpoint.o @LIBICONV@ -Wl,--export-dynamic -L/mnt/openwrt/attadj_12.09/staging_dir/target-mips_r2_uClibc-0.9.33.2/usr/lib -L/mnt/openwrt/attadj_12.09/staging_dir/target-mips_r2_uClibc-0.9.33.2/lib -L/mnt/openwrt/attadj_12.09/staging_dir/toolchain-mips_r2_gcc-4.6-linaro_uClibc-0.9.33.2/usr/lib -L/mnt/openwrt/attadj_12.09/staging_dir/toolchain-mips_r2_gcc-4.6-linaro_uClibc-0.9.33.2/lib ../../src/lib-storage/register/libstorage-register.a ../../src/lib-storage/list/libstorage_list.a ../../src/lib-storage/index/cydir/libstorage_cydir.a ../../src/lib-storage/index/dbox/libstorage_dbox.a ../../src/lib-storage/index/maildir/libstorage_maildir.a ../../src/lib-storage/index/mbox/libstorage_mbox.a ../../src/lib-storage/index/raw/libstorage_raw.a ../../src/lib-storage/index/shared/libstorage_shared.a ../../src/lib-storage/index/libstorage_index.a ../../src/lib-storage/libstorage.a ../../src/lib-index/libindex.a ../../src/lib-imap/libimap.a ../../src/lib-mail/libmail.a ../../src/lib-auth/libauth.a ../../src/lib-charset/libcharset.a ../../src/lib/liblib.a ../lib-dict/libdict.a -ldl -lrt
mips-openwrt-linux-uclibc-gcc: error: @LIBICONV@: No such file or directory
make[7]: * [imap] Error 1
make[7]: Leaving directory `/mnt/openwrt/attadj_12.09/build_dir/target-mips_r2_uClibc-0.9.33.2/dovecot-1.2.13/src/imap'

comment:2 Changed 5 years ago by florian

  • Owner changed from developers to florian
  • Status changed from new to assigned

comment:3 Changed 4 years ago by anonymous

I have the same issue, I wonder if there's any update?

I am compiling using eglibc, also selected libiconv-full.

Changed 4 years ago by whoisterencelee

trunk/staging_dir/target-mips_r2_eglibc-2.15/usr/share/aclocal/iconv.m4

comment:4 Changed 4 years ago by whoisterencelee

I think the problem is that aclocal is not returning @LIBICONV@

Even thou the file trunk/staging_dir/target-mips_r2_eglibc-2.15/usr/share/aclocal/iconv.m4 exists.

comment:5 Changed 4 years ago by whoisterencelee

Seems to be the case, as /dovecot.../config.h doesn't have HAVE_ICONV and ICONV_CONST defined, which should be according to https://www.gnu.org/software/gettext/manual/html_node/AM_005fICONV.html

/* Define if you have the iconv() function and it works. */
/* #undef HAVE_ICONV */

/* Define as const if the declaration of iconv() needs const. */
/* #undef ICONV_CONST */

Is this related to the openwrt libiconv-full patches?

Since I am compiling with eglibc, I would rather have dovecot use eglibc's iconv, not sure how to enforce that?

Last edited 4 years ago by whoisterencelee (previous) (diff)

comment:6 Changed 4 years ago by whoisterencelee

Looks like in iconv.m4 above, the iconv existence tests is done with ISO8859 to UTF8 and EUC-JP to UTF8 conversions, which I believe are striped out in libiconv-full (in the 100-strip_charsets.patch?)

I modified the trunk/staging_dir/target-mips_r2_eglibc-2.15/usr/share/aclocal/iconv.m4 as attached and removed dovecot from build_dir and re-configure, and now config.h defines the above varibles, which means dovecot compiled successfully.

I don't know if this means dovecot uses eglibc's iconv or libiconv, will check once I load it up into the router.

Changed 4 years ago by whoisterencelee

working /trunk/staging_dir/target-mips_r2_eglibc-2.15/usr/share/aclocal/iconv.m4

comment:7 Changed 4 years ago by jow

  • Milestone changed from Attitude Adjustment 12.09 to Barrier Breaker 14.07

Milestone Attitude Adjustment 12.09 deleted

comment:8 Changed 3 years ago by florian

  • Resolution set to moved_to_github
  • Status changed from assigned to closed

Add Comment

Modify Ticket

Action
as closed .
The resolution will be deleted. Next status will be 'reopened'.
Author


E-mail address and user name can be saved in the Preferences.

 
Note: See TracTickets for help on using tickets.