[LLVMdev] ToolRunner.cpp:396: error: `SHLIBEXT' undeclared (first use this function)

John Criswell criswell at cs.uiuc.edu
Tue Jul 27 12:57:02 PDT 2004


Henrik Bach wrote:
> Hi,

Please see below.

> 
> I get this error:
> ------------------
> ToolRunner.cpp:396: error: `SHLIBEXT' undeclared (first use this function)
> ToolRunner.cpp:396: error: (Each undeclared identifier is reported only 
> once
>   for each function it appears in.)
> ------------------
> 
> And the config.log shows that configure has detected that ld on my 
> platform (Interix) doesn't support shared libraries:
> ------------------
> configure:6176: checking if gcc supports -c -o file.o
> configure:6204: gcc -c -g -O2  -o out/conftest2.o conftest.c >&5
> configure:6208: $? = 0
> configure:6225: result: yes
> configure:6251: checking whether the gcc linker 
> (/opt/gcc.3.3/i586-pc-interix3/bin/ld) supports shared libraries
> configure:7045: result: no
> configure:7116: checking how to hardcode library paths into programs
> configure:7141: result: immediate
> configure:7155: checking whether stripping libraries is possible
> configure:7160: result: yes
> configure:7182: checking dynamic linker characteristics
> configure:7693: result: no
> configure:8419: checking if libtool supports shared libraries
> configure:8421: result: no
> configure:8424: checking whether to build shared libraries
> configure:8473: result: no
> configure:8476: checking whether to build static libraries
> configure:8480: result: yes
> configure:8571: creating mklib
> configure:9115: checking for ld used by g++
> configure:9182: result: /opt/gcc.3.3/i586-pc-interix3/bin/ld
> configure:9191: checking if the linker 
> (/opt/gcc.3.3/i586-pc-interix3/bin/ld) is GNU ld
> configure:9206: result: yes
> configure:9257: checking whether the g++ linker 
> (/opt/gcc.3.3/i586-pc-interix3/bin/ld) supports shared libraries
> configure:10052: result: no
> configure:10070: g++ -c -g -O2  conftest.cc >&5
> configure:10073: $? = 0
> ------------------
> 
> Is there any hack here to move further with my port of llvm to Interix?

I've looked at the recent libtool documentation, and they don't seem to 
have any information on whether they support Interfix.

One hack for LLVM is to modify the rules for dynamic linking in 
Makefile.rules.  You could change the Makefile rules to perform dynamic 
linking directly instead of using libtool.  You can change the rules to 
call gcc or ld with whatever options you need to use on Interix.

Another option is to test libtool and see if it works on Interix.  This 
would be a more correct but more time-consuming fix.

> 
> 
> /Henrik
> 
> _________________________________________________________________
> Opret en gratis Hotmail-konto  http://www.hotmail.com med udsigt til 250 
> MB lagerkapacitet
> 
> _______________________________________________
> LLVM Developers mailing list
> LLVMdev at cs.uiuc.edu         http://llvm.cs.uiuc.edu
> http://mail.cs.uiuc.edu/mailman/listinfo/llvmdev

-- John T.

-- 
*********************************************************************
* John T. Criswell                         Email: criswell at uiuc.edu *
* Research Programmer                                               *
* University of Illinois at Urbana-Champaign                        *
*                                                                   *
* "It's today!" said Piglet. "My favorite day," said Pooh.          *
*********************************************************************





More information about the llvm-dev mailing list