RError.com

RError.com Logo RError.com Logo

RError.com Navigation

  • 主页

Mobile menu

Close
  • 主页
  • 系统&网络
    • 热门问题
    • 最新问题
    • 标签
  • Ubuntu
    • 热门问题
    • 最新问题
    • 标签
  • 帮助
主页 / 问题 / 1261246
Accepted
maestro
maestro
Asked:2022-03-26 23:32:57 +0000 UTC2022-03-26 23:32:57 +0000 UTC 2022-03-26 23:32:57 +0000 UTC

链接器找不到 libc 中定义的符号 __times

  • 772

我不认为我会在这里询问未定义的引用,因为我不再认为自己是初级,但无论如何我必须这样做。我恳请您不要在这里重复一个众所周知的问题,我试图弄清楚并在这里带来尽可能多的信息。

让我们从我有一个特定的硬件平台的事实开始:NMC4。SDK 是从开发者的网站下载的,安装没有问题。编译时,出现链接器错误:

nmc-g++ main.o -mnmc4 -fexceptions "D:\lab\NMC\nmpp\lib\libnmpp-nmc4d.a" "D:\lab\NMC\hal\lib\libhal-mc12101.a" -o FixPoint / cygdrive/c/Program Files/Module/NMC-SDK/nmc4-ide/lib/gcc/nmc/4.8.3/../../../../nmc/lib/nmc4/libc.a(lib_a -timesr.o): 在函数 `__times_r': (.text.__times_r+0xd): 未定义的对 `__times' 的引用

该符号__times在库中定义libc.a。纳米输出:

         U __times_r
lib_a-systimes.o:
         U __times_r
00000000 T _times
lib_a-timesr.o:
         U __times
00000000 T __times_r

该库libc.a是由工具链自动连接的,但是在编译器设置中强制连接时,情况并没有改变。必须假设链接器看到了这个库:毕竟,它不会对这个库中的其余符号发誓。

该库libc.a仅存在于发布版本中。将项目配置从 Debug 更改为 Release 的尝试没有给出任何结果。

尝试在代码中定义符号 __times

int __times;

也没有给出任何结果。我是否正确理解没有访问修饰符,在 c 文件中声明的符号具有公共绑定?

技术支持仍然保持沉默。

/*
 * main.cpp
 *
 *  Created on: 9    . 2021  .
 *      Author: Alouette
 */

#include "nmpp.h"
#include <iostream>

#define SIZE 64

//Вот эта строка, предложенная Fat-Zer, решает проблему, но использовать её - не лучшая идея
//extern "C" int _times(struct tms *buf) {   return -1; }

int main()
{
//Если закомментировать выделение памяти, то программа компилируется.
//Но запускать тогда нет смысла.
//Видимо, вызов __times спрятался где-то в недрах функции nmppsMalloc_8s.

    nm8s *vec1 = (nm8s*)nmppsMalloc_8s(SIZE);
    nm8s *vec2 = (nm8s*)nmppsMalloc_8s(SIZE);

    nm8s *result = (nm8s*)nmppsMalloc_8s(SIZE);

    nmppsRandUniform_8s(vec1, SIZE);
    nmppsRandUniform_8s(vec2, SIZE);

    nmppsAdd_8s(vec1, vec2, result, SIZE);

    for (int i = 0; i < SIZE; i++)
    {
        std::cout << nmppsGet_8s(vec1, i) << "+" << nmppsGet_8s(vec2, i) << "=" << nmppsGet_8s(result, i) << std::endl;

    }

    std::cout.flush();

    nmppsFree(vec1);
    nmppsFree(vec2);
    nmppsFree(result);

    return 0;
}

c++
  • 1 1 个回答
  • 10 Views

1 个回答

  • Voted
  1. Best Answer
    maestro
    2022-04-06T23:44:45Z2022-04-06T23:44:45Z

    malloc正如制造商公司的代表所回答的那样,电话需要的事实_times确实是一个错误。已创建提交来修复它。您需要更新 NMPP 库并重建它。

    • 2

相关问题

  • 编译器和模板处理

  • 指针。找到最小数量

  • C++,关于枚举类对象初始化的问题

  • 函数中的二维数组

  • 无法使用默认构造函数创建类对象

  • C++ 和循环依赖

Sidebar

Stats

  • 问题 10021
  • Answers 30001
  • 最佳答案 8000
  • 用户 6900
  • 常问
  • 回答
  • Marko Smith

    表格填充不起作用

    • 2 个回答
  • Marko Smith

    提示 50/50,有两个,其中一个是正确的

    • 1 个回答
  • Marko Smith

    在 PyQt5 中停止进程

    • 1 个回答
  • Marko Smith

    我的脚本不工作

    • 1 个回答
  • Marko Smith

    在文本文件中写入和读取列表

    • 2 个回答
  • Marko Smith

    如何像屏幕截图中那样并排排列这些块?

    • 1 个回答
  • Marko Smith

    确定文本文件中每一行的字符数

    • 2 个回答
  • Marko Smith

    将接口对象传递给 JAVA 构造函数

    • 1 个回答
  • Marko Smith

    正确更新数据库中的数据

    • 1 个回答
  • Marko Smith

    Python解析不是css

    • 1 个回答
  • Martin Hope
    Alexandr_TT 2020年新年大赛! 2020-12-20 18:20:21 +0000 UTC
  • Martin Hope
    Alexandr_TT 圣诞树动画 2020-12-23 00:38:08 +0000 UTC
  • Martin Hope
    Air 究竟是什么标识了网站访问者? 2020-11-03 15:49:20 +0000 UTC
  • Martin Hope
    Qwertiy 号码显示 9223372036854775807 2020-07-11 18:16:49 +0000 UTC
  • Martin Hope
    user216109 如何为黑客设下陷阱,或充分击退攻击? 2020-05-10 02:22:52 +0000 UTC
  • Martin Hope
    Qwertiy 并变成3个无穷大 2020-11-06 07:15:57 +0000 UTC
  • Martin Hope
    koks_rs 什么是样板代码? 2020-10-27 15:43:19 +0000 UTC
  • Martin Hope
    Sirop4ik 向 git 提交发布的正确方法是什么? 2020-10-05 00:02:00 +0000 UTC
  • Martin Hope
    faoxis 为什么在这么多示例中函数都称为 foo? 2020-08-15 04:42:49 +0000 UTC
  • Martin Hope
    Pavel Mayorov 如何从事件或回调函数中返回值?或者至少等他们完成。 2020-08-11 16:49:28 +0000 UTC

热门标签

javascript python java php c# c++ html android jquery mysql

Explore

  • 主页
  • 问题
    • 热门问题
    • 最新问题
  • 标签
  • 帮助

Footer

RError.com

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

帮助

© 2023 RError.com All Rights Reserve   沪ICP备12040472号-5