小编Ste*_*hen的帖子

告诉ld通过环境变量查找目录的位置

我正在为一个类评分C和C++文件,这个赋值使用GSL库.由于我的计算机上没有root权限,因此我的GSL库安装在我的主目录中,因此我需要告诉编译器和链接器在哪里找到它.

当我自己编写程序时,这不是问题,因为我只是在gcc中添加了适当的-L和-I标志.

但是当我编译学生的文件时,我不想编辑他们的每个makefile.相反,我想将适当的目录放入环境变量中,以便无缝地发生.

为此,我已经使用库或包含位置导出了以下变量:C_INCLUDE_PATH,CPLUS_INCLUDE_PATH,LIBRARY_PATH和LD_LIBRARY_PATH

但是当我编译学生的项目时,用

gcc -Wall -o MC_thread MC_thread.c -lgsl -lgslcblas -lpthread -lm
Run Code Online (Sandbox Code Playgroud)

我收到以下错误:

/usr/bin/ld: cannot find -lgsl
collect2: ld returned 1 exit status
make: *** [all] Error 1
Run Code Online (Sandbox Code Playgroud)

我正在使用gcc v 4.1.2.如果我使用gcc v 4.4,我实际上没有得到错误,但我不知道为什么.我的链接器是:

ld -V
GNU ld version 2.17.50.0.6-12.el5 20061020.
Run Code Online (Sandbox Code Playgroud)

c path shared-libraries ld

8
推荐指数
1
解决办法
8404
查看次数

运行R内核时如何访问google Colab中的shell

!当我将 Python 与 colab 一起使用时,您可以使用和之类的东西访问底层操作系统%%shell,例如!ls列出文件。

当我将 colab 与 R 内核一起使用时,!%%shell技巧不起作用。在这种情况下有没有办法从 colab 调用 shell ?

https://colab.research.google.com/#create=true&language=r

r google-colaboratory

6
推荐指数
1
解决办法
1202
查看次数

撤消使用 vim 重新加载新缓冲区

我用 gvim 打开了一个文件,它问我是否要重新加载当前缓冲区,因为它检测到文件的更新版本。我接受了,但事实证明新缓冲区不是我想要的。有没有办法恢复旧缓冲区?vim -r不幸的是,磁盘上的文件(以及我使用 查看的 swp 文件)包含新缓冲区。

vim

3
推荐指数
1
解决办法
560
查看次数

标签 统计

c ×1

google-colaboratory ×1

ld ×1

path ×1

r ×1

shared-libraries ×1

vim ×1