linux下,用kde开发时,如何添加使用自己编译的静态库
我在kde的工程选项菜单里,设置配置选项的连接器选项添加-lpthread,这样是可以的。但是我自己编写的静态库,-lmylib,这样就老是说使用库里面的函数没有定义。谢...
我在kde的工程选项菜单里,设置配置选项的连接器选项
添加-lpthread,这样是可以的。但是我自己编写的静态库,-lmylib,这样就老是说使用库里面的函数没有定义。谢谢 展开
添加-lpthread,这样是可以的。但是我自己编写的静态库,-lmylib,这样就老是说使用库里面的函数没有定义。谢谢 展开
1个回答
展开全部
补充:
你还需要一个类似mylib.h的头文件,这个文件声明你的库里的函数以及数据结构,类,常量等
/* file name : mylib.h */
#ifndef _MY_LIB_H__
#define _MY_LIB_H__
#include <unistd.h>
/*
//...
*/
#define MAX_NAME 16 /* 名字最大长度 */
/*库中用到的数据结构*/
#typedef struct _my_struct
{
int num;
char name[MAX_NAME];
} MY_STRUCT;
/*--------------------------
库中的函数声明
*/
int myfunc(int m, int n);
#endif
----------------------------------------------------------
修改Makefile文件
-llibmylib ---- 增加库
-L/usr/lib/mylibpath ---- 增加路径
你还需要一个类似mylib.h的头文件,这个文件声明你的库里的函数以及数据结构,类,常量等
/* file name : mylib.h */
#ifndef _MY_LIB_H__
#define _MY_LIB_H__
#include <unistd.h>
/*
//...
*/
#define MAX_NAME 16 /* 名字最大长度 */
/*库中用到的数据结构*/
#typedef struct _my_struct
{
int num;
char name[MAX_NAME];
} MY_STRUCT;
/*--------------------------
库中的函数声明
*/
int myfunc(int m, int n);
#endif
----------------------------------------------------------
修改Makefile文件
-llibmylib ---- 增加库
-L/usr/lib/mylibpath ---- 增加路径
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询