我'继承了'我教授的一堆文件,她让我看看我是否能理解整个项目。它是一堆文件(python, c, java
)的混合物,它们将在特定数据集上一个接一个地运行。从我所看到的,代码编写得非常糟糕,README是一个笑话。
第一步涉及使用数据集和另外两个参数运行python脚本。该文件的最后一行是
os.system("./blar " + str(raw_datafile) + " " + str(combos) + " " + str(mine1) + " " + str(mine2))
转换为 -
./blar RareDiseaseDataSet.xlsx 57 1 84
我知道os.system
在子shell中执行命令。但是,当执行上述命令时,结果为./blar: No such file or directory
。该文件夹有一个名为blar.c
的文件。我的c
知识非常基础,为了生成可执行文件,我尝试了make blar.c
,gcc blar.c -o blar
,但无济于事。我如何让它运行?
修改 试过这些命令 -
$ make blar.c
make: Nothing to be done for `blar.c'.
$ gcc blar.c -o blar
/tmp/ccblMR3s.o: In function `nonsingles':
blar.c:(.text+0x359): undefined reference to `checknull'
blar.c:(.text+0x3e3): undefined reference to `checknull'
blar.c:(.text+0x759): undefined reference to `next_comb'
/tmp/ccblMR3s.o: In function `main':
blar.c:(.text+0xa20): undefined reference to `readfile'
blar.c:(.text+0xa2d): undefined reference to `checknull'
blar.c:(.text+0xb44): undefined reference to `destroy_file_array'
collect2: ld returned 1 exit status
TL; DR
如何从.c
文件创建可执行文件。
P.S。 - 在学校服务器上运行,这是史前的,并使用python 2.4.x
答案 0 :(得分:1)
您与gcc blar.c -o blar
走在了正确的轨道上。大概它失败了,所以你必须找出原因(检查错误信息)并解决它。如果目录中有Makefile
,则它会包含构建所有内容的食谱(如果您很幸运的话)。
PS。您的blar
程序看起来必须能够阅读Excel电子表格;几乎可以肯定它依赖于其他源文件或库,因此您需要在构建blar
的命令中编译和/或链接其他文件。我真的希望你有Makefile
。