我从Don Knuth下载了一个CWEB程序 - 具体来说
http://www-cs-faculty.stanford.edu/~knuth/programs/sliding.w。
我将sliding.w
转换为sliding.c
。
现在我正在尝试使用以下方法编译它:
gcc sliding.c -o sliding
但后来我得到了:
./sliding.w:116:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
main(int argc, char *argv[])
^
/tmp/cc9NVnXq.o: In function `main':
sliding.c:(.text+0x2006): undefined reference to `gb_init_rand'
sliding.c:(.text+0x201c): undefined reference to `gb_fptr'
sliding.c:(.text+0x202b): undefined reference to `gb_fptr'
sliding.c:(.text+0x2036): undefined reference to `gb_fptr'
sliding.c:(.text+0x2047): undefined reference to `gb_flip_cycle'
collect2: error: ld returned 1 exit status
任何人都可以帮助我吗?
答案 0 :(得分:1)
第一个问题只是警告。致命错误是您缺少gb_
符号,这些符号在此处定义:
http://ftp.cs.stanford.edu/pub/sgb/gb_flip.w
首先你需要将gb_flip.w编译成一个.c文件,然后像这样编译两个.c文件:
gcc sliding.c gb_flip.c -o sliding