问题标签 [uclibc]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
5 回答
4239 浏览

c++ - 我可以在 uclibc linux 上使用 boost 吗?

有没有人有在基于 uclibc 的系统上运行使用 boost 库的 C++ 应用程序的经验?甚至可能吗?你会使用哪个 C++ 标准库?uclibc++ 可以与 boost 一起使用吗?

0 投票
3 回答
1427 浏览

mono - 有人使用 uClibc 为 MIPS 64 交叉编译 Mono 吗?

我正在尝试为 MIPS 静态交叉编译 Mono。我能够编译 Mono,但它总是与它的依赖项动态链接,即使我为编译器指定了静态。

我写了一个测试程序,我可以用我的工具链静态编译它并在目标平台上运行它。我不确定我是否遗漏了某些东西,或者这是不可能的。我使用buildroot构建了我的工具链。

编辑

为了让事情更清楚一点,我想用它的依赖项静态编译单声道。mono 依赖的依赖项是:GLib、pkg-config 和 gettext。我相信 GLib 是一个直接依赖项,而 GLib 依赖于 pkg-config 和 gettext。

如果需要,我可以发布我的环境变量和配置命令。

0 投票
2 回答
6689 浏览

linux - 任何可用于 uclibc 的回溯移植?

我们在 ARM 9 上运行 uclibc linux。问题是 uclibc 不支持回溯。当核心转储发生时,我无法获取调用堆栈。

有没有人有一个好的解决方案?

例如,现有的 uclibc 回溯移植,或者在发生核心转储时获取调用堆栈的任何好方法(uclibc+ARM+Linux)?

0 投票
1 回答
781 浏览

multithreading - ucLibc malloc 线程安全吗?

ucLibc malloc 线程安全吗?

0 投票
3 回答
2716 浏览

c - Glibc and uClibc side by side on one system

Is it possible to have glibc and uClibc based applications running side-by-side on one system?

Background: We have binary gcc based cross-compiler configured to link with uClibc. We have cross-compiled glibc with it. Now we want to build some applications so they will link with the glibc rather than uClibc. We don't want to rebuild the compiler.

0 投票
1 回答
1791 浏览

c - 寻找纯 c 版本的 math.h 函数(无协处理器支持)

我必须使用一些静态处理 C 源代码的(半)自动验证软件(CBMC (链接) )。支持浮点,但没有所有数学函数的定义。尝试检查是否可以用它检查数字软件。

所以我需要这些功能。我正在寻找一些math.h不使用协处理器的定义(例如sqrt,、、pow余数、tanint// floatdouble

当我在一些 linux 发行版(可能是现在的 eglibc)附带的 libc 中寻找它时,我总是达到一个点,其中有一些处理器内在特性,例如硬件 sqrt 函数。

第 1 部分:搜索软件实现

我需要的是一个支持具有以下特征的数学函数的库:

  • 支持 IEEE 浮点数,但纯粹基于整数运行的库也会很棒,也许更好。
  • 正确性是一个关键因素。(隐藏在某些来源中的特殊情况的已知错误并不那么酷)。根据 IEEE-754(例如 sqrt 规则),结果也应该是正确的。
  • 不使用协处理器调用。纯软件。C 是首选,但 asm 也应该没问题。

到目前为止,我搜索了一些 libc 实现,尤其是关于嵌入式系统的实现。我认为这些库中的大多数都针对已编译程序的可移植性和大小,但很难判断它们是否使用了特定于处理器的指令。

  • ** fdlibm 乍一看似乎有一些纯软件定义。我将进一步检查。但是源代码中提到了一些错误(代码不是标准的)。
  • ** newlib似乎带来了相同的定义(基于 sun 微系统的代码)。但目前我不能确定是否始终使用这些软件版本,因此可能有一些我目前看不到的协处理器调用(见第 2 部分)。
  • ** uClibc似乎与 newlib 共享该特性。

第 2 部分:了解这些实现的结构

  • 有人能给我简要介绍一下这些数学库的结构吗?他们如何分派各种版本(例如特定的协处理器)?

  • 文件名中这些不同前缀的含义是什么。e_sqrt.c, k_sin, s_sin?

我很高兴听到一些对我有用的库。我更喜欢自带库,但有必要的时候,也可以找一些单一的函数实现,搭建一个小库。我不会使用 math.h 中定义的所有函数。

这个这个SO-posts 说 Java 数学实现是/是基于fdlibm的,这听起来这个库是要走的路。我应该知道有关此库的更多信息的人吗?

似乎我有很多可能性,包括以下两种:

  1. 使用 glibc 并在软件模式下编译。问题是,我不能使用任何自动系统检查工具(在配置中)。我必须手动提供所有信息。是否有任何标志禁止使用 fp 协处理器和禁止 simd 操作?fp-without 应该是一个开始,然后如果它编译它也使用软浮点。我希望编译过程或多或少取决于主机的特定决定(如 arm ...)。
  2. 使用 fdlibm(目前首选)。问题:如何将我的程序链接到它?我需要像 assert 这样的非 libm 函数,但想要链接到我的 fdlibm 而不是已安装的 system-libm(因此 -nodefaultlibs 将禁止使用 assert)。
0 投票
1 回答
1335 浏览

c++ - 对于 malloc() 失败,是否有等效于 set_new_handler() 的方法?

在 C++ 中,您可以安排在new失败时调用函数。有没有办法在malloc失败时调用一个函数?假设这malloc是从我不想更改的第三方库调用的。

我认为没有可移植的答案,所以我很乐意接受特定于平台的答案。我在某些平台上使用 Linux+uclibc,在其他平台上使用 Linux+glibc。我打算用它来限制可以返回setrlimit的内存量。malloc

0 投票
3 回答
18868 浏览

linux - 从 x86 交叉编译 MIPS 路由器

我的最终目标是为我的旧 Actiontec 调制解调器/路由器编译无线工具,这样我就可以将其配置为无线以太网桥接器。目前,它的无线功能(似乎)由管理大多数 Web 界面的相同二进制文件控制,但似乎他们使用库无线工具在内部至少用于部分功能。

我以前从未为不同的 CPU 架构交叉编译过,也不知道如何完全确定我需要做什么。我正在尝试使用 uClibc,因为它似乎用于系统的其余部分,但我不确定如何为调制解调器环境配置 buildroot。我根据下面来自 proc 的信息对配置应该是什么做出了最好的猜测,但是由于一个仅返回 0 编译的简单 C 应用程序无法正常运行,因此出现了问题。

0 投票
2 回答
2119 浏览

glibc - 用glibc编译的程序可以用uClibc在Linux上运行吗?

我有一个使用 glibc 编译的程序,我需要它在使用 uClibc 的 Openwrt 固件的 MIPS 目标上运行。这可能吗?我将程序放在 Openwrt 中,当我尝试运行它时,结果是:找不到。

问题是什么?

谢谢你。

0 投票
0 回答
1062 浏览

gcc - uClibc 静态编译问题

我正在尝试为基于 ARM 的单板计算机进行交叉编译。我正在使用专为开发板设计的 uClibc 工具链。就 ROM 大小而言,我的空间非常有限,所以我试图在编译时考虑到二进制大小。(内存占用不是问题)

我目前正在使用如下所示的命令进行编译:

现在,我需要静态链接一些未存储在嵌入式目标上的库。但是,板上有一个共享库,程序可以动态链接到 ld-uClibc.so.0。

我想弄清楚的是如何动态链接 ld-uClibc.so.0 并静态链接我需要的其余库。