nim-lang/csources

Build fail on OSX 64bit

hiteshjasani opened this issue · 0 comments

This succeeded about a week or so ago, but is not working at the moment. Grab the master branch and run sh build.sh on OSX 64bit and get the following error:

clang -o ../bin/nimrod  c_code/3_2/nimrod.o c_code/3_2/stdlib_system.o c_code/3_2/testability.o c_code/3_2/commands.o c_code/3_2/stdlib_os.o c_code/3_2/stdlib_strutils.o c_code/3_2/stdlib_parseutils.o c_code/3_2/stdlib_times.o c_code/3_2/stdlib_posix.o c_code/3_2/msgs.o c_code/3_2/options.o c_code/3_2/lists.o c_code/3_2/stdlib_strtabs.o c_code/3_2/stdlib_hashes.o c_code/3_2/stdlib_osproc.o c_code/3_2/stdlib_streams.o c_code/3_2/stdlib_sets.o c_code/3_2/stdlib_math.o c_code/3_2/stdlib_tables.o c_code/3_2/ropes.o c_code/3_2/platform.o c_code/3_2/crc.o c_code/3_2/stdlib_sockets.o c_code/3_2/stdlib_unsigned.o c_code/3_2/nversion.o c_code/3_2/condsyms.o c_code/3_2/idents.o c_code/3_2/extccomp.o c_code/3_2/wordrecg.o c_code/3_2/babelcmd.o c_code/3_2/lexer.o c_code/3_2/nimlexbase.o c_code/3_2/llstream.o c_code/3_2/nimconf.o c_code/3_2/main.o c_code/3_2/ast.o c_code/3_2/stdlib_intsets.o c_code/3_2/idgen.o c_code/3_2/astalgo.o c_code/3_2/rodutils.o c_code/3_2/syntaxes.o c_code/3_2/parser.o c_code/3_2/pbraces.o c_code/3_2/filters.o c_code/3_2/renderer.o c_code/3_2/filter_tmpl.o c_code/3_2/rodread.o c_code/3_2/types.o c_code/3_2/trees.o c_code/3_2/stdlib_memfiles.o c_code/3_2/rodwrite.o c_code/3_2/passes.o c_code/3_2/magicsys.o c_code/3_2/nimsets.o c_code/3_2/bitsets.o c_code/3_2/importer.o c_code/3_2/lookups.o c_code/3_2/semdata.o c_code/3_2/treetab.o c_code/3_2/vmdef.o c_code/3_2/sem.o c_code/3_2/semfold.o c_code/3_2/saturate.o c_code/3_2/procfind.o c_code/3_2/pragmas.o c_code/3_2/semtypinst.o c_code/3_2/sigmatch.o c_code/3_2/parampatterns.o c_code/3_2/docgen.o c_code/3_2/docutils_rstast.o c_code/3_2/stdlib_json.o c_code/3_2/stdlib_lexbase.o c_code/3_2/stdlib_unicode.o c_code/3_2/docutils_rst.o c_code/3_2/docutils_rstgen.o c_code/3_2/docutils_highlite.o c_code/3_2/sempass2.o c_code/3_2/guards.o c_code/3_2/stdlib_xmltree.o c_code/3_2/stdlib_macros.o c_code/3_2/stdlib_cgi.o c_code/3_2/stdlib_cookies.o c_code/3_2/typesrenderer.o c_code/3_2/stdlib_algorithm.o c_code/3_2/stdlib_sequtils.o c_code/3_2/pretty.o c_code/3_2/transf.o c_code/3_2/cgmeth.o c_code/3_2/lambdalifting.o c_code/3_2/lowerings.o c_code/3_2/vm.o c_code/3_2/vmgen.o c_code/3_2/vmdeps.o c_code/3_2/evaltempl.o c_code/3_2/aliases.o c_code/3_2/patterns.o c_code/3_2/semmacrosanity.o c_code/3_2/cgen.o c_code/3_2/ccgutils.o c_code/3_2/cgendata.o c_code/3_2/ccgmerge.o c_code/3_2/jsgen.o c_code/3_2/passaux.o c_code/3_2/depends.o c_code/3_2/docgen2.o c_code/3_2/service.o c_code/3_2/stdlib_parseopt.o c_code/3_2/modules.o  -ldl -lm
Undefined symbols for architecture x86_64:
  "_HEX00_prettybaseDatInit", referenced from:
      _PreMainInner in nimrod.o
  "_HEX00_prettybaseInit", referenced from:
      _PreMainInner in nimrod.o
  "_HEX00_semparallelDatInit", referenced from:
      _PreMainInner in nimrod.o
  "_HEX00_semparallelInit", referenced from:
      _PreMainInner in nimrod.o
  "_liftparallel_476918", referenced from:
      _genmagicexpr_568274 in cgen.o
  "_ncpicountProcessors", referenced from:
      _nospcountProcessors in stdlib_osproc.o
  "_replacedeprecated_291324", referenced from:
      _skipalias_292255 in lookups.o
  "_stdlib_cpuinfoDatInit", referenced from:
      _PreMainInner in nimrod.o
  "_stdlib_cpuinfoInit", referenced from:
      _PreMainInner in nimrod.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)

A quick review shows that 3_2/prettybase.c and 3_2/stdlib_cpuinfo.c were not compiled and are missing from the linker statement. Furthermore, 3_2/ has 205 c source files, but only 108 were compiled to objects. Is the build process expecting to compile and link all of them?