Opened 18 years ago

Closed 18 years ago

#80 closed defect (worksforme)

Problem building csharp bindings on x86_64 SuSE Linux

Reported by: Michael Schlenker Owned by: Olly Betts
Priority: high Milestone:
Component: Xapian-bindings Version: 0.9.6
Severity: normal Keywords:
Cc: Blocked By:
Blocking: Operating System: Linux

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.

  1. 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 (7)

comment:1 by Olly Betts, 18 years ago

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?

comment:2 by Michael Schlenker, 18 years ago

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...

comment:3 by Michael Schlenker, 18 years ago

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.

comment:4 by Olly Betts, 18 years ago

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

comment:5 by Olly Betts, 18 years ago

Status: newassigned

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...

comment:6 by Olly Betts, 18 years ago

Summary: Building/Install Problems on SuSE 10.1 x86_64Problem 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)?

comment:7 by Olly Betts, 18 years ago

Operating System: Linux
Resolution: worksforme
Status: assignedclosed

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.

Note: See TracTickets for help on using tickets.