[rkward-tracker] [ rkward-Bugs-1482468 ] build error on 0.3.6 cannot find -lRlapack

SourceForge.net noreply at sourceforge.net
Sat May 6 15:09:40 UTC 2006


Bugs item #1482468, was opened at 2006-05-05 08:11
Message generated for change (Comment added) made by braverock
You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=459007&aid=1482468&group_id=50231

Please note that this message will contain a full copy of the comment thread,
including the initial issue submission, for this request,
not just the latest update.
Category: None
Group: None
>Status: Closed
Resolution: None
Priority: 5
Submitted By: Brian Peterson (braverock)
Assigned to: Nobody/Anonymous (nobody)
Summary: build error on 0.3.6 cannot find -lRlapack

Initial Comment:
I've successfu0lly built and used rkward-0.3.5.  I was
trying to create a Gentoo ebuild package file for
rkward 0.3.6 so that upgrades would be easier, and
distribution of rkward would be greater.  From both the
ebuild and from trying to build from a shell, the build
fails with the following:

i686-pc-linux-gnu-g++ -DHAVE_CONFIG_H -I. -I. -I..
-I/usr/kde/3.5/include -I/usr/qt/3/include -I.  
-DQT_THREAD_SUPPORT  -D_REENTRANT  -Wnon-virtual-dtor
-Wno-long-long -Wundef -Wall -W -Wpointer-arith
-Wwrite-strings -ansi -D_XOPEN_SOURCE=500 -D_BSD_SOURCE
-Wcast-align -Wconversion -Wchar-subscripts -O2 -O2
-march=pentium3 -fomit-frame-pointer -Wformat-security
-Wmissing-format-attribute -fno-exceptions
-fno-check-new -fno-common  -c -o rkward_skel.o `test
-f 'rkward_skel.cpp' || echo './'`rkward_skel.cpp
/bin/sh ../libtool --silent --mode=link --tag=CXX
i686-pc-linux-gnu-g++  -Wnon-virtual-dtor
-Wno-long-long -Wundef -Wall -W -Wpointer-arith
-Wwrite-strings -ansi -D_XOPEN_SOURCE=500 -D_BSD_SOURCE
-Wcast-align -Wconversion -Wchar-subscripts -O2 -O2
-march=pentium3 -fomit-frame-pointer -Wformat-security
-Wmissing-format-attribute -fno-exceptions
-fno-check-new -fno-common    -o rkward.bin -L/usr/lib
-L/usr/qt/3/lib -L/usr/kde/3.5/lib  -R /usr/kde/3.5/lib
-R /usr/qt/3/lib -R /usr/lib rkwatch.o rkward.o main.o
rkglobals.o robjectbrowser.o rkeditormanager.o
robjectviewer.o khelpdlg.o rkconsole.o rkward_skel.o
../rkward/windows/libwindows.a
../rkward/agents/libagents.a
../rkward/dialogs/libdialogs.a
../rkward/plugin/libplugin.a
../rkward/settings/libsettings.a
../rkward/dataeditor/libdataeditor.a
../rkward/core/libcore.a
../rkward/rbackend/librbackend.a
../rkward/scriptbackends/libscriptbackends.a
../rkward/misc/libmisc.a -lkhtml -lkmdi -lkio -lkdeui
-lkdecore -lqt-mt  -lz -lpng -lz -lm -lXext -lX11  -lSM
-lICE -lpthread  -L/usr/lib/R/lib -lR -lRlapack
-lkatepartinterfaces
/usr/lib/gcc/i686-pc-linux-gnu/3.4.4/../../../../i686-pc-linux-gnu/bin/ld:
cannot find -lRlapack
collect2: ld returned 1 exit status
make[3]: *** [rkward.bin] Error 1

I think that lib Rlapack is missing.  I'm wondering if
this is something configured wrong in the build
configuration. 

I'm using R-2.2.1 with blas and lapack support compiled in.

I'm using lapack-3.0, and blas-19980702-r2.

