Hello,
I've compiled nimrod from source on Linux (though I haven't figured out how to permanently add it to my path - I have to export the path every time I close the terminal then open it again)
Now I tried to compile Aporia from source but get the following:
config/nimrod.cfg(38, 2) Hint: added path: '/home/drifter/.babel/pkgs/' [Path] Hint: used config file '/home/drifter/Nimrod/config/nimrod.cfg' [Conf] Hint: used config file 'aporia.nimrod.cfg' [Conf] Hint: system [Processing] Hint: aporia [Processing] home/drifter/development/aporia.nim(11, 7) Error: cannot open 'glib2'
I'm not sure how to go from here.
Any pointers would be appreaciated.
PS: How does one Search on the forum :) I would have tried that first but coudln't find any "Search" button :S
For the path problem you can add a line to your ~/.bashrc or ~/.profile (I assume you use bash here):
export PATH="$PATH:/path/to/Nim"
The quotes prevent word splitting in case your path contains directories with spaces in the name.
For the missing glib2, you need to install gtk2 with babel (now nimble):
babel install gtk2
also, make sure you install the gtk2 libs with your package manager.
if you use nimble, you may need to change your ../Nimrod/config/nimrod.cfg:
babelpath="$home/.babel/pkgs/"
should be:
babelpath="$home/.nimble/pkgs/
mmm, I did sudo apt-get install babel, but I'm not quite sure this is the right babel??!
babel install gtk2
Babel Version : 1.4.0 (Revision: 6607 release-1-4-0-branch) Java VM Vendor : Oracle Corporation Java VM Version : 24.65-b04 Operating System: Linux version 3.13.0-37-generic
If you have any suggestions or questions not answered by the documentation, please send email to components@llnl.gov.
Hi Will,
Yes I did try this one too, following the instrucitons, but I get the following when trying to compile:
nimrod c -r src/nimble install config/nimrod.cfg(38, 2) Hint: added path: '/home/drifter/.babel/pkgs/' [Path] Hint: used config file '/home/drifter/Nimrod/config/nimrod.cfg' [Conf] Hint: used config file '/home/drifter/nimble/src/nimble.nimrod.cfg' [Conf] Hint: system [Processing] Hint: nimble [Processing] Hint: httpclient [Processing] Hint: sockets [Processing] Hint: os [Processing] Hint: strutils [Processing] Hint: parseutils [Processing] Hint: times [Processing] Hint: posix [Processing] Hint: unsigned [Processing] Hint: openssl [Processing] lib/wrappers/openssl.nim(486, 45) Hint: 'EIO' is declared but not used [XDeclaredButNotUsed] Hint: parseurl [Processing] Hint: strtabs [Processing] Hint: hashes [Processing] Hint: base64 [Processing] Hint: asyncnet [Processing] Hint: asyncdispatch [Processing] Hint: oids [Processing] Hint: endians [Processing] Hint: tables [Processing] Hint: math [Processing] lib/pure/math.nim(200, 7) Hint: 'math.gettime(dummy: ptr cint): cint' is declared but not used [XDeclaredButNotUsed] Hint: macros [Processing] Hint: rawsockets [Processing] Hint: net [Processing] Hint: selectors [Processing] Hint: epoll [Processing] lib/pure/asyncdispatch.nim(1048, 6) Hint: 'cbName' is declared but not used [XDeclaredButNotUsed] lib/pure/asyncdispatch.nim(998, 6) Hint: Processing recvLine as an async proc. [User] lib/pure/asyncdispatch.nim(998, 6) Hint: Processing readIntoBuf as an async proc. [User] lib/pure/asyncdispatch.nim(998, 6) Hint: Processing recv as an async proc. [User] lib/pure/asyncdispatch.nim(998, 6) Hint: Processing recvLine as an async proc. [User] lib/pure/asyncnet.nim(238, 16) Hint: conversion from string to itself is pointless [ConvFromXtoItselfNotNeeded] lib/pure/asyncdispatch.nim(998, 6) Hint: Processing recvFull as an async proc. [User] lib/pure/asyncdispatch.nim(998, 6) Hint: Processing parseChunks as an async proc. [User] lib/pure/httpclient.nim(473, 6) Hint: 'ri' is declared but not used [XDeclaredButNotUsed] lib/pure/asyncdispatch.nim(998, 6) Hint: Processing parseBody as an async proc. [User] lib/pure/asyncdispatch.nim(998, 6) Hint: Processing parseResponse as an async proc. [User] lib/pure/asyncdispatch.nim(998, 6) Hint: Processing newConnection as an async proc. [User] lib/pure/asyncdispatch.nim(998, 6) Hint: Processing request as an async proc. [User] lib/pure/asyncdispatch.nim(998, 6) Hint: Processing get as an async proc. [User] Hint: parseopt [Processing] lib/pure/parseopt.nim(54, 34) Warning: 'quoteIfContainsWhite' is deprecated [Deprecated] nimble.nim(4, 19) Warning: 'parseopt' is deprecated [Deprecated] Hint: osproc [Processing] Hint: streams [Processing] Hint: cpuinfo [Processing] Hint: linux [Processing] lib/pure/osproc.nim(250, 13) Warning: 'startCmd' is deprecated [Deprecated] lib/pure/osproc.nim(274, 19) Warning: 'startCmd' is deprecated [Deprecated] lib/pure/osproc.nim(282, 14) Warning: 'startCmd' is deprecated [Deprecated] lib/pure/osproc.nim(756, 6) Warning: 'osError' is deprecated [Deprecated] lib/pure/osproc.nim(922, 10) Warning: 'startCmd' is deprecated [Deprecated] lib/pure/osproc.nim(678, 9) Hint: 'osproc.startProcessAuxSpawn(data: TStartProcessData): TPid' is declared but not used [XDeclaredButNotUsed] Hint: pegs [Processing] Hint: unicode [Processing] Hint: json [Processing] Hint: lexbase [Processing] Hint: algorithm [Processing] Hint: sets [Processing] Hint: sequtils [Processing] Hint: packageinfo [Processing] Hint: parsecfg [Processing] Hint: version [Processing] nimblepkg/version.nim(58, 6) Warning: 'nil' statement is deprecated; use an empty 'discard' statement instead [NilStmt] Hint: tools [Processing] nimblepkg/tools.nim(89, 10) Warning: 'nil' statement is deprecated; use an empty 'discard' statement instead [NilStmt] nimblepkg/tools.nim(95, 10) Warning: 'nil' statement is deprecated; use an empty 'discard' statement instead [NilStmt] nimblepkg/packageinfo.nim(186, 5) Warning: 'existsKey' is deprecated [Deprecated] Hint: download [Processing] nimblepkg/download.nim(31, 5) Hint: 'download.doPull(meth: TDownloadMethod, downloadDir: string)' is declared but not used [XDeclaredButNotUsed] nimblepkg/download.nim(12, 5) Hint: 'download.getSpecificDir(meth: TDownloadMethod): string' is declared but not used [XDeclaredButNotUsed] Hint: config [Processing] Hint: compat [Processing] nimble.nim(189, 2) Warning: 'renameBabelToNimble' is deprecated [Deprecated] nimble.nim(317, 6) Hint: 'depNameVer' is declared but not used [XDeclaredButNotUsed] nimble.nim(718, 84) Warning: 'osErrorMsg' is deprecated [Deprecated] nimble.nim(718, 84) Warning: 'osErrorMsg' is deprecated [Deprecated] gcc -c -w -I/home/drifter/Nimrod/lib -o /home/drifter/nimble/src/nimcache/nimble.o /home/drifter/nimble/src/nimcache/nimble.c gcc -o /home/drifter/nimble/src/nimble /home/drifter/nimble/src/nimcache/compat.o /home/drifter/nimble/src/nimcache/config.o /home/drifter/nimble/src/nimcache/download.o /home/drifter/nimble/src/nimcache/tools.o /home/drifter/nimble/src/nimcache/version.o /home/drifter/nimble/src/nimcache/stdlib_parsecfg.o /home/drifter/nimble/src/nimcache/packageinfo.o /home/drifter/nimble/src/nimcache/stdlib_sequtils.o /home/drifter/nimble/src/nimcache/stdlib_sets.o /home/drifter/nimble/src/nimcache/stdlib_algorithm.o /home/drifter/nimble/src/nimcache/stdlib_lexbase.o /home/drifter/nimble/src/nimcache/stdlib_json.o /home/drifter/nimble/src/nimcache/stdlib_unicode.o /home/drifter/nimble/src/nimcache/stdlib_pegs.o /home/drifter/nimble/src/nimcache/stdlib_linux.o /home/drifter/nimble/src/nimcache/stdlib_cpuinfo.o /home/drifter/nimble/src/nimcache/stdlib_streams.o /home/drifter/nimble/src/nimcache/stdlib_osproc.o /home/drifter/nimble/src/nimcache/stdlib_parseopt.o /home/drifter/nimble/src/nimcache/stdlib_epoll.o /home/drifter/nimble/src/nimcache/stdlib_selectors.o /home/drifter/nimble/src/nimcache/stdlib_net.o /home/drifter/nimble/src/nimcache/stdlib_rawsockets.o /home/drifter/nimble/src/nimcache/stdlib_macros.o /home/drifter/nimble/src/nimcache/stdlib_math.o /home/drifter/nimble/src/nimcache/stdlib_tables.o /home/drifter/nimble/src/nimcache/stdlib_endians.o /home/drifter/nimble/src/nimcache/stdlib_oids.o /home/drifter/nimble/src/nimcache/stdlib_asyncdispatch.o /home/drifter/nimble/src/nimcache/stdlib_asyncnet.o /home/drifter/nimble/src/nimcache/stdlib_base64.o /home/drifter/nimble/src/nimcache/stdlib_hashes.o /home/drifter/nimble/src/nimcache/stdlib_strtabs.o /home/drifter/nimble/src/nimcache/stdlib_parseurl.o /home/drifter/nimble/src/nimcache/stdlib_openssl.o /home/drifter/nimble/src/nimcache/stdlib_unsigned.o /home/drifter/nimble/src/nimcache/stdlib_posix.o /home/drifter/nimble/src/nimcache/stdlib_times.o /home/drifter/nimble/src/nimcache/stdlib_parseutils.o /home/drifter/nimble/src/nimcache/stdlib_strutils.o /home/drifter/nimble/src/nimcache/stdlib_os.o /home/drifter/nimble/src/nimcache/stdlib_sockets.o /home/drifter/nimble/src/nimcache/stdlib_httpclient.o /home/drifter/nimble/src/nimcache/stdlib_system.o /home/drifter/nimble/src/nimcache/nimble.o -ldl -lm Hint: operation successful (35520 lines compiled; 1.851 sec total; 84.865MB) [SuccessX]
Installing nimble-0.4.0 Building nimble/nimble using c backend... command line(1, 1) Error: invalid command line option: '--noNimblePath' Traceback (most recent call last) nimble.nim(810) nimble nimble.nim(783) doAction nimble.nim(567) install nimble.nim(473) installFromDir nimble.nim(422) buildFromDir tools.nim(18) doCmd Error: unhandled exception: Execution failed with exit code 1 [ENimble] Error: execution of an external program failed
I'm guessing nimble is broken with your compiler version, try checking out an earlier commit(of nimble):
git checkout 7d18e2be1cdd4043f61918eae4a9877a90a296a4
nimrod c -r src/babel install
note: it will be called babel
Which branch of Nim did you compile? You may want to try building the bigbreak branch or the devel branch. I haven't tested it on devel though; maybe the latest code only works on bigbreak?
Also if you compile bigbreak, make sure you checkout the bigbreak branch of csources:
$ git clone -b bigbreak git://github.com/Araq/Nimrod.git
$ cd Nimrod
$ git clone -b bigbreak --depth 1 git://github.com/nimrod-code/csources
$ cd csources && sh build.sh
$ cd ..
$ bin/nim c koch
$ ./koch boot -d:release
Will, you are amazing my friend.
The earlier version worked.
Unfortunatwly I'm not sure which Nim I compiled, but this is what I get when I do -v:
Nimrod Compiler Version 0.9.5 (2014-10-13) [Linux: amd64] Copyright (c) 2006-2014 by Andreas Rumpf
git hash: 18ded6c23d72cd21fa0aa10ff61dc6f9af40832c active boot switches: -d:release