Ticket #80 (closed defect: worksforme)

Opened 3 years ago

Last modified 23 months ago

Problem building csharp bindings on x86_64 SuSE Linux

Reported by: schlenk Owned by: olly
Priority: high Milestone:
Component: Xapian-bindings Version: 0.9.6
Severity: normal Keywords:
Cc: Blocked By:
Operating System: Linux Blocking:

Description

I tried to build Xapian on SuSE 10.1 x86_64 box and stumbled across some issues:

1. The apidoc build process didn't go through, it terminated on refman.dvi. No idea whats broken, its a standard suse tetex install. Just commented out the stuff in the Makefile and touch some files to go on.

2. csharp Bindings could not be installed into /usr/local/lib64 I built with --libdir=/usr/local/lib64 due to the default system layout of SUSE on x86_64 and all went well.

See: schlenk@chronos:~/devel/xapian/xapian-bindings/csharp> sudo make install make install-recursive make[1]: Entering directory `/home/schlenk/devel/xapian/xapian-bindings/csharp' Making install in docs make[2]: Entering directory `/home/schlenk/devel/xapian/xapian-bindings/csharp/docs' make[3]: Entering directory `/home/schlenk/devel/xapian/xapian-bindings/csharp/docs' make[3]: Nothing to be done for `install-exec-am'.

test -z "/usr/local/share/doc/xapian-bindings/csharp" mkdir -p -- "/usr/local/share/doc/xapian-bindings/csharp"

/usr/bin/install -c -m 644 'bindings.html'

'/usr/local/share/doc/xapian-bindings/csharp/bindings.html'

test -z "/usr/local/share/doc/xapian-bindings/csharp/examples" mkdir -p -- "/usr/local/share/doc/xapian-bindings/csharp/examples"

/usr/bin/install -c -m 644 'examples/SimpleSearch.cs'

'/usr/local/share/doc/xapian-bindings/csharp/examples/SimpleSearch.cs'

/usr/bin/install -c -m 644 'examples/SimpleIndex.cs'

'/usr/local/share/doc/xapian-bindings/csharp/examples/SimpleIndex.cs' make[3]: Leaving directory `/home/schlenk/devel/xapian/xapian-bindings/csharp/docs' make[2]: Leaving directory `/home/schlenk/devel/xapian/xapian-bindings/csharp/docs' make[2]: Entering directory `/home/schlenk/devel/xapian/xapian-bindings/csharp' make[3]: Entering directory `/home/schlenk/devel/xapian/xapian-bindings/csharp'

test -z "/usr/local/lib64" mkdir -p -- "/usr/local/lib64"

/bin/sh ../libtool --mode=install /usr/bin/install -c 'XapianSharp?.la'

'/usr/local/lib64/XapianSharp.la' libtool: install: error: cannot install `XapianSharp?.la' to a directory not ending in /usr/local/lib make[3]: *** [install-libLTLIBRARIES] Error 1 make[3]: Leaving directory `/home/schlenk/devel/xapian/xapian-bindings/csharp' make[2]: *** [install-am] Error 2 make[2]: Leaving directory `/home/schlenk/devel/xapian/xapian-bindings/csharp' make[1]: *** [install-recursive] Error 1 make[1]: Leaving directory `/home/schlenk/devel/xapian/xapian-bindings/csharp' make: *** [install] Error 2

Change History

Changed 3 years ago by olly

Are you building the 0.9.6 or from SVN? You gave 0.9.6 as the version, but the Adirectory name and the fact it's trying to build apidoc at all point to an SVN tree...

Either way, it'd be useful to see the error message when trying to build refman.dvi.

Also, how did you configure xapian-core and xapian-bindings?

Changed 3 years ago by schlenk

It is in fact a svn checkout of svn://svn.xapian.org/xapian/tags/0.9.6.

My configure line was ./configure --libdir=/usr/local/lib64

I can retry with the svn trunk if that helps...

Changed 3 years ago by schlenk

Found the culprit for the doc building problem.

SuSE 10.1 by default installs pdfelatex instead of a normal latex, which is just a symlink. Pdfelatex creates a pdf directly without a dvi in between, but can be forced to create dvi with the -output-format=dvi switch. Stupid, they should have at least installed a shellscript that sets the default to dvi.

Changed 3 years ago by olly

I've split off the pdfelatex problem into a separate bug: http://www.xapian.org/cgi-bin/bugzilla/show_bug.cgi?id=81

Changed 3 years ago by olly

  • status changed from new to assigned

Looking at libtool, it should only complain that you *aren't* trying to install in libdir (and only on some platforms) - i.e. the error message is of the form:

libtool: install: error: cannot install `LIBRARY' to a directory not ending in LIBDIR

I wonder if the source tree is confused by attempting to re-configure without having cleaned up from a previous configure. Can you try "make distclean" on the source tree, then reconfigure with:

./configure --libdir=/usr/local/lib64

And then try to build...

Changed 2 years ago by olly

  • summary changed from Building/Install Problems on SuSE 10.1 x86_64 to Problem building csharp bindings on x86_64 SuSE Linux

Hi Michael - this bug is currently stuck waiting for further input.

Could you try to reconfigure and rebuild from scratch and see if that helps (see comment #5)?

Changed 23 months ago by olly

  • status changed from assigned to closed
  • resolution set to worksforme

I've just tried to reproduce this on a SuSE 10 x86-64 box, but it works correctly for me.

I don't have root access, but used "libtool --dry-run". If I try to install using "--dry-run" in /usr/local/lib having configured with --libdir=/usr/local/lib64 then I do get this error from libtool, so the check that you hit is still being performed.

My best guess is that you initially configured without --libdir, ran "make", then realised that the libdir was wrong, so ran configure with --libdir, but without running "make distclean" to clean up the source tree so some of the old configuration remained.

So I'm closing this as "WORKSFORME". If you're able to reproduce this, please reopen and give the exact commands to reproduce this starting from a cleanly unpacked source tree.

Changed 23 months ago by trac

  • platform set to Linux
Note: See TracTickets for help on using tickets.