1.头文件
include存放的是编译库文件生成的头文件集合,比如curl目录,目录中都是.h文件,添加方式如下:
2.库文件
lib是存放库文件的目录,形如libxxx.so或libxxx.a形式的文件,添加方式如下:
3.引用
库的引用可以直接取libxxx.a中的xxx部分,如下的curl、ssl、crypto就是:
1.编译报错“undefined reference to `pthread_create'”
解决办法:引入pthread库
2.编译报错“libcrypto.a undefined reference to symbol 'dlclose'”
解决办法: add -ldl after libcrypto and libssl in your link command.
您好,很高兴为您解答:在使用cmake时,CMakeLists.txt的写法如下: add_library( ${MODULE_NAME} SHARED ${CMAKE_SOURCE_DIR}/builttime.c #要生成一个so,至少要包含一个源文件,实在没有可以把库的编译时间戳打到这儿。 ) target_link_libraries( ${MODULE_NAME} ${${MODULE_NAME}_EXTRA_LDFLAGS} "-Wl,--whole-archive" #告诉编译器,
从这里开始,所有的库的内容都包含到so中 ${LOCAL_MODULES} #可以是以源代码生成的静态库 ${PREBUILT_MODULES} #可以是预先生成的静态库 "-Wl,--no-whole-archive" #告诉编译器,从这里开始,以后的库的内容不用都包含到so中 )
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)