-
Notifications
You must be signed in to change notification settings - Fork 3
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
cmake-specific build failure on Solaris #19
Comments
AMDG On 05/16/2016 01:42 PM, Paul H. Hargrove wrote:
Linking CXX shared library ../../lib/libLTO.so cd /export/home/phargrov/upcnightly-32/llvm-upc/bld/tools/lto && /shared/cmake-2.8.12.2/bin/cmake -E cmake_link_script CMakeFiles/LTO.dir/link.txt --verbose=1 /usr/bin/gcc -fPIC -Wl,-M,/export/home/phargrov/upcnightly-32/llvm-upc/bld/tools/lto/LTO.exports -Wl,-z,defs -shared -Wl,-hlibLTO.so -o ../../lib/libLTO.so CMakeFiles/LTO.dir/LTODisassembler.cpp.o CMakeFiles/LTO.dir/lto.cpp.o ../../lib/libLLVMX86CodeGen.a ../../lib/libLLVMX86AsmPrinter.a ../../lib/libLLVMX86AsmParser.a ../../lib/libLLVMX86Desc.a ../../lib/libLLVMX86Info.a ../../lib/libLLVMX86Disassembler.a ../../lib/libLLVMCore.a ../../lib/libLLVMLTO.a ../../lib/libLLVMMC.a ../../lib/libLLVMMCDisassembler.a ../../lib/libLLVMSupport.a ../../lib/libLLVMTarget.a ../../lib/libLLVMAsmPrinter.a ../../lib/libLLVMSelectionDAG.a ../../lib/libLLVMX86AsmPrinter.a ../../lib/libLLVMX86Utils.a ../../lib/libLLVMX86Info.a ../../lib/libLLVMCodeGen.a ../../lib/libLLVMTarget.a ../../lib/libLLVMInstrumentation.a ../../lib/libLLVMBitWriter.a ../../lib/libLLVMObjCARCOpts.a ../../lib/libLLVMipo.a ../../lib/libLLVMLinker.a ../../lib/libLLVMScalarOpts.a ../../lib/libLLVMInstCombine.a ../../lib/ libLLVMI RReader.a ../../lib/libLLVMAsmParser.a ../../lib/libLLVMProfileData.a ../../lib/libLLVMObject.a ../../lib/libLLVMMCParser.a ../../lib/libLLVMMC.a ../../lib/libLLVMBitReader.a ../../lib/libLLVMVectorize.a ../../lib/libLLVMTransformUtils.a ../../lib/libLLVMAnalysis.a ../../lib/libLLVMCore.a ../../lib/libLLVMSupport.a -lrt -ldl -lcurses -lpthread -lz -lm -Wl,-R"\$ORIGIN/../lib" Undefined first referenced symbol in file std::basic_string, std::allocator >::rfind(char, unsigned int) const ../../lib/libLLVMAsmPrinter.a(WinCodeViewLineTables.cpp.o) [... many more undefined std:: symbols ...] In Christ, |
If if was then I imagine all the
Recursive grep shows there is no definition in the source our build directories.
|
AMDG On 05/16/2016 02:27 PM, Paul H. Hargrove wrote:
Maybe. I thought that gcc compiles
I've found the problem. CMAKE_CXX_CREATE_SHARED_LIBRARY I also found this thread which describes the same problem: In Christ, |
Steven, I tried appending the following line to CMakeCache.txt
However, the build is still failing in the same way as before. -Paul |
I also found I could not resolve this by setting I am currently working-around the problem by patching two files:
|
Try set: |
I am able to build on Solaris-11.3/amd64 only if I use configure instead of cmake (and if I disable building the unittests as mentioned in #17).
The problem seen when using cmake is that linking shared library libLTO.so is failing with a large number of undefined symbols in the
std::
namespace.When using configure, the (successful) link of this library is performed as follows:
However, when using cmake the same link is attempted using gcc (which explains why the standard C++ library is missing):
The text was updated successfully, but these errors were encountered: