使用libboostpython.so动态链接是没有问题的,但是使用libboostpython.a静态链接,会产生如下错误(图片是线程,道理是一样的):


原因在于boost的编译工具bjam在编译boost静态库时,没有使用-fPIC选项,使得编译出来的静态库没有重定位能力。

这样在64位机器上,boost编译出来的静态库几乎全部不能使用。并且bjam工具不提供定制编译参数的功能。
第一部分:解决思想

查看bjam工具的编译命令,将编译命令记录下来,批量修改成带-fPIC选项后,执行编译。

由于我们只需要libboostpython.a库,所以可以只编译python相关库。查看bjam --help后,使用命令如下:

./bjam --with-python --build-dir="mystage" link=static -n > comtxt

--with-python表示只编译python库,--build-dir="mystage"表示编译的库放到mystage目录下,link=static表示只编译静态库,-n表示只显示命令并不执行。> comtxt表示输出重定向到comtxt文件。在boost目录下执行这个命令后,得到comtxt文件,这个文件就是带有编译命令和其它输出的所有内容了。然后将这个文件中命令之外的语句行批量删除,这些语句行带有明显特征,可以使用notepad 等带有正则式匹配的工具批量删除,也可以在vim下用dd手动删除,一共也不到200行。删除后,批量替换"g "为"g " -fPIC,关闭comtxt文件。执行命令

bash comtxt

这个命令就是用系统shell来解释命令行,最后,我们就在mystage的最深目录下得到了我们用-fPIC编译处理的静态库。

第二部分:comtxt文件内容(删掉没有用的_非可执行命令)

