在ubuntu 18.04上安装了GSL2.5。
尝试使用以下方法编译和运行sample_matrix.c脚本
gcc -Wall -I/usr/local/包括-c sample_matrix.c
成功运行;进一步显示输出,
$./a.
给出错误:
bash:./a.out:没有这样的文件或目录
我目前在名为“gsl”的文件夹中保存sample_matrix.c文件,这个文件夹也是我安装gsl pkg的地方。
发布于 2019-07-02 22:26:24
-c开关告诉gcc将源代码编译为二进制目标代码,但不链接它以创建可执行程序:您首先需要删除:
gcc -Wall -I/usr/local/include sample_matrix.c然后您可能会发现有很多undefined reference to ...错误,因为您还没有指定要在命令行上链接的相关库。(头文件只声明事物;库定义它们)。如果您已经将gsl安装在像/usr/local这样的标准位置,那么它应该在/usr/local/lib/pkgconfig/中放置一个.pc文件,该文件将允许您使用pkg-config ex自动化库的规范。
gcc -Wall -I/usr/local/include sample_matrix.c `pkg-config --libs gsl`(注意参数的顺序:引用从左到右解析)。您也可以使用pkg-config来定位头文件。
gcc -Wall sample_matrix.c `pkg-config --cflags --libs gsl`https://askubuntu.com/questions/1155491
复制相似问题