首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >编译库项目时CodeLite错误

编译库项目时CodeLite错误
EN

Stack Overflow用户
提问于 2014-05-23 11:36:57
回答 1查看 3.1K关注 0票数 0

我试图用CodeLite编译静态库项目并得到错误:

代码语言:javascript
复制
ar rcus ./Debug/libtestlib.a @"testlib.txt" 
ar: @testlib.txt: No such file or directory

但我有文件testlib.txt。当我检查导出的makefile时,我看到:

代码语言:javascript
复制
$(AR) $(ArchiveOutputSwitch)$(OutputFile) @$(ObjectsFileList) $(ArLibs)

对我来说,在ObjectsFileList附近看到@符号是很奇怪的。如何在CodeLite中编译静态库项目?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-05-23 15:01:37

@"testlib.txt"是一种让链接器(在您的情况下是ar )从文件而不是从命令行读取对象列表的方法,这是因为在某些操作系统上,程序可以从命令行接受输入字符串的限制。

通常这不是一个问题(您没有提到您的操作系统和CodeLite版本是什么),但是如果这是一个问题(就像在您的例子中那样),您可以在CodeLite的菜单栏中禁用它:

Settings -> Build Settings -> Compilers -> <Your Compiler Name> -> Advanced

取消选中选项:“通过文件将对象列表传递给链接器”,您的问题就会消失。

FYI:我只在OSX上看到这个错误,这里是这样的吗?

埃兰

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23828202

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档