为Android构建Boost时出错“;找不到-lrt“;

为Android构建Boost时出错“;找不到-lrt“;,android,c++,boost,build,Android,C++,Boost,Build,所以我试图为android构建boost 1.55,但是我得到了boost.System和boost.Atomic的链接错误,上面写着“错误:找不到-lrt”。当然,android没有librt,因为它内置于C运行时。所以,我正在尝试获取boost,这样它就不会链接到librt。我尝试删除源代码中的每个“-lrt”: find . -type f | xargs -n1 -P 8 sed -i "s/-lrt//g" 但我还是犯了同样的错误。如何使boost不与android的librt链接?

所以我试图为android构建boost 1.55,但是我得到了boost.System和boost.Atomic的链接错误,上面写着“错误:找不到-lrt”。当然,android没有librt,因为它内置于C运行时。所以,我正在尝试获取boost,这样它就不会链接到librt。我尝试删除源代码中的每个“-lrt”:

find . -type f | xargs -n1 -P 8 sed -i "s/-lrt//g"

但我还是犯了同样的错误。如何使boost不与android的librt链接?

事实上,所有使用sed的
-lrt
的出现似乎都不会对问题产生任何影响。
对我有效的方法(尽管是在boost 1.53.0中)如下所示:

  • 编辑
    tools/build/v2/tools/gcc.jam
  • 注释
    libs=rt在此代码部分(顺便说一句,您可能没有
    -pthread
    选项行):

    case*:
    {
    option=-pthread;
    libs=rt;
    
        case * :
        {
            option = -pthread ;
            libs = rt ;   <--Comment this line
        }