haiju's 開発メモ

開発に必要な情報を自分用にメモ

Nimがpacmanでインストールできると聞いて

pacmanでもインストールできるようになったって聞いたけど、

開発版もあるし、そっちのアップデートから試してみようと

思って実行したらビルドエラーになったので、開発版のパス

設定をコメントアウトして、pacmanでインストールしてみたw

開発版のバグが直ったらそっちも再アップデートしてみようかな

って思ったwww

0.17.1から0.17.2-1しか上がってないのに、ビルドエラーとかw

[手順]

1. 開発版のディレクトリへ移動し、更新分の差分を取得。

% cd Nim

% git pull

2. ビルド実行。

% ./koch boot -d:release

3. エラー。

iteration: 1
compiler/nim0 c -d:release --nimcache:nimcache/release compiler/nim.nim
Hint: used config file '/home/haiju/Nim/config/nim.cfg' [Conf]
Hint: used config file '/home/haiju/Nim/compiler/nim.cfg' [Conf]
Hint: system [Processing]
lib/system.nim(470, 35) Warning: unknown magic 'Exception' might crash the compiler [UnknownMagic]
Hint: nim [Processing]
Hint: commands [Processing]
Hint: os [Processing]
Hint: strutils [Processing]
Hint: parseutils [Processing]
Hint: math [Processing]
Hint: algorithm [Processing]
Hint: times [Processing]
Hint: posix [Processing]
Hint: ospaths [Processing]
Hint: msgs [Processing]
Hint: options [Processing]
Hint: strtabs [Processing]
Hint: hashes [Processing]
Hint: osproc [Processing]
Hint: streams [Processing]
Hint: cpuinfo [Processing]
Hint: linux [Processing]
Hint: sets [Processing]
Hint: tables [Processing]
Hint: ropes [Processing]
Hint: platform [Processing]
Hint: terminal [Processing]
Hint: macros [Processing]
Hint: strformat [Processing]
Hint: unicode [Processing]
Hint: colors [Processing]
Hint: termios [Processing]
Hint: nversion [Processing]
Hint: condsyms [Processing]
Hint: idents [Processing]
Hint: wordrecg [Processing]
Hint: extccomp [Processing]
Hint: securehash [Processing]
Hint: json [Processing]
Hint: lexbase [Processing]
Hint: options [Processing]
Hint: typetraits [Processing]
lib/pure/json.nim(1907, 9) Error: type mismatch: got (NimNode, proc (bl: typed, op: string): NimNode{.noSideEffect.}, void)
but expected one of:
proc add(father, child: JsonNode)
proc add(obj: JsonNode; key: string; val: JsonNode)
proc add[T](x: var seq[T]; y: openArray[T])
proc add(x: var string; y: cstring)
proc add(result: var string; x: float)
proc add(x: var string; y: string)
proc add(result: var string; x: int64)
proc add(x: var string; y: char)
proc add[A, B](t: TableRef[A, B]; key: A; val: B)
proc add[A, B](t: OrderedTableRef[A, B]; key: A; val: B)
proc add[A, B](t: var Table[A, B]; key: A; val: B)
proc add[A, B](t: var OrderedTable[A, B]; key: A; val: B)
proc add[T](x: var seq[T]; y: T)
proc add(father, child: NimNode): NimNode
proc add(father: NimNode; children: varargs[NimNode]): NimNode

FAILURE

4. ~/.zshrc 以下に設定した開発版のPATHをコメントアウト

5. pacmanでインストール。

% sudo pacman -S nim
依存関係を解決しています...
衝突するパッケージがないか確認しています...

パッケージ (1) nim-0.17.2-1

合計インストール容量: 34.59 MiB

:: インストールを行いますか? [Y/n] y
(1/1) キーリングのキーを確認 [############################################################] 100%
(1/1) パッケージの整合性をチェック [############################################################] 100%
(1/1) パッケージファイルのロード [############################################################] 100%
(1/1) ファイルの衝突をチェック [############################################################] 100%
(1/1) 空き容量を確認 [############################################################] 100%
:: パッケージの変更を処理しています...
(1/1) インストール nim [############################################################] 100%
:: トランザクション後のフックを実行...
(1/1) Arming ConditionNeedsUpdate...

# haiju at manjaro-fluxbox in ~ [17:39:54]
→ nim -v
Nim Compiler Version 0.17.2 (2017-09-11) [Linux: amd64]
Copyright (c) 2006-2017 by Andreas Rumpf

active boot switches: -d:release -d:nativeStackTrace

 ※ちなみに、開発版でうまくビルドできれば0.17.3になるらしい。

[参考サイト]

nim-lang.org

How I Start.