CSDN论坛 > Linux/Unix社区 > 应用程序开发区

初学cc的问题,链接静态库 [问题点数:20分,结帖人2608]

Bbs1
本版专家分:0
结帖率 94.7%
CSDN今日推荐
Bbs3
本版专家分:751
Bbs6
本版专家分:5170
Bbs1
本版专家分:0
匿名用户不能发表回复!
其他相关推荐
“GCC连接静态库成功,G++连接静态库不成功”的解决方法
1.编译器“内联函数开关”引起的错误:      近来使用GCC,"Hello,World"都进行的挺顺利,但是到编译自定义类时却问题多多。程序的目的是实现C++下的字符串类,非常简单,源文件有三个:        String.h        //类定义的头文件        String.cxx      //类实现文件        teststring.cxx //类测试
UNIX下C语言动态链接库SO
UNIX下C语言动态链接库SO 2009-11-22 专题 大恒 daheng99@qq.com   相关技术 gcc编译加-fPIC Ø  以动态链接库的形式给出的。所以编译这个库的时候我们需要指定-fPIC,也就是指定生成的代码是位置无关的(position independent code)。 Ø  在-fPIC情况下,编译器将把所有的绝对位移用相对于0地址的相
静态链接库相互依赖
想同时链接两个自定义的静态链接库,发现无论以什么顺序链接都会有一些函数未定义。网上搜了一番找到解决方案: 假设有liba.a和libb.a两个静态链接库,则添加链接选项时,多链接其中一个库一遍即可解决相互依赖的问题。如-la -lb -la。 为什么相互依赖的静态链接库会导致其中一些库中的函数未定义,因为链接器并没有把库中的所有符号都链接到当前程序中, 而是当前程序中有未定义的符号就到链接库
android静态库链接顺序问题
静态库链接问题 最近做的andriod项目中遇到了一个奇怪的bug,怀疑到了init进程内存越界,所以想用efence进行检查。 但是有个问题,以前用efence,都是用的动态库,而init中只能使用静态库。 原因么,就是init的Android.mk中有下面这个东东: LOCAL_FORCE_STATIC_EXECUTABLE := true 静态库就静态库呗,反正原来已经使用
VC++6.0中链接静态库的问题
用到一个静态库的接口: #include "signcompress/signcompress.h" #pragma comment(lib, "../commoncodes/A9L/signcompress/libsigncompress.lib")结果报如下link错误: Linking... libc.lib(crt0init.obj) : error LNK2005: ___xc_z
实习点滴 - 破窗理论、C++ 函数模板静态库
最近在搬砖,本以为仅仅是体力活而已,无奈自己功力不够,处处碰壁。这次的需求及其背景:业务中有一个recommendId的东西,类型是string或者vector< char >。第一个字节(即recommendId[0])用来标识数据所属的类型,比如4代表商业化广告,5代表游戏广告等,然后后面的字节或者是string类型的数据,或者是jce类型的数据(这个即为编码协议)。最近开始推广使用新的协议,第
浅析静态库链接原理
静态库的链接基本上同链接目标文件.obj/.o相同,但也有些不同的地方。本文简要描述linux下静态库在链接过程中的一些细节。 静态库文件格式 静态库远远不同于动态库,不涉及到符号重定位之类的问题。静态库本质上只是将一堆目标文件进行打包而已。静态库没有标准,不同的linux下都会有些细微的差别。大致的格式wiki上描述的较清楚: Global header -----------------
gcc静态库相互依赖找不到符号问题
gcc静态库链接的问题  有两个静态库liblua.a和libluaexport.a。其中libluaexport.a依赖于liblua.a。 链接时,必须按顺序写成 -lluaexport -llua而不能写成 -llua -lluaexport。 原因是,gcc在链接静态库时,第一种写法下,gcc在libluaexport.a中查找到未知的符号,然后在liblua.a中查
gcc系强制链接静态库(同时有.so和.a)
gcc系强制链接静态库
ld链接动态库静态库问题
在使用redis写C代码的时候遇到的问题,安装redis时 make install可以看到: mkdir -p/usr/local/include/hiredis /usr/local/lib cp -a hiredis.h async.h read.h sds.h adapters/usr/local/include/hiredis cp -a libhiredis.so/usr/loc
关闭
关闭