libbackend.a(llvm-out.o)(.text+0x321): In function `llvm_c_expand_body_1':
/dir1/cfrontend/src/gcc/llvm-out.c:155: undefined reference to `_lang_expand_function_end'
libbackend.a(llvm-expand.o)(.text+0x49e0): In function `genllvm_for_stmt':
/dir1/cfrontend/src/gcc/llvm-expand.c:2270: undefined reference to `_stmts_are_full_exprs_p'
libbackend.a(llvm-expand.o)(.text+0x4a42):/dir1/cfrontend/src/gcc/llvm-expand.c:2275: undefined reference to `_stmts_are_full_exprs_p'
libbackend.a(llvm-expand.o)(.text+0x580c): In function `llvm_emit_local_var':
/dir1/cfrontend/src/gcc/llvm-expand.c:2489: undefined reference to `_stmts_are_full_exprs_p'
libbackend.a(llvm-expand.o)(.text+0x5821):/dir1/cfrontend/src/gcc/llvm-expand.c:2494: undefined reference to `_stmts_are_full_exprs_p'
libbackend.a(llvm-expand.o)(.text+0x59ad): In function `genllvm_expr_stmt':
/dir1/cfrontend/src/gcc/llvm-expand.c:2522: undefined reference to `_stmts_are_full_exprs_p'
libbackend.a(llvm-expand.o)(.text+0x59ce):/dir1/cfrontend/src/gcc/llvm-expand.c:2528: more undefined references to `_stmts_are_full_exprs_p' follow
libbackend.a(llvm-expand.o)(.text+0x5c01): In function `genllvm_decl_stmt':
/dir1/cfrontend/src/gcc/llvm-expand.c:2609: undefined reference to `_lang_expand_decl_stmt'
libbackend.a(llvm-expand.o)(.text+0x5cbe):/dir1/cfrontend/src/gcc/llvm-expand.c:2592: undefined reference to `_anon_aggr_type_p'
libbackend.a(llvm-expand.o)(.text+0x5e11): In function `llvm_expand_stmt':
/dir1/cfrontend/src/gcc/llvm-expand.c:2627: undefined reference to `_stmts_are_full_exprs_p'
libbackend.a(llvm-expand.o)(.text+0x5e1b):/dir1/cfrontend/src/gcc/llvm-expand.c:2628: undefined reference to `_prep_stmt'
libbackend.a(llvm-expand.o)(.text+0x5e91):/dir1/cfrontend/src/gcc/llvm-expand.c:2724: undefined reference to `_current_stmt_tree'
libbackend.a(llvm-expand.o)(.text+0x6426):/dir1/cfrontend/src/gcc/llvm-expand.c:2697: undefined reference to `_stmts_are_full_exprs_p'
libbackend.a(llvm-expand.o)(.text+0x6431):/dir1/cfrontend/src/gcc/llvm-expand.c:2698: undefined reference to `_prep_stmt'
libbackend.a(llvm-expand.o)(.text+0x6442):/dir1/cfrontend/src/gcc/llvm-expand.c:2700: undefined reference to `_current_stmt_tree'
libbackend.a(tree-inline.o)(.text+0x15ae): In function `copy_body_r':
/dir1/cfrontend/src/gcc/tree-inline.c:439: undefined reference to `_build_stmt'
libbackend.a(tree-inline.o)(.text+0x1652):/dir1/cfrontend/src/gcc/tree-inline.c:455: undefined reference to `_build_stmt'
libbackend.a(tree-inline.o)(.text+0x18f2): In function `initialize_inlined_parameters':
/dir1/cfrontend/src/gcc/tree-inline.c:703: undefined reference to `_build_stmt'
libbackend.a(tree-inline.o)(.text+0x1955):/dir1/cfrontend/src/gcc/tree-inline.c:749: undefined reference to `_build_stmt'
libbackend.a(tree-inline.o)(.text+0x19bc):/dir1/cfrontend/src/gcc/tree-inline.c:781: undefined reference to `_build_stmt'
libbackend.a(tree-inline.o)(.text+0x1a53):/dir1/cfrontend/src/gcc/tree-inline.c:733: more undefined references to `_build_stmt' follow
libbackend.a(tree-inline.o)(.text+0x1ba2): In function `initialize_inlined_parameters':
/dir1/cfrontend/src/gcc/tree-inline.c:668: undefined reference to `_decl_constant_value'
libbackend.a(tree-inline.o)(.text+0x1cdd): In function `declare_return_variable':
/dir1/cfrontend/src/gcc/tree-inline.c:846: undefined reference to `_build_stmt'
libbackend.a(tree-inline.o)(.text+0x1d02):/dir1/cfrontend/src/gcc/tree-inline.c:854: undefined reference to `_build_stmt'
libbackend.a(tree-inline.o)(.text+0x1d20):/dir1/cfrontend/src/gcc/tree-inline.c:844: undefined reference to `_build_stmt'
libbackend.a(tree-inline.o)(.text+0x2b7a): In function `expand_call_inline':
/dir1/cfrontend/src/gcc/tree-inline.c:1420: undefined reference to `_build_stmt'
libbackend.a(tree-inline.o)(.text+0x2e7f):/dir1/cfrontend/src/gcc/tree-inline.c:1475: undefined reference to `_build_stmt'
libbackend.a(tree-inline.o)(.text+0x2fa4):/dir1/cfrontend/src/gcc/tree-inline.c:1492: more undefined references to `_build_stmt' follow
libbackend.a(tree-inline.o)(.text+0x41cd): In function `walk_tree':
/dir1/cfrontend/src/gcc/tree-inline.c:1734: undefined reference to `_statement_code_p'
libbackend.a(tree-inline.o)(.text+0x47fa):/dir1/cfrontend/src/gcc/tree-inline.c:1755: undefined reference to `_statement_code_p'
libbackend.a(tree-inline.o)(.text+0x48dd):/dir1/cfrontend/src/gcc/tree-inline.c:1774: undefined reference to `_statement_code_p'
libbackend.a(tree-inline.o)(.text+0x4fb5): In function `copy_tree_r':
/dir1/cfrontend/src/gcc/tree-inline.c:1954: undefined reference to `_statement_code_p'
collect2: ld returned 1 exit status
make[1]: *** [gnat1.exe] Error 1
make[1]: Leaving directory `/dir1/cfrontend/src/gcc'
make: *** [all-gcc] Error 2
-----------------------------------------
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Building the cfrontend must be done in a very particular way. In particular, you need to build LLVM proper first, and then there are "magic" environment variables to set, etc. You can find complete details on how to do this here:
===============
Windows 2000
GNU gcc 3.3.3 (cygwin special)
===============
./configure
./make
I have got compilation error
make[1]: Leaving directory `/dir1/cfrontend/src/zlib'
make[1]: Entering directory `/dir1/cfrontend/src/gcc'
gcc -g -O2 -DIN_GCC -W -Wall -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -pedantic -Wno-long-long -fno-common -DHAVE_CONFIG_H -o gnat1.exe ada/b_gnat1.o ada/adadecode.o ada/adaint.o ada/cstreams.o ada/cio.o ada/targtyps.o ada/decl.o ada/misc.o ada/utils.o ada/utils2.o ada/trans.o ada/cuintp.o ada/argv.o ada/raise.o ada/init.o ada/tracebak.o ada/ada.o ada/a-charac.o ada/a-chlat1.o ada/a-except.o ada/s-memory.o ada/s-traceb.o ada/s-mastop.o ada/s-except.o ada/ali.o ada/alloc.o ada/atree.o ada/butil.o ada/casing.o ada/checks.o ada/comperr.o ada/csets.o ada/cstand.o ada/debug.o ada/debug_a.o ada/einfo.o ada/elists.o ada/errout.o ada/eval_fat.o ada/exp_attr.o ada/exp_ch11.o ada/exp_ch12.o ada/exp_ch13.o ada/exp_ch2.o ada/exp_ch3.o ada/exp_ch4.o ada/exp_ch5.o ada/exp_ch6.o ada/exp_ch7.o ada/exp_ch8.o ada/exp_ch9.o ada/exp_code.o ada/exp_dbug.o ada/exp_disp.o ada/exp_dist.o ada/exp_fixd.o ada/exp_aggr.o ada/exp_imgv.o ada/exp_intr.o ada/exp_pakd.o ada/exp_prag.o ada/exp_smem.o ada/exp_strm.o ada/exp_tss.o ada/exp_util.o ada/exp_vfpt.o ada/expander.o ada/fname.o ada/fname-uf.o ada/fmap.o ada/freeze.o ada/frontend.o ada/gnat.o ada/g-hesora.o ada/g-htable.o ada/g-os_lib.o ada/g-speche.o ada/s-crc32.o ada/get_targ.o ada/gnatvsn.o ada/hlo.o ada/hostparm.o ada/impunit.o ada/interfac.o ada/itypes.o ada/inline.o ada/krunch.o ada/lib.o ada/layout.o ada/lib-load.o ada/lib-util.o ada/lib-xref.o ada/lib-writ.o ada/live.o ada/namet.o ada/nlists.o ada/nmake.o ada/opt.o ada/osint.o ada/osint-c.o ada/output.o ada/par.o ada/repinfo.o ada/restrict.o ada/rident.o ada/rtsfind.o ada/s-assert.o ada/s-parame.o ada/s-stache.o ada/s-stalib.o ada/s-imgenu.o ada/s-stoele.o ada/s-soflin.o ada/s-exctab.o ada/s-secsta.o ada/s-wchcnv.o ada/s-wchcon.o ada/s-wchjis.o ada/s-unstyp.o ada/scans.o ada/scn.o ada/sdefault.o ada/sem.o ada/sem_aggr.o ada/sem_attr.o ada/sem_cat.o ada/sem_ch10.o ada/sem_ch11.o ada/sem_ch12.o ada/sem_ch13.o ada/sem_ch2.o ada/sem_ch3.o ada/sem_ch4.o ada/sem_ch5.o ada/sem_ch6.o ada/sem_ch7.o ada/sem_ch8.o ada/sem_ch9.o ada/sem_case.o ada/sem_disp.o ada/sem_dist.o ada/sem_elab.o ada/sem_elim.o ada/sem_eval.o ada/sem_intr.o ada/sem_maps.o ada/sem_mech.o ada/sem_prag.o ada/sem_res.o ada/sem_smem.o ada/sem_type.o ada/sem_util.o ada/sem_vfpt.o ada/sem_warn.o ada/sinfo-cn.o ada/sinfo.o ada/sinput.o ada/sinput-d.o ada/sinput-l.o ada/snames.o ada/sprint.o ada/stand.o ada/stringt.o ada/style.o ada/switch.o ada/switch-c.o ada/stylesw.o ada/validsw.o ada/system.o ada/table.o ada/targparm.o ada/tbuild.o ada/tree_gen.o ada/tree_io.o ada/treepr.o ada/treeprs.o ada/ttypef.o ada/ttypes.o ada/types.o ada/uintp.o ada/uname.o ada/urealp.o ada/usage.o ada/widechar.o ada/back_end.o ada/gnat1drv.o prefix.o main.o libbackend.a attribs.o ../libiberty/libiberty.a -lintl -liconv \
libbackend.a(llvm-out.o)(.text+0x321): In function `llvm_c_expand_body_1':
/dir1/cfrontend/src/gcc/llvm-out.c:155: undefined reference to `_lang_expand_function_end'
libbackend.a(llvm-expand.o)(.text+0x49e0): In function `genllvm_for_stmt':
/dir1/cfrontend/src/gcc/llvm-expand.c:2270: undefined reference to `_stmts_are_full_exprs_p'
libbackend.a(llvm-expand.o)(.text+0x4a42):/dir1/cfrontend/src/gcc/llvm-expand.c:2275: undefined reference to `_stmts_are_full_exprs_p'
libbackend.a(llvm-expand.o)(.text+0x580c): In function `llvm_emit_local_var':
/dir1/cfrontend/src/gcc/llvm-expand.c:2489: undefined reference to `_stmts_are_full_exprs_p'
libbackend.a(llvm-expand.o)(.text+0x5821):/dir1/cfrontend/src/gcc/llvm-expand.c:2494: undefined reference to `_stmts_are_full_exprs_p'
libbackend.a(llvm-expand.o)(.text+0x59ad): In function `genllvm_expr_stmt':
/dir1/cfrontend/src/gcc/llvm-expand.c:2522: undefined reference to `_stmts_are_full_exprs_p'
libbackend.a(llvm-expand.o)(.text+0x59ce):/dir1/cfrontend/src/gcc/llvm-expand.c:2528: more undefined references to `_stmts_are_full_exprs_p' follow
libbackend.a(llvm-expand.o)(.text+0x5c01): In function `genllvm_decl_stmt':
/dir1/cfrontend/src/gcc/llvm-expand.c:2609: undefined reference to `_lang_expand_decl_stmt'
libbackend.a(llvm-expand.o)(.text+0x5cbe):/dir1/cfrontend/src/gcc/llvm-expand.c:2592: undefined reference to `_anon_aggr_type_p'
libbackend.a(llvm-expand.o)(.text+0x5e11): In function `llvm_expand_stmt':
/dir1/cfrontend/src/gcc/llvm-expand.c:2627: undefined reference to `_stmts_are_full_exprs_p'
libbackend.a(llvm-expand.o)(.text+0x5e1b):/dir1/cfrontend/src/gcc/llvm-expand.c:2628: undefined reference to `_prep_stmt'
libbackend.a(llvm-expand.o)(.text+0x5e91):/dir1/cfrontend/src/gcc/llvm-expand.c:2724: undefined reference to `_current_stmt_tree'
libbackend.a(llvm-expand.o)(.text+0x6426):/dir1/cfrontend/src/gcc/llvm-expand.c:2697: undefined reference to `_stmts_are_full_exprs_p'
libbackend.a(llvm-expand.o)(.text+0x6431):/dir1/cfrontend/src/gcc/llvm-expand.c:2698: undefined reference to `_prep_stmt'
libbackend.a(llvm-expand.o)(.text+0x6442):/dir1/cfrontend/src/gcc/llvm-expand.c:2700: undefined reference to `_current_stmt_tree'
libbackend.a(tree-inline.o)(.text+0x15ae): In function `copy_body_r':
/dir1/cfrontend/src/gcc/tree-inline.c:439: undefined reference to `_build_stmt'
libbackend.a(tree-inline.o)(.text+0x1652):/dir1/cfrontend/src/gcc/tree-inline.c:455: undefined reference to `_build_stmt'
libbackend.a(tree-inline.o)(.text+0x18f2): In function `initialize_inlined_parameters':
/dir1/cfrontend/src/gcc/tree-inline.c:703: undefined reference to `_build_stmt'
libbackend.a(tree-inline.o)(.text+0x1955):/dir1/cfrontend/src/gcc/tree-inline.c:749: undefined reference to `_build_stmt'
libbackend.a(tree-inline.o)(.text+0x19bc):/dir1/cfrontend/src/gcc/tree-inline.c:781: undefined reference to `_build_stmt'
libbackend.a(tree-inline.o)(.text+0x1a53):/dir1/cfrontend/src/gcc/tree-inline.c:733: more undefined references to `_build_stmt' follow
libbackend.a(tree-inline.o)(.text+0x1ba2): In function `initialize_inlined_parameters':
/dir1/cfrontend/src/gcc/tree-inline.c:668: undefined reference to `_decl_constant_value'
libbackend.a(tree-inline.o)(.text+0x1cdd): In function `declare_return_variable':
/dir1/cfrontend/src/gcc/tree-inline.c:846: undefined reference to `_build_stmt'
libbackend.a(tree-inline.o)(.text+0x1d02):/dir1/cfrontend/src/gcc/tree-inline.c:854: undefined reference to `_build_stmt'
libbackend.a(tree-inline.o)(.text+0x1d20):/dir1/cfrontend/src/gcc/tree-inline.c:844: undefined reference to `_build_stmt'
libbackend.a(tree-inline.o)(.text+0x2b7a): In function `expand_call_inline':
/dir1/cfrontend/src/gcc/tree-inline.c:1420: undefined reference to `_build_stmt'
libbackend.a(tree-inline.o)(.text+0x2e7f):/dir1/cfrontend/src/gcc/tree-inline.c:1475: undefined reference to `_build_stmt'
libbackend.a(tree-inline.o)(.text+0x2fa4):/dir1/cfrontend/src/gcc/tree-inline.c:1492: more undefined references to `_build_stmt' follow
libbackend.a(tree-inline.o)(.text+0x41cd): In function `walk_tree':
/dir1/cfrontend/src/gcc/tree-inline.c:1734: undefined reference to `_statement_code_p'
libbackend.a(tree-inline.o)(.text+0x47fa):/dir1/cfrontend/src/gcc/tree-inline.c:1755: undefined reference to `_statement_code_p'
libbackend.a(tree-inline.o)(.text+0x48dd):/dir1/cfrontend/src/gcc/tree-inline.c:1774: undefined reference to `_statement_code_p'
libbackend.a(tree-inline.o)(.text+0x4fb5): In function `copy_tree_r':
/dir1/cfrontend/src/gcc/tree-inline.c:1954: undefined reference to `_statement_code_p'
collect2: ld returned 1 exit status
make[1]: *** [gnat1.exe] Error 1
make[1]: Leaving directory `/dir1/cfrontend/src/gcc'
make: *** [all-gcc] Error 2
-----------------------------------------
Alex,
Building the cfrontend must be done in a very particular way. In particular, you need to build LLVM proper first, and then there are "magic" environment variables to set, etc. You can find complete details on how to do this here:
http://llvm.org/docs/CFEBuildInstrs.html
Please read the documentation and follow the instructions carefully. If you still have problems after that, I'd be glad to help.
Thanks,
Reid.