问题标签 [gnulib]

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 投票
1 回答
40 浏览

c - C 包括:last_component 在哪里定义?

wget请参阅源代码中的以下逻辑。在哪里last_component定义?我认为这要么是一个 GNU 包含,要么是埋在标准 C 包含的某个地方。但我似乎找不到它。谢谢。

0 投票
1 回答
1423 浏览

build - 在 Ubuntu 20.04 上构建 Alexa Auto SDK 时将 gnulib fseeko.c 移植到您的平台

构建 Alexa Auto SDK https://github.com/alexa/alexa-auto-sdk/blob/3.2/builder/README.md

使用 Ubuntu 20.04(我没有 18.04)我运行

进入

这是 /home/hannes/git/alexa-auto-sdk/builder/build/tmp-android-28/work/x86_64-linux/m4-native/1.4.18-r0/temp/log 的最后一个重要部分。 do_compile.2647129

有人知道如何解决吗?

0 投票
1 回答
40 浏览

c++ - 为什么以下库函数可以在不创建对象的情况下调用非静态成员函数?

pb_ds(<ext/pb_ds/assoc_container.hpp>和其他 4 个头文件)是用于某些数据结构(例如红黑树)的 GNU C++ 库。我遇到了修改树时应用更新的代码:

其中node_update类具有以下形式:

node_update::operator()...我对我认为从类中调用非静态成员函数node_update但没有创建对象的代码感到困惑。那么通话是如何进行的呢?

0 投票
1 回答
47 浏览

visual-studio - 依赖 gnulib 时,GNU 库是否能够使用 autoconf 构建系统链接到动态 MSVC 运行时?

我的目标是了解 GNU 库 autoconf 构建系统。我知道 libiconv 可以使用精心制作的 MS Visual Studio 项目和手动添加的源代码文件成功构建。所以这个问题更多的是学术而不是实际。我考虑到 gnulib 也没有 Windows 平台的官方支持。

按照 INSTALL.windows 构建 libiconv 的指南,当构建 iconv 与动态 MSVC 运行时(cl /MD 或 cl /MDd)时,我面临下一个编译错误。

配置调用:

编译器调用:

配置生成的iconv/srclib/string.h

WinSDK/include/ucrt/corecrt_malloc.h

WinSDK/include/ucrt/corecrt.h 定义下一个

经过研究和调查,我发现 gnulib(作为 libiconv 的 GNU autoconf 构建系统的一部分)用自己的实现替换了不令人满意的函数调用。rpl_free 是从 C 运行时替换常规 free() 函数的替代名称,因为 MSVC 自由函数不被识别为 POSIX 兼容。在我看来,没有选项可以告诉配置不要替换吸吮功能。使用环境变量 REPLACE_FREE=0 破解成功了,我关闭了函数替换。

但是,MSVC 编译器仍然抱怨不同的链接。我相信,当 gnulib 声明其 free() 函数签名且没有额外属性时,MSVC 运行时会为消费者导出其 API 函数和 __declspec(dllimport)。

我想知道,是否有一条“铺平道路”来使用原始 autoconf 系统构建链接到动态 MSVC 运行时的 libiconv(或其他利用 gnulib 的 GNU 库)?我可以在不更改 gnulib m4 文件的情况下实现这一目标吗?