mkdir -p "stage24"
        mkdir -p "stage24/boost"
        mkdir -p "stage24/boost/bin.v2"
        mkdir -p "stage24/boost/bin.v2/libs"
        mkdir -p "stage24/boost/bin.v2/libs/python"
        mkdir -p "stage24/boost/bin.v2/libs/python/build"
        mkdir -p "stage24/boost/bin.v2/libs/python/build/gcc-4.1.2"
        mkdir -p "stage24/boost/bin.v2/libs/python/build/gcc-4.1.2/release"
        mkdir -p "stage24/boost/bin.v2/libs/python/build/gcc-4.1.2/release/link-static"
        mkdir -p "stage24/boost/bin.v2/libs/python/build/gcc-4.1.2/release/link-static/threading-multi"
    "g " -fPIC  -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -pthread  -DBOOST_ALL_NO_LIB=1 -DBOOST_PYTHON_SOURCE -DBOOST_PYTHON_STATIC_LIB -DNDEBUG  -I"." -I"/usr/ali/include/python2.5" -c -o "stage24/boost/bin.v2/libs/python/build/gcc-4.1.2/release/link-static/threading-multi/numeric.o" "libs/python/src/numeric.cpp"
    "g " -fPIC  -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -pthread  -DBOOST_ALL_NO_LIB=1 -DBOOST_PYTHON_SOURCE -DBOOST_PYTHON_STATIC_LIB -DNDEBUG  -I"." -I"/usr/ali/include/python2.5" -c -o "stage24/boost/bin.v2/libs/python/build/gcc-4.1.2/release/link-static/threading-multi/list.o" "libs/python/src/list.cpp"
    "g " -fPIC  -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -pthread  -DBOOST_ALL_NO_LIB=1 -DBOOST_PYTHON_SOURCE -DBOOST_PYTHON_STATIC_LIB -DNDEBUG  -I"." -I"/usr/ali/include/python2.5" -c -o "stage24/boost/bin.v2/libs/python/build/gcc-4.1.2/release/link-static/threading-multi/long.o" "libs/python/src/long.cpp"
    "g " -fPIC  -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -pthread  -DBOOST_ALL_NO_LIB=1 -DBOOST_PYTHON_SOURCE -DBOOST_PYTHON_STATIC_LIB -DNDEBUG  -I"." -I"/usr/ali/include/python2.5" -c -o "stage24/boost/bin.v2/libs/python/build/gcc-4.1.2/release/link-static/threading-multi/dict.o" "libs/python/src/dict.cpp"
    "g " -fPIC  -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -pthread  -DBOOST_ALL_NO_LIB=1 -DBOOST_PYTHON_SOURCE -DBOOST_PYTHON_STATIC_LIB -DNDEBUG  -I"." -I"/usr/ali/include/python2.5" -c -o "stage24/boost/bin.v2/libs/python/build/gcc-4.1.2/release/link-static/threading-multi/tuple.o" "libs/python/src/tuple.cpp"
    "g " -fPIC  -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -pthread  -DBOOST_ALL_NO_LIB=1 -DBOOST_PYTHON_SOURCE -DBOOST_PYTHON_STATIC_LIB -DNDEBUG  -I"." -I"/usr/ali/include/python2.5" -c -o "stage24/boost/bin.v2/libs/python/build/gcc-4.1.2/release/link-static/threading-multi/str.o" "libs/python/src/str.cpp"
    "g " -fPIC  -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -pthread  -DBOOST_ALL_NO_LIB=1 -DBOOST_PYTHON_SOURCE -DBOOST_PYTHON_STATIC_LIB -DNDEBUG  -I"." -I"/usr/ali/include/python2.5" -c -o "stage24/boost/bin.v2/libs/python/build/gcc-4.1.2/release/link-static/threading-multi/slice.o" "libs/python/src/slice.cpp"
        mkdir -p "stage24/boost/bin.v2/libs/python/build/gcc-4.1.2/release/link-static/threading-multi/converter"
    
    "g " -fPIC  -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -pthread  -DBOOST_ALL_NO_LIB=1 -DBOOST_PYTHON_SOURCE -DBOOST_PYTHON_STATIC_LIB -DNDEBUG  -I"." -I"/usr/ali/include/python2.5" -c -o "stage24/boost/bin.v2/libs/python/build/gcc-4.1.2/release/link-static/threading-multi/converter/from_python.o" "libs/python/src/converter/from_python.cpp"
    "g " -fPIC  -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -pthread  -DBOOST_ALL_NO_LIB=1 -DBOOST_PYTHON_SOURCE -DBOOST_PYTHON_STATIC_LIB -DNDEBUG  -I"." -I"/usr/ali/include/python2.5" -c -o "stage24/boost/bin.v2/libs/python/build/gcc-4.1.2/release/link-static/threading-multi/converter/registry.o" "libs/python/src/converter/registry.cpp"
    "g " -fPIC  -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -pthread  -DBOOST_ALL_NO_LIB=1 -DBOOST_PYTHON_SOURCE -DBOOST_PYTHON_STATIC_LIB -DNDEBUG  -I"." -I"/usr/ali/include/python2.5" -c -o "stage24/boost/bin.v2/libs/python/build/gcc-4.1.2/release/link-static/threading-multi/converter/type_id.o" "libs/python/src/converter/type_id.cpp"
        mkdir -p "stage24/boost/bin.v2/libs/python/build/gcc-4.1.2/release/link-static/threading-multi/object"
    
    "g " -fPIC  -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -pthread  -DBOOST_ALL_NO_LIB=1 -DBOOST_PYTHON_SOURCE -DBOOST_PYTHON_STATIC_LIB -DNDEBUG  -I"." -I"/usr/ali/include/python2.5" -c -o "stage24/boost/bin.v2/libs/python/build/gcc-4.1.2/release/link-static/threading-multi/object/enum.o" "libs/python/src/object/enum.cpp"
    "g " -fPIC  -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -pthread  -DBOOST_ALL_NO_LIB=1 -DBOOST_PYTHON_SOURCE -DBOOST_PYTHON_STATIC_LIB -DNDEBUG  -I"." -I"/usr/ali/include/python2.5" -c -o "stage24/boost/bin.v2/libs/python/build/gcc-4.1.2/release/link-static/threading-multi/object/class.o" "libs/python/src/object/class.cpp"
    "g " -fPIC  -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -pthread  -DBOOST_ALL_NO_LIB=1 -DBOOST_PYTHON_SOURCE -DBOOST_PYTHON_STATIC_LIB -DNDEBUG  -I"." -I"/usr/ali/include/python2.5" -c -o "stage24/boost/bin.v2/libs/python/build/gcc-4.1.2/release/link-static/threading-multi/object/function.o" "libs/python/src/object/function.cpp"
    "g " -fPIC  -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -pthread  -DBOOST_ALL_NO_LIB=1 -DBOOST_PYTHON_SOURCE -DBOOST_PYTHON_STATIC_LIB -DNDEBUG  -I"." -I"/usr/ali/include/python2.5" -c -o "stage24/boost/bin.v2/libs/python/build/gcc-4.1.2/release/link-static/threading-multi/object/inheritance.o" "libs/python/src/object/inheritance.cpp"
    "g " -fPIC  -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -pthread  -DBOOST_ALL_NO_LIB=1 -DBOOST_PYTHON_SOURCE -DBOOST_PYTHON_STATIC_LIB -DNDEBUG  -I"." -I"/usr/ali/include/python2.5" -c -o "stage24/boost/bin.v2/libs/python/build/gcc-4.1.2/release/link-static/threading-multi/object/life_support.o" "libs/python/src/object/life_support.cpp"
    "g " -fPIC  -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -pthread  -DBOOST_ALL_NO_LIB=1 -DBOOST_PYTHON_SOURCE -DBOOST_PYTHON_STATIC_LIB -DNDEBUG  -I"." -I"/usr/ali/include/python2.5" -c -o "stage24/boost/bin.v2/libs/python/build/gcc-4.1.2/release/link-static/threading-multi/object/pickle_support.o" "libs/python/src/object/pickle_support.cpp"
    "g " -fPIC  -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -pthread  -DBOOST_ALL_NO_LIB=1 -DBOOST_PYTHON_SOURCE -DBOOST_PYTHON_STATIC_LIB -DNDEBUG  -I"." -I"/usr/ali/include/python2.5" -c -o "stage24/boost/bin.v2/libs/python/build/gcc-4.1.2/release/link-static/threading-multi/errors.o" "libs/python/src/errors.cpp"
    "g " -fPIC  -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -pthread  -DBOOST_ALL_NO_LIB=1 -DBOOST_PYTHON_SOURCE -DBOOST_PYTHON_STATIC_LIB -DNDEBUG  -I"." -I"/usr/ali/include/python2.5" -c -o "stage24/boost/bin.v2/libs/python/build/gcc-4.1.2/release/link-static/threading-multi/module.o" "libs/python/src/module.cpp"
    "g " -fPIC  -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -pthread  -DBOOST_ALL_NO_LIB=1 -DBOOST_PYTHON_SOURCE -DBOOST_PYTHON_STATIC_LIB -DNDEBUG  -I"." -I"/usr/ali/include/python2.5" -c -o "stage24/boost/bin.v2/libs/python/build/gcc-4.1.2/release/link-static/threading-multi/converter/builtin_converters.o" "libs/python/src/converter/builtin_converters.cpp"
    "g " -fPIC  -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -pthread  -DBOOST_ALL_NO_LIB=1 -DBOOST_PYTHON_SOURCE -DBOOST_PYTHON_STATIC_LIB -DNDEBUG  -I"." -I"/usr/ali/include/python2.5" -c -o "stage24/boost/bin.v2/libs/python/build/gcc-4.1.2/release/link-static/threading-multi/converter/arg_to_python_base.o" "libs/python/src/converter/arg_to_python_base.cpp"
    "g " -fPIC  -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -pthread  -DBOOST_ALL_NO_LIB=1 -DBOOST_PYTHON_SOURCE -DBOOST_PYTHON_STATIC_LIB -DNDEBUG  -I"." -I"/usr/ali/include/python2.5" -c -o "stage24/boost/bin.v2/libs/python/build/gcc-4.1.2/release/link-static/threading-multi/object/iterator.o" "libs/python/src/object/iterator.cpp"
    "g " -fPIC  -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -pthread  -DBOOST_ALL_NO_LIB=1 -DBOOST_PYTHON_SOURCE -DBOOST_PYTHON_STATIC_LIB -DNDEBUG  -I"." -I"/usr/ali/include/python2.5" -c -o "stage24/boost/bin.v2/libs/python/build/gcc-4.1.2/release/link-static/threading-multi/object/stl_iterator.o" "libs/python/src/object/stl_iterator.cpp"
    "g " -fPIC  -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -pthread  -DBOOST_ALL_NO_LIB=1 -DBOOST_PYTHON_SOURCE -DBOOST_PYTHON_STATIC_LIB -DNDEBUG  -I"." -I"/usr/ali/include/python2.5" -c -o "stage24/boost/bin.v2/libs/python/build/gcc-4.1.2/release/link-static/threading-multi/object_protocol.o" "libs/python/src/object_protocol.cpp"
    "g " -fPIC  -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -pthread  -DBOOST_ALL_NO_LIB=1 -DBOOST_PYTHON_SOURCE -DBOOST_PYTHON_STATIC_LIB -DNDEBUG  -I"." -I"/usr/ali/include/python2.5" -c -o "stage24/boost/bin.v2/libs/python/build/gcc-4.1.2/release/link-static/threading-multi/object_operators.o" "libs/python/src/object_operators.cpp"
    "g " -fPIC  -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -pthread  -DBOOST_ALL_NO_LIB=1 -DBOOST_PYTHON_SOURCE -DBOOST_PYTHON_STATIC_LIB -DNDEBUG  -I"." -I"/usr/ali/include/python2.5" -c -o "stage24/boost/bin.v2/libs/python/build/gcc-4.1.2/release/link-static/threading-multi/wrapper.o" "libs/python/src/wrapper.cpp"
    "g " -fPIC  -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -pthread  -DBOOST_ALL_NO_LIB=1 -DBOOST_PYTHON_SOURCE -DBOOST_PYTHON_STATIC_LIB -DNDEBUG  -I"." -I"/usr/ali/include/python2.5" -c -o "stage24/boost/bin.v2/libs/python/build/gcc-4.1.2/release/link-static/threading-multi/import.o" "libs/python/src/import.cpp"
    "g " -fPIC  -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -pthread  -DBOOST_ALL_NO_LIB=1 -DBOOST_PYTHON_SOURCE -DBOOST_PYTHON_STATIC_LIB -DNDEBUG  -I"." -I"/usr/ali/include/python2.5" -c -o "stage24/boost/bin.v2/libs/python/build/gcc-4.1.2/release/link-static/threading-multi/exec.o" "libs/python/src/exec.cpp"
    "g " -fPIC  -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -pthread  -DBOOST_ALL_NO_LIB=1 -DBOOST_PYTHON_SOURCE -DBOOST_PYTHON_STATIC_LIB -DNDEBUG  -I"." -I"/usr/ali/include/python2.5" -c -o "stage24/boost/bin.v2/libs/python/build/gcc-4.1.2/release/link-static/threading-multi/object/function_doc_signature.o" "libs/python/src/object/function_doc_signature.cpp"
    rm -f "stage24/boost/bin.v2/libs/python/build/gcc-4.1.2/release/link-static/threading-multi/libboost_python.a" 
    "/usr/bin/ar"  rc "stage24/boost/bin.v2/libs/python/build/gcc-4.1.2/release/link-static/threading-multi/libboost_python.a" "stage24/boost/bin.v2/libs/python/build/gcc-4.1.2/release/link-static/threading-multi/numeric.o" "stage24/boost/bin.v2/libs/python/build/gcc-4.1.2/release/link-static/threading-multi/list.o" "stage24/boost/bin.v2/libs/python/build/gcc-4.1.2/release/link-static/threading-multi/long.o" "stage24/boost/bin.v2/libs/python/build/gcc-4.1.2/release/link-static/threading-multi/dict.o" "stage24/boost/bin.v2/libs/python/build/gcc-4.1.2/release/link-static/threading-multi/tuple.o" "stage24/boost/bin.v2/libs/python/build/gcc-4.1.2/release/link-static/threading-multi/str.o" "stage24/boost/bin.v2/libs/python/build/gcc-4.1.2/release/link-static/threading-multi/slice.o" "stage24/boost/bin.v2/libs/python/build/gcc-4.1.2/release/link-static/threading-multi/converter/from_python.o" "stage24/boost/bin.v2/libs/python/build/gcc-4.1.2/release/link-static/threading-multi/converter/registry.o" "stage24/boost/bin.v2/libs/python/build/gcc-4.1.2/release/link-static/threading-multi/converter/type_id.o" "stage24/boost/bin.v2/libs/python/build/gcc-4.1.2/release/link-static/threading-multi/object/enum.o" "stage24/boost/bin.v2/libs/python/build/gcc-4.1.2/release/link-static/threading-multi/object/class.o" "stage24/boost/bin.v2/libs/python/build/gcc-4.1.2/release/link-static/threading-multi/object/function.o" "stage24/boost/bin.v2/libs/python/build/gcc-4.1.2/release/link-static/threading-multi/object/inheritance.o" "stage24/boost/bin.v2/libs/python/build/gcc-4.1.2/release/link-static/threading-multi/object/life_support.o" "stage24/boost/bin.v2/libs/python/build/gcc-4.1.2/release/link-static/threading-multi/object/pickle_support.o" "stage24/boost/bin.v2/libs/python/build/gcc-4.1.2/release/link-static/threading-multi/errors.o" "stage24/boost/bin.v2/libs/python/build/gcc-4.1.2/release/link-static/threading-multi/module.o" "stage24/boost/bin.v2/libs/python/build/gcc-4.1.2/release/link-static/threading-multi/converter/builtin_converters.o" "stage24/boost/bin.v2/libs/python/build/gcc-4.1.2/release/link-static/threading-multi/converter/arg_to_python_base.o" "stage24/boost/bin.v2/libs/python/build/gcc-4.1.2/release/link-static/threading-multi/object/iterator.o" "stage24/boost/bin.v2/libs/python/build/gcc-4.1.2/release/link-static/threading-multi/object/stl_iterator.o" "stage24/boost/bin.v2/libs/python/build/gcc-4.1.2/release/link-static/threading-multi/object_protocol.o" "stage24/boost/bin.v2/libs/python/build/gcc-4.1.2/release/link-static/threading-multi/object_operators.o" "stage24/boost/bin.v2/libs/python/build/gcc-4.1.2/release/link-static/threading-multi/wrapper.o" "stage24/boost/bin.v2/libs/python/build/gcc-4.1.2/release/link-static/threading-multi/import.o" "stage24/boost/bin.v2/libs/python/build/gcc-4.1.2/release/link-static/threading-multi/exec.o" "stage24/boost/bin.v2/libs/python/build/gcc-4.1.2/release/link-static/threading-multi/object/function_doc_signature.o"
    "/usr/bin/ranlib" "stage24/boost/bin.v2/libs/python/build/gcc-4.1.2/release/link-static/threading-multi/libboost_python.a"
    cp "stage24/boost/bin.v2/libs/python/build/gcc-4.1.2/release/link-static/threading-multi/libboost_python.a"  "stage/lib/libboost_python.a"

第三部分:编译出来的文件

这个是使用boost1.48和python2.7.2编译出来静态库,可去我的资源里查找。

http://download.csdn.net/detail/ccchu/4508278

第四部分:网上的其它方法(boost1.43)

今天在网上看到了更容易的方法,在boost_inc下,
编辑
vim tools/build/v2/tools/gcc.jam
在750行处,添加
toolset.flags $(toolset).compile USER_OPTIONS $(condition)/<link>static
: -fPIC : unchecked ;
toolset.flags $(toolset).compile.c++ USER_OPTIONS $(condition)/<link>static
: -fPIC : unchecked ;
然后
./bjam -a --with-python stage

boost中静态库编译没有-fPIC选项的问题解决方案相关推荐

  1. 动态库、静态库编译测试:含静态库链接动态库、静态库,动态库链接静态库、动态库

    本文的目的是测试各种类型库的编译后的使用效果,包括库又链接其他库的编译方法,使用方法,依赖性等. 太长不看版:请跳至文章最后的总结对比表. 一.内容包含: ①静态库libbb.a依赖静态库libaa. ...

  2. 将静态库编译到动态库中

    最近做一个东西,需要采集硬件设备的音视频数据,然后做编码.以前做过编码部分直接拽过来使用,只写硬件采集部分即可.  调查发现,硬件采集驱动过于老旧,必须使用ffmpeg3的API,而编码部分则使用了f ...

  3. 如何将内核静态库编译连接到驱动程序中去【转】

    转自:http://blog.csdn.net/ganjianfeng2003/article/details/8089551 如何将内核静态库编译连接到驱动程序中去 2010-12-07 08:27 ...

  4. linux opencv编译静态库,使用openCV的静态库编译

    转载请注明出处: By 少侠阿朱 摘要: 本文主要讲述如何使用opencv静态库进行编译,生成脱离opencv环境可执行.exe文件. 实现的效果: 此方法生成的exe文件在其他没有配置openCV环 ...

  5. iOS开发中静态库制作 之.a静态库制作及使用篇

    iOS开发中静态库之".a静态库"的制作及使用篇 一.库的简介 1.什么是库? 库是程序代码的集合,是共享程序代码的一种方式 2.库的类型? 根据源代码的公开情况,库可以分为2种类 ...

  6. Linux中静态库和动态库(共享库)的区别

    1. 静态库和动态库的制作过程区别 1.1 静态库的制作过程 详见博客:Linux中静态库的制作与使用 1.2 动态库的制作过程 详见博客:Linux中动态库(共享库)的制作与使用 2. 静态库和动态 ...

  7. CRectTracker类的使用方法及其静态库下CRectTracker无法显示鼠标光标解决方案

      一 使用方法 1 定义成员变量 CRectTracker m_RectTracker: 2 构造函数设置样式 m_RectTracker.m_nStyle = CRectTracker::resi ...

  8. libcurl linux 静态链接库_Linux ubuntu OpenSSL + curl 静态库编译及使用

    下载源码 源码编译 解压之后,进入源码目录openssl-1.1.0f,执行如下命令.因为只需要编译静态库,也没有特殊要求,所以使用的编译选项配置很简单: ./config -fPIC no-shar ...

  9. php扩展 静态库,编译PHP扩展的方法

    [相关学习推荐:php编程(视频)] 构建PHP扩展 你已经知道如何去编译PHP本身,下一步我们将编译外部扩展.我们将讨论扩展的构建过程和可用的编译选项. 载入共享扩展 在前一个章节你已经知道,PHP ...

