Hi ether,> i install mpc-0.8.2 in /home/ether/local/, and gcc-4.5 is configure with: > $HOME/sources/gcc-4.5/configure --enable-plugin --enable-lto > --prefix=$HOME/local/gcc-4.5/ --enable-languages=c,c++ > --disable-bootstrap --disable-multilib --with-mpc=$HOME/local > --with-libelf=$HOME/localbecause GCC headers include mpc.h, when dragonegg uses GCC headers then it needs to be able to find mpc.h too. You can pass it that info using CFLAGS as I showed. If you do that, does it build? Ciao, Duncan.> > > On Sat, Apr 9, 2011 at 12:00 AM, Duncan Sands<baldrick at free.fr> wrote: >> Hi ether, how did you build it exactly? I logged into gcc16 and tried to >> reproduce. But I get >> >> /home/ether/local/gcc-4.5/lib/gcc/x86_64-unknown-linux-gnu/4.5.3/plugin/include/real.h:28:17: >> error: mpc.h: No such file or directory >> In file included from >> /home/ether/local/gcc-4.5/lib/gcc/x86_64-unknown-linux-gnu/4.5.3/plugin/include/rtl.h:28, >> from /home/baldrick/dragonegg-2.9/Convert.cpp:58: >> /home/ether/local/gcc-4.5/lib/gcc/x86_64-unknown-linux-gnu/4.5.3/plugin/include/real.h:29: >> error: expected ‘,’ or ‘...’ before ‘(’ token >> >> Notice the line about the missing mpc.h. If I pass the path to mpc.h like this: >> >> CPPFLAGS="-I/home/ether/local/include/" GCC=/home/ether/local/gcc-4.5/bin/gcc >> LLVM_CONFIG=/home/ether/build/llvm/bin/llvm-config make >> >> then the errors go away. > oh, i just reading the header, and also found it is some mpc stuffs. > >> That said, it still doesn't compile because you seem >> to have LLVM from svn installed not llvm-2.9, and dragonegg-2.9 needs to be > yep, the dragonegg is also from svn >> built against llvm-2.9. > ok > > thanks very much for you help. > > best regards > ether > >> >> Ciao, Duncan. >> >>> On Fri, Apr 8, 2011 at 8:38 AM, Jack Howarth<howarth at bromo.med.uc.edu> wrote: >>>> The new dragonegg 2.9 sources fail to build against either FSF gcc 4.5.2 or 4.5.3svn >>>> (with the i386_static.diff patch applied) on x86_64-apple-darwin10. In both cases, the >>>> build fails as... >>> >>> Dragonegg revision 129116 also fail on x86_64 linux, with gcc-4.5 >>> revision 172158, i got: >>> >>> /home/ether/sources/llvm/include/llvm/Target/TargetLowering.h:1567: >>> warning: unused parameter ‘VT2’ >>> /home/ether/sources/llvm/include/llvm/Target/TargetLowering.h:1574: >>> warning: unused parameter ‘VT1’ >>> /home/ether/sources/llvm/include/llvm/Target/TargetLowering.h:1574: >>> warning: unused parameter ‘VT2’ >>> /home/ether/sources/llvm/include/llvm/Target/TargetLowering.h:1582: >>> warning: unused parameter ‘Imm’ >>> In file included from >>> /home/ether/local/gcc-4.5/lib/gcc/x86_64-unknown-linux-gnu/4.5.3/plugin/include/rtl.h:28, >>> from /home/ether/sources/dragonegg/Convert.cpp:57: >>> /home/ether/local/gcc-4.5/lib/gcc/x86_64-unknown-linux-gnu/4.5.3/plugin/include/real.h:29: >>> error: expected ‘,’ or ‘...’ before ‘(’ token >>> make: *** [Convert.o] Error 1 >>> >>> >>> best regards >>> ether >>> >>> ps: i am trying to build dragonegg on gcc16 of gcc farm. >>> >>> _______________________________________________ >>> LLVM Developers mailing list >>> LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu >>> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev >> >> _______________________________________________ >> LLVM Developers mailing list >> LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu >> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev >>
hi Duncan, On Sat, Apr 9, 2011 at 12:15 AM, Duncan Sands <baldrick at free.fr> wrote:> Hi ether, > >> i install mpc-0.8.2 in /home/ether/local/, and gcc-4.5 is configure with: >> $HOME/sources/gcc-4.5/configure --enable-plugin --enable-lto >> --prefix=$HOME/local/gcc-4.5/ --enable-languages=c,c++ >> --disable-bootstrap --disable-multilib --with-mpc=$HOME/local >> --with-libelf=$HOME/local > > because GCC headers include mpc.h, when dragonegg uses GCC headers then it > needs > to be able to find mpc.h too. You can pass it that info using CFLAGS as I > showed. If you do that, does it build?Yes, i got dragonegg.so now. best regards ether> > Ciao, Duncan. > >> >> >> On Sat, Apr 9, 2011 at 12:00 AM, Duncan Sands<baldrick at free.fr> wrote: >>> >>> Hi ether, how did you build it exactly? I logged into gcc16 and tried to >>> reproduce. But I get >>> >>> >>> /home/ether/local/gcc-4.5/lib/gcc/x86_64-unknown-linux-gnu/4.5.3/plugin/include/real.h:28:17: >>> error: mpc.h: No such file or directory >>> In file included from >>> >>> /home/ether/local/gcc-4.5/lib/gcc/x86_64-unknown-linux-gnu/4.5.3/plugin/include/rtl.h:28, >>> from /home/baldrick/dragonegg-2.9/Convert.cpp:58: >>> >>> /home/ether/local/gcc-4.5/lib/gcc/x86_64-unknown-linux-gnu/4.5.3/plugin/include/real.h:29: >>> error: expected ‘,’ or ‘...’ before ‘(’ token >>> >>> Notice the line about the missing mpc.h. If I pass the path to mpc.h >>> like this: >>> >>> CPPFLAGS="-I/home/ether/local/include/" >>> GCC=/home/ether/local/gcc-4.5/bin/gcc >>> LLVM_CONFIG=/home/ether/build/llvm/bin/llvm-config make >>> >>> then the errors go away. >> >> oh, i just reading the header, and also found it is some mpc stuffs. >> >>> That said, it still doesn't compile because you seem >>> to have LLVM from svn installed not llvm-2.9, and dragonegg-2.9 needs to >>> be >> >> yep, the dragonegg is also from svn >>> >>> built against llvm-2.9. >> >> ok >> >> thanks very much for you help. >> >> best regards >> ether >> >>> >>> Ciao, Duncan. >>> >>>> On Fri, Apr 8, 2011 at 8:38 AM, Jack Howarth<howarth at bromo.med.uc.edu> >>>> wrote: >>>>> >>>>> The new dragonegg 2.9 sources fail to build against either FSF gcc >>>>> 4.5.2 or 4.5.3svn >>>>> (with the i386_static.diff patch applied) on x86_64-apple-darwin10. In >>>>> both cases, the >>>>> build fails as... >>>> >>>> Dragonegg revision 129116 also fail on x86_64 linux, with gcc-4.5 >>>> revision 172158, i got: >>>> >>>> /home/ether/sources/llvm/include/llvm/Target/TargetLowering.h:1567: >>>> warning: unused parameter ‘VT2’ >>>> /home/ether/sources/llvm/include/llvm/Target/TargetLowering.h:1574: >>>> warning: unused parameter ‘VT1’ >>>> /home/ether/sources/llvm/include/llvm/Target/TargetLowering.h:1574: >>>> warning: unused parameter ‘VT2’ >>>> /home/ether/sources/llvm/include/llvm/Target/TargetLowering.h:1582: >>>> warning: unused parameter ‘Imm’ >>>> In file included from >>>> >>>> /home/ether/local/gcc-4.5/lib/gcc/x86_64-unknown-linux-gnu/4.5.3/plugin/include/rtl.h:28, >>>> from /home/ether/sources/dragonegg/Convert.cpp:57: >>>> >>>> /home/ether/local/gcc-4.5/lib/gcc/x86_64-unknown-linux-gnu/4.5.3/plugin/include/real.h:29: >>>> error: expected ‘,’ or ‘...’ before ‘(’ token >>>> make: *** [Convert.o] Error 1 >>>> >>>> >>>> best regards >>>> ether >>>> >>>> ps: i am trying to build dragonegg on gcc16 of gcc farm. >>>> >>>> _______________________________________________ >>>> LLVM Developers mailing list >>>> LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu >>>> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev >>> >>> _______________________________________________ >>> LLVM Developers mailing list >>> LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu >>> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev >>> > >
hi Duncan,>> >>> That said, it still doesn't compile because you seem >>> to have LLVM from svn installed not llvm-2.9, and dragonegg-2.9 needs to >>> be >> >> yep, the dragonegg is also from svnwhen i try: /home/ether/local/gcc-4.5/bin/gcc -S -O1 -o - -fplugin=$HOME/sources/dragonegg/dragonegg.so -fplugin-arg-dragonegg-emit-ir $HOME/sources/hello.c 2>&1 | c++filt i get: cc1: error: Cannot load plugin /home/ether/sources/dragonegg/dragonegg.so /home/ether/sources/dragonegg/dragonegg.so: undefined symbol: llvm::StructType::get(llvm::LLVMContext&, llvm::ArrayRef<llvm::Type const*>, bool) So this means dragonegg-svn do not work with llvm-svn? best regards ether
Hi ether,> So this means dragonegg-svn do not work with llvm-svn?it does work, since otherwise the dragonegg buildbots would be broken. What doesn't work is using dragonegg-2.9 with llvm-svn or dragonegg-svn with llvm-2.9. Ciao, Duncan.
> cc1: error: Cannot load plugin /home/ether/sources/dragonegg/dragonegg.so > /home/ether/sources/dragonegg/dragonegg.so: undefined symbol: > llvm::StructType::get(llvm::LLVMContext&, llvm::ArrayRef<llvm::Type > const*>, bool)PS: You may get this if you built using llvm-svn headers but linked with llvm-2.9 libraries.