Re: CMake build system progress

Felix Salfelder <[email protected]>
Newsgroups gmane.comp.gnu.gnucap.devel
Message-ID <[email protected]>
On Tue, May 20, 2014 at 03:12:37PM -0500, Kevin Zheng wrote:
> Hi Felix,
> 
> On 05/20/2014 14:49, Felix Salfelder wrote:
> > Linking CXX executable gnucap-modelgen
> > ../lib/libgnucap.so: undefined reference to `dlerror'
> > ../lib/libgnucap.so: undefined reference to `dlopen'
> > ../lib/libgnucap.so: undefined reference to `dlclose'
> > collect2: error: ld returned 1 exit status
> > modelgen/CMakeFiles/gnucap-modelgen.dir/build.make:314: recipe for target 'modelgen/gnucap-modelgen' failed
> > make[2]: *** [modelgen/gnucap-modelgen] Error 1
> 
> Sorry, that was me being clumsy and forgetting to link with libdl even
> though I checked for it earlier. My operating system provides these
> functions with -lc, so no linker flag is required.
> 
> I committed a fix in 61018a8, but I'm not able to test it. Could you try
> to build it again?

ok. now i get an exacutable main/gnucap-ui (why ui?).
afaics, it works
$ chrpath main/gnucap-ui
main/gnucap-ui: RPATH=/home/felix/extern/gnucap-upstream/cmake_build/lib:/home/felix/extern/gnucap-upstream/cmake_build/apps
$ main/gnucap-ui 
Gnucap : The Gnu Circuit Analysis Package
Never trust any version less than 1.0
Copyright 1982-2013, Albert Davis
Gnucap comes with ABSOLUTELY NO WARRANTY
This is free software, and you are welcome
to redistribute it under the terms of 
the GNU General Public License, version 3 or later.
See the file "COPYING" for details.
main version: 2013.04.23 RCS 26.138
core-lib version: 2013.04.23 RCS 26.138
> quit

then, i tried to install:
$ make install DESTDIR=/tmp/GC
[..]
$ find /tmp/GC
/tmp/GC
/tmp/GC/usr
/tmp/GC/usr/local
/tmp/GC/usr/local/bin
/tmp/GC/usr/local/bin/gnucap-modelgen
/tmp/GC/usr/local/bin/gnucap
/tmp/GC/usr/local/lib
/tmp/GC/usr/local/lib/x86_64-linux-gnu
/tmp/GC/usr/local/lib/x86_64-linux-gnu/libgnucap.so
/tmp/GC/usr/local/lib/x86_64-linux-gnu/libgnucap-default-plugins.so

the headers are missing. also, i'm pretty sure that
libgnucap-default-plugins.so should be a plugin and, as such, not be
exposed to global namespace. (unfortunately there is some trouble with
output code symbols involved, see the mailing list archive).

how can i customize the prefix?

and.. while we're at it:
$ readelf -d /tmp/GC/usr/local/lib/x86_64-linux-gnu/libgnucap.so |grep
SONAME 0x000000000000000e (SONAME)             Library soname: [libgnucap.so]
i think this is suboptimal, perhaps we should either not ship a shared
library, or add an interface version, to reduce confusion.

thanks
felix
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.