最新文章

  1. QGIS打印布局cheatsheet
  2. LibreOJ 6279 数列分块入门 3(分块+排序)
  3. python基础语法第10关作业-关于一些Python的一些基础语法训练
  4. OpenStack云计算口袋书-第一章-开始OpenStack之旅(一)
  5. caioj 1077 动态规划入门(非常规DP1:筷子)
  6. 第01课:深度学习概述
  7. Kuskal/Prim POJ 1789 Truck History
  8. 使用混合多云每个人都应避免的3个陷阱(第3部分)
  9. Mongodb 备份 还原 导出 导入 等批量操作
  10. python笔记9-多线程Threading之阻塞(join)和守护线程(setDaemon)
  11. inDesign入门教程,如何对齐和分组内容?
  12. cad常青藤插件_做CAD设计,别说你不知道,这些插件有多好用
  13. java qq机器人_简单几步教你如何用Java快速制作一个QQ机器人
  14. 光洋触摸屏和PLC通讯错误2225
  15. 6大关键词解析儿童学习桌消费市场
  16. vip163邮箱手机版登陆入口是哪个?vip邮箱163实用技巧
  17. c语言编译kbhit出现问题,在VC++中运行出现error C2065: 'kbhit' : undeclared identifier,什么意思?怎么调试?...
  18. python鸢尾花案例_BP算法实例—鸢尾花的分类(Python)
  19. 第一章,从头开始学习linux
  20. Apache服务器配置默认首页文件名和网站路径

热门文章

  1. java 数独算法_JAVA写的数独,附带生成唯一解和各种难度的算法
  2. fastadmin如何隐藏表格右上角的搜索,导出等功能按钮,如何实现多选变单选,如何实现点击表格行选中,如何实现双击表格行编辑
  3. pytorch模型的保存和加载、checkpoint
  4. BCompare应用程序发生错误
  5. Tcl学习1——安装软件环境ActiveTcl
  6. kodi没有中文设置_最完整的设置中文教程,不同平台
  7. 天龙AVR-X4800H怎么样,天龙AVR-X4800H和X4700H区别对比
  8. 彩票软件3)wpf界面布局
  9. 卷积神经网络——卷积层
  10. prometheus实现对docker部署mysql监控