Git Product home page Git Product logo

Comments (7)

smowton avatar smowton commented on August 23, 2024

Hi! The reason is that LLPE currently builds against LLVM 3.6. However I have created a 3.7 branch that compiles against 3.7 (but is untested). Could you try

git pull
git checkout 3.7

And then rebuild?

from llpe.

Earnestly avatar Earnestly commented on August 23, 2024

It gets a bit futher before coming upon a new error:

teapot earnest i ~/build/lab/llpe-git/src/llpe/llpe % make
Scanning dependencies of target LLVMLLPEMain
[  2%] Building CXX object main/CMakeFiles/LLVMLLPEMain.dir/ArgSpec.cpp.o
[  5%] Building CXX object main/CMakeFiles/LLVMLLPEMain.dir/FunctionSharing.cpp.o
[  8%] Building CXX object main/CMakeFiles/LLVMLLPEMain.dir/MainLoop.cpp.o
[ 11%] Building CXX object main/CMakeFiles/LLVMLLPEMain.dir/Shadows.cpp.o
[ 14%] Building CXX object main/CMakeFiles/LLVMLLPEMain.dir/CFGEval.cpp.o
[ 17%] Building CXX object main/CMakeFiles/LLVMLLPEMain.dir/Eval.cpp.o
/home/earnest/build/lab/llpe-git/src/llpe/llpe/main/Eval.cpp:2274:43: error: variable length array of non-POD element type 'std::pair<ValSetType, ImprovedVal>'
    std::pair<ValSetType, ImprovedVal> Ops[SI->getNumOperands()];
                                          ^
1 error generated.
main/CMakeFiles/LLVMLLPEMain.dir/build.make:182: recipe for target 'main/CMakeFiles/LLVMLLPEMain.dir/Eval.cpp.o' failed
make[2]: *** [main/CMakeFiles/LLVMLLPEMain.dir/Eval.cpp.o] Error 1
CMakeFiles/Makefile2:85: recipe for target 'main/CMakeFiles/LLVMLLPEMain.dir/all' failed
make[1]: *** [main/CMakeFiles/LLVMLLPEMain.dir/all] Error 2
Makefile:83: recipe for target 'all' failed
make: *** [all] Error 2

from llpe.

smowton avatar smowton commented on August 23, 2024

This is a Clang vs. G++ thing (the former doesn't support non-POD VLAs). Either use G++ or I'll finally remove the VLA stuff tonight :)

from llpe.

Earnestly avatar Earnestly commented on August 23, 2024

Ah, I thought given its llvm nature that clang was assumed. It does get further again with gcc (g++) but a new error is produced:

% cmake .
% make
[ 60%] Building CXX object main/CMakeFiles/LLVMLLPEMain.dir/DOT.cpp.o
[ 62%] Building CXX object main/CMakeFiles/LLVMLLPEMain.dir/IntegratorShared.cpp.o
[ 65%] Building CXX object main/CMakeFiles/LLVMLLPEMain.dir/Save.cpp.o
[ 68%] Building CXX object main/CMakeFiles/LLVMLLPEMain.dir/DSE.cpp.o
[ 71%] Building CXX object main/CMakeFiles/LLVMLLPEMain.dir/LoadForward.cpp.o
[ 74%] Building CXX object main/CMakeFiles/LLVMLLPEMain.dir/SaveSplit.cpp.o
[ 77%] Building CXX object main/CMakeFiles/LLVMLLPEMain.dir/Misc.cpp.o
/home/earnest/build/lab/llpe-git/src/llpe/llpe/main/Misc.cpp:30:43: fatal error: llvm/Target/TargetLibraryInfo.h: No such file or directory
compilation terminated.
main/CMakeFiles/LLVMLLPEMain.dir/build.make:686: recipe for target 'main/CMakeFiles/LLVMLLPEMain.dir/Misc.cpp.o' failed
make[2]: *** [main/CMakeFiles/LLVMLLPEMain.dir/Misc.cpp.o] Error 1
CMakeFiles/Makefile2:85: recipe for target 'main/CMakeFiles/LLVMLLPEMain.dir/all' failed
make[1]: *** [main/CMakeFiles/LLVMLLPEMain.dir/all] Error 2
Makefile:83: recipe for target 'all' failed
make: *** [all] Error 2

As for removing VLAs, that always sounds like a good idea :-P

from llpe.

smowton avatar smowton commented on August 23, 2024

Both of these are done -- the one remaining VLA is now a vector, and the TLI include path is fixed (it was finding an old LLVM source tree by mistake).

Unfortunately building with Clang is currently still blocked because WxWidgets uses typeid and LLVM builds with -fno-rtti per default. Odd that GCC is ok with that, but it seems it is! So for now try building with GCC and I'll look into the RTTI issue some more.

from llpe.

Earnestly avatar Earnestly commented on August 23, 2024

That did the trick, it builds to completion now but with many warnings essentially repeating the same thing:

/home/earnest/build/lab/llpe-git/src/llpe/llpe/driver/Integrator.cpp:636:1: warning: ‘virtual void wxWindowBase::MakeModal(bool)’ is deprecated [-Wdeprecated-declarations]
 }
 ^
In file included from /usr/include/wx-3.0/wx/wx.h:14:0,
                 from /home/earnest/build/lab/llpe-git/src/llpe/llpe/driver/Integrator.cpp:15:
/usr/include/wx-3.0/wx/window.h:688:5: note: declared here
     wxDEPRECATED( virtual void MakeModal(bool modal = true) );
     ^

Full log: https://ptpb.pw/-pAn

Other than that, this particular issue can probably be closed now.

from llpe.

smowton avatar smowton commented on August 23, 2024

Standard WX I'm afraid :) Thanks for the report!

from llpe.

Related Issues (6)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.