Я пытался выучить nimlang, потому что кажется, что у него большой потенциал для простой интеграции с python - но я парень windows. Скрипт, который я пытаюсь скомпилировать, очень прост:
import zip/gzipfiles # Import zip package
block:
let vcf = newGzFileStream("test.txt.gz") # Open gzip file
var line: string # Declare line variable
# Loop over each line in the file
while not vcf.atEnd():
line = vcf.readLine()
echo line
Использование тестового файла, который я скачал, с именем 'test.txt.gz':
this
is
gzipped
It успешно компилируется в подсистеме windows linux и обычной linux:
bub@bubs-surface-book-2:/mnt/c/Users/bubth/Development/nim$ nim c read_gzip.nim
Hint: used config file '/etc/nim.cfg' [Conf]
Hint: system [Processing]
Hint: read_gzip [Processing]
Hint: gzipfiles [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: zlib [Processing]
Hint: streams [Processing]
CC: read_gzip
Hint: [Link]
Hint: operation successful (22504 lines compiled; 0.634 sec total; 35.035MiB peakmem; Debug Build) [SuccessX]
bub@bubs-surface-book-2:/mnt/c/Users/bubth/Development/nim$ ./read_gzip
asdf
1234
test
this
works
bub@bubs-surface-book-2:/mnt/c/Users/bubth/Development/nim$
Но в windows компилируется, но затем не знает, как использовать zlib dll:
PS C:\Users\bubth\Development\nim> nim c .\read_gzip.nim
Hint: used config file 'C:\Users\bubth\scoop\apps\nim\current\config\nim.cfg' [Conf]
Hint: system [Processing]
Hint: widestrs [Processing]
Hint: io [Processing]
Hint: read_gzip [Processing]
Hint: gzipfiles [Processing]
Hint: os [Processing]
Hint: strutils [Processing]
Hint: parseutils [Processing]
Hint: math [Processing]
Hint: bitops [Processing]
Hint: macros [Processing]
Hint: algorithm [Processing]
Hint: unicode [Processing]
Hint: pathnorm [Processing]
Hint: osseps [Processing]
Hint: winlean [Processing]
Hint: dynlib [Processing]
Hint: times [Processing]
Hint: options [Processing]
Hint: typetraits [Processing]
Hint: time_t [Processing]
Hint: zlib [Processing]
Hint: streams [Processing]
Hint: [Link]
Hint: operation successful (37181 lines compiled; 0.921 sec total; 46.852MiB peakmem; Debug Build) [SuccessX]
PS C:\Users\bubth\Development\nim> .\read_gzip.exe
could not load: zlib1.dll
PS C:\Users\bubth\Development\nim>
Я пытался установить zlib через https://github.com/microsoft/vcpkg, но даже после того, как прошел и успешно "связал" вещи, он не находит библиотеки. Клянусь, я не тупой, но чего мне не хватает? Есть ли какой-то особый способ получить эти пакеты в windows таким образом, который проворное распознает?