c - GCC 无法链接到 libc.a
问题描述
我正在编译一个带有多个库的项目,没有问题。我正在使用标准库内容。但是,math.h
功能无法链接。我的命令行编译如下:
gcc -o exe/split main/split.c -I/usr/include/gsl -Isrc -Llib -L/usr/lib/x86_64-linux-gnu -ltools -lgsl
我正在编译这个简单的脚本,刚刚sqrt
从math.h
许多编译和工作正常的 gsl 函数中添加。 libc.a
存在于/usr/lib/x86_64-linux-gnu
。
在这一点上,链接失败很奇怪,我基本上被卡住了。这里可能是什么问题?
解决方案
大多数声明的函数<math.h>
实际上不在 libc 中。他们在 libm 中,出于歇斯底里的葡萄干——我的意思是,历史原因。
将“ -lm
”添加到您的命令行。最好把它放在最后。
推荐阅读
- javascript - 单击后的Javascript新差异选项卡
- python - Python - 在实例列表中找到大于 0 的最小值
- javascript - 将前端库导入 wix 网站
- apache-spark - Spark-sql 可以在没有安装 Hive 的情况下工作吗?
- xamarin.android - 我无法在具有编写者权限的 Android (Xamarin) 中创建 doc 或 docx 文件。只读
- python - 读取熊猫数据帧的索引转换为标题
- pandas - Pandas - 按列过滤值会引发错误(ValueError:传递的项目数量错误 3,位置意味着 1)
- typescript - 打字稿如何测试两个泛型是否等效?
- python-3.x - 如何在 Tensorflow 中保存多层感知器模型
- javascript - Ember.js 测试页面自动刷新