When I look for lapack libraries that could be linked
with rkward, I see:

/usr/lib/R/modules/lapack.so
/usr/lib/liblapack.a
/usr/lib/lapack
/usr/lib/lapack/atlas
/usr/lib/lapack/atlas/liblapack.so.0
/usr/lib/lapack/atlas/liblapack.so.0.0.0
/usr/lib/lapack/atlas/liblapack.so
/usr/lib/lapack/atlas/liblapack.la
/usr/lib/lapack/atlas/liblapack.a
/usr/lib/lapack/current
/usr/lib/lapack/f77-ATLAS
/usr/lib/liblapack.so
/usr/lib/liblapack.so.0

So, I suspect that rkward probably needs 
/usr/lib/R/modules/lapack.so (what else could Rlapack
be?).  I tried a symbolic link from 
sudo ln -s /usr/lib/R/modules/lapack.so
/usr/lib/Rlapack.so 
but that didn't do it.

I'll try to look deeper into the code at issue, but any
assistance would be appreciated.

Regards,

   - Brian Peterson



----------------------------------------------------------------------

>Comment By: Brian Peterson (braverock)
Date: 2006-05-06 10:09

Message:
Logged In: YES 
user_id=204919

Sorry about the Assigned To field.  I just know that
Sourceforge, by default, won't notify developers of new
Tracker items like it does for Forum posts. Also, many
projects make extensive use of the Assigned To field for
triage and coordination.  (I run or contribute to a couple
of SF's top 100 projects).

Creating the symbolic link resolved the problem.  I suggest
that you may want to check and see if R was built with
lapack support before making a requirement like this.

I also got a couple of build sandbox errors which I was able
to work around in the ebuild script.  I'm going to test on a
few more machines, and then I'll submit the ebuild both to
Gentoo for inclusion and to the RKWard project via the
Patches tracker.

I'll mark this as closed, but I think you still want to
consider how to make the rkward build process more
resilient, and continue to support R 2.2.x, since R 2.3.0
was only released on 2006-04-24, and is not yet widely
deployed (or packaged with any distro that I'm aware of yet).

Regards,

  - Brian

----------------------------------------------------------------------

Comment By: Thomas Friedrichsmeier (tfry)
Date: 2006-05-05 08:46

Message:
Logged In: YES 
user_id=300591

Thanks for your bug-report, and of course thanks for your
packaging efforts!

In RKWard 0.3.6 I added the -lRlapack switch, as otherwise,
with R 2.3.0, sometimes some base packages could not be
loaded due to unresolved symbols. RKWard itself does not use
the library, but this way it loads it for R packages to use.
I have not fully investigated, why exactly this happens.
In fact, ATM, I do not seem to be able to reproduce this.
Maybe it was a temporary bug in one of the pre-release
versions of R 2.3.0 I tested, and has since been fixed. I do
not know, and would appreciate any insight.

Ok, how to work around this? Probably the most
straightforward way would be to edit rkward/Makefile.am and
remove the -lRlapack switch there (I do not know, whether
this is possible in gentoo packaging, but I hope so). If
everything works fine, then (remember to test with R 2.3.0,
too), that should be the best way, and I'll probably remove
the switch in the next release of RKWard (after some more
testing).

You might also try some other things first:
1) ln -s /usr/lib/R/modules/lapack.so
/usr/lib/R/lib/libRlapack.so (that is the location ldd will
be searching for -lRlapack)
2) Upgrade to R 2.3.0. Maybe some configuration options
changed there.

Please keep me up-to-date on whether or not this works.

Regards
Thomas

P.S.: Please don't set the "Assigned to" field, when
submitting bug reports. We don't really use this field ATM,
but it's rather intended to be an internal way of signalling
"I'm taking care of this" among the developers, not a
setting intended to be made by the submitter.

----------------------------------------------------------------------

You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=459007&aid=1482468&group_id=50231




More information about the rkward-tracker mailing list