Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

icu-config removed from Debian #31

Closed
slavkoja opened this issue Dec 21, 2019 · 14 comments
Closed

icu-config removed from Debian #31

slavkoja opened this issue Dec 21, 2019 · 14 comments

Comments

@slavkoja
Copy link

I have my own Debian package for some time for Debian stretch (9), while i don't use it yet in production.

Recently I try to update it from 1.0.3 version to 1.2.6 on the Debian bullseye (11), but building fails on configure step, due missing icu-config, which was removed from debian's package with icu 63.1-6 (Debian buster) and it is deprecated by upstream too, as mentioned in bug report.

Please, don't use icu-config.

@frittentheke
Copy link

There are quite a few packages affected in Debian - https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=920900

But in the end icu-config is gone, so building fts-xapian on newer Debian Releases is unfortunately not possible without a change.

@frittentheke
Copy link

@slavkoja BTW, I used this little trick to build with Debian Buster on AMD64: LinearTapeFileSystem/ltfs#153

@slavkoja
Copy link
Author

slavkoja commented Jan 2, 2020

@frittentheke thanks for workaround, but IMO this have to be solved here, in configure script.

@grosjo
Copy link
Owner

grosjo commented Jan 17, 2020

Any suggestion to change configure script ?

@grosjo
Copy link
Owner

grosjo commented Jan 18, 2020

@cmouse any idea on that ?

@cmouse
Copy link
Contributor

cmouse commented Jan 18, 2020

pkg-config maybe?

grosjo added a commit that referenced this issue Jan 18, 2020
grosjo added a commit that referenced this issue Jan 18, 2020
@grosjo
Copy link
Owner

grosjo commented Jan 18, 2020

@slavkoja please kindly check latest git

grosjo added a commit that referenced this issue Jan 18, 2020
grosjo added a commit that referenced this issue Jan 18, 2020
grosjo added a commit that referenced this issue Jan 18, 2020
grosjo added a commit that referenced this issue Jan 18, 2020
grosjo added a commit that referenced this issue Jan 18, 2020
@slavkoja
Copy link
Author

@grosjo I ttried it, result is better and seems to work, but on debian the latest ICU version is 63, then configure fails:

...
checking for valgrind... no
checking for pkg-config... (cached) /usr/bin/pkg-config
checking pkg-config is at least version 0.25... yes
checking for ICU_UC... no
checking for ICU_I18N... no
configure: error: icu 64 or higher is required, but was not found.
make[1]: *** [debian/rules:17: override_dh_auto_configure] Error 1
make[1]: Leaving directory '/build/dovecot-xapian-1.2.6+git'
make: *** [debian/rules:14: build] Error 2
...

Please, is 64 really needed?

@grosjo
Copy link
Owner

grosjo commented Jan 19, 2020

I have no debian here. Can you put 63 in the configure.ac file, autoreconf -i, configure/make and test it ?

@slavkoja
Copy link
Author

I tried 63 already, and it compiles fain, with some warnings only:

In file included from fts-backend-xapian.cpp:51:
fts-backend-xapian-functions.cpp: In function 'bool fts_backend_xapian_index_text(Xapian::WritableDatabase*, uint, const char*, const char*, long int, long i
nt)':
fts-backend-xapian-functions.cpp:824:39: warning: format '%d' expects argument of type 'int', but argument 4 has type 'long int' [-Wformat=]
  824 |   if(verbose>1) i_info("NGRAM(%s,%s) %d max=%d",field,h,ngram->size,ngram->maxlength);
      |                                      ~^                 ~~~~~~~~~~~
      |                                       |                        |
      |                                       int                      long int
      |                                      %ld
fts-backend-xapian-functions.cpp:824:46: warning: format '%d' expects argument of type 'int', but argument 5 has type 'long int' [-Wformat=]
  824 |   if(verbose>1) i_info("NGRAM(%s,%s) %d max=%d",field,h,ngram->size,ngram->maxlength);
      |                                             ~^                      ~~~~~~~~~~~~~~~~
      |                                              |                             |
      |                                              int                           long int
      |                                             %ld
fts-backend-xapian.cpp: In function 'int fts_backend_xapian_init(fts_backend*, const char**)':
fts-backend-xapian.cpp:104:66: warning: format '%d' expects argument of type 'int', but argument 2 has type 'long int' [-Wformat=]
  104 |          i_error("FTS Xapian: 'partial' parameter is incorrect (%d). Try 'partial=2'",backend->partial);
      |                                                                 ~^                    ~~~~~~~~~~~~~~~~
      |                                                                  |                             |
      |                                                                  int                           long int
      |                                                                 %ld
fts-backend-xapian.cpp:109:63: warning: format '%d' expects argument of type 'int', but argument 2 has type 'long int' [-Wformat=]
  109 |          i_error("FTS Xapian: 'full' parameter is incorrect (%d). Try 'full=20'",backend->full);
      |                                                              ~^                  ~~~~~~~~~~~~~
      |                                                               |                           |
      |                                                               int                         long int
      |                                                              %ld

But success to compile tells near nothing about real usage and as i mentioned early, i do not use it yet, that is why i ask if 64 is really needed.

grosjo added a commit that referenced this issue Jan 21, 2020
@grosjo
Copy link
Owner

grosjo commented Jan 21, 2020

Ok, I fixed those warnings

Please kindly test with 63 for a little while and let me know

@grosjo
Copy link
Owner

grosjo commented Jan 21, 2020

Looking at API, it seems not changes have an impact on this plugin. However, your feedback is very welcome running on ICU 63

@slavkoja
Copy link
Author

Thanks for investigating this. I am sorry, i cannot provide feedback in reasonable time, because i have plan to use it in summer only.

I am still not sure if it will be useful for my users, because the xapian does not supports our language. But without compiling it i will not able to do any tests.

@grosjo
Copy link
Owner

grosjo commented Jan 21, 2020

Ok, I am closing this for now

@grosjo grosjo closed this as completed Jan 21, 2020
grosjo added a commit that referenced this issue Feb 3, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants