草庐IT

uboot移植

全部标签

c++ - 用于 IPC(进程和共享内存)的可移植 C++ 库,Boost vs ACE vs Poco?

我需要一个可移植的C++库来执行IPC。到目前为止,我一直使用fork()和SysV共享内存,但这将我限制在Linux/Unix上。我发现有3个主要的C++库提供可移植的解决方案(包括Windows和MacOSX)。我真的很喜欢Boost,并且想使用它,但我需要流程,而且到目前为止,这似乎只是一个实验性分支!?我以前从未听说过ACE或POCO,因此我陷入困境,我不知道该选择哪个。我当然需要fork()、sleep()(usleep()会很棒)和共享内存。性能和文档也是重要的标准。感谢您的帮助! 最佳答案 BoostInterproc

c++ - 将 C++ 编译成可移植的 linux 二进制文件

好的,这个问题是关于可移植的,如无依赖性(即“我可以将二进制文件放在USBkey中并随身携带,电子邮件他们给friend等”)。我听说过静态链接,但我对它的确切后果感到困惑;什么可以静态链接,什么不能静态链接(即Qt、OpenGL、libstdc++怎么样?)以及二进制文件之后“可移植”的程度。我也听说过LSB(LinuxStandardBase),但我不知道它到底是什么,也不知道它在这个意义上是否有帮助。 最佳答案 静态链接适用于大多数库,但不适用于那些使用动态加载模块的库。试试看它是否有效。您可能仍然存在内核兼容性问题;您的程序

c++ - 将编译器从 x86 汇编移植到 LLVM

最近,为了磨练我的汇编技能,我用C++为玩具语言编写了一个非常简单的编译器。它运行单channel,并在解析阶段直接将代码发送到多个字符串流,每个字符串流代表一段代码(即一个代表section.bss,而其他代表.data和.text)。然后,将这些字符串流写入一个文件,我使用NASM和gcc来组装和链接它们。我知道这种单遍方法效率极低,但同样,这更像是一种理解代码生成阶段的练习,而不是其他任何东西。无论如何,我想修改我的代码以直接发出LLVMIL而不是原始汇编,再次作为学习练习。是否有任何关于LLVMIL的入门级指南?或者,更好的是,一个工具来确定一行汇编的等效IL代码?我看了看,只

c++ - 轻量级、可移植的 C++ 纤程,MIT 许可证

我想获得一个具有MIT许可证(或更宽松)的轻量级、可移植光纤库。Boost.Coroutine不合格(不是轻量级),PortableCoroutineLibrary和KentC++CSP(均为GPL)也不合格。编辑:你能帮我找一个吗?:) 最佳答案 Libtask:麻省理工学院许可证Libconcurrency:LGPL(比MIT更严格一点,但它是一个功能性库!)两者都是为C编写的。 关于c++-轻量级、可移植的C++纤程,MIT许可证,我们在StackOverflow上找到一个类似的问

c++ - 可移植生成指定目录下的新文件名

如何可移植(我最感兴趣的是windows和linux)在指定的目录中生成一个新的文件名,具有指定的文件名前缀和后缀?std::stringUniqueName(std::stringconst&dir,std::stringconst&prefix,std::stringconst&suffix);实现此功能的任何建议,尽可能少地依赖特定平台。 最佳答案 请注意,错误的做法是一个安全漏洞。有一些技巧可以利用临时(ish)文件,这些可以让管理员访问整个系统,而不仅仅是你的应用程序。参见this寻求一些建议。有几种方法可以做到这一点:尽

c - 将 Unix 移植到 Windows - pwd.h 的使用

我正在尝试编译libUnihan使用MinGW编写代码,但遇到了需要移植的功能。该函数的目的是获得规范的路径表示。它使用pwd.h(这是POSIX,而MinGW不是)因此它可以通过检索passwd来解释使用“~”来表示主目录结构,其中包含pw_dir。倒是找了一点资料here,以及realpath的端口here,但我仍然完全不知道如何处理这个问题。对于MinGW,我仍然有一个由~表示的主目录,位于/home/nate,但由于它不是POSIX,所以我没有pwd.h帮助我找到这个主目录的位置。问:如何移植下面的函数才能与MinGW正常工作?/***Returnthecanonicalize

c++ - 将 vector<fooType> foo[num] 移植到 Windows(无 C99)

我们可以动态分配std::vectorfoo[num];像这样吗?std::vector*lSamplesPerClass=newvector[nClasses];[...]delete[]lSamplesPerClass; 最佳答案 是的,你可以(假设你真的想要一个vector数组)。但是,如果您改为这样做,将会更安全、更易于管理:std::vector>foo(num);如果标准库可以为你做,永远不要自己做动态分配。 关于c++-将vectorfoo[num]移植到Windows(无

windows - Windows 可移植可执行文件如何跨机器体系结构移植

Windows可移植可执行文件真的可以跨机器架构移植吗?如果是这样,它是如何工作的?如果不是,那么“可移植可执行文件”是什么意思或可执行文件的哪一部分是可移植的?谢谢,SivaChandran 最佳答案 可执行文件本身不可移植。PE格式是“可移植的”,因为不同架构的可执行文件使用相同的PE格式,但PE文件中的可执行代码特定于单个处理器架构。在实践中,这意味着许多相同的编译器和链接器代码可以重复用于不同的体系结构,并且用于检查可执行文件的工具可以(在某种程度上)适用于“外部”可执行文件。(我在这里谈论的是native可执行文件-.NE

Exynos4412 移植针对Samsung的Linux-6.1(六)【已解决】SROMC寄存器的数值不正确、无法赋值的问题

系列文章目录Exynos4412移植针对Samsung的Linux-6.1(一)下载、配置、编译Linux-6.1Exynos4412移植针对Samsung的Linux-6.1(二)SD卡驱动——解决无法挂载SD卡的根文件系统Exynos4412移植针对Samsung的Linux-6.1(三)SD卡驱动——解决mmc0:Timeoutwaitingforhardwareinterrupt.Exynos4412移植针对Samsung的Linux-6.1(四)NandFlash卡驱动Exynos4412移植针对Samsung的Linux-6.1(五)DM9000网卡驱动Exynos4412移植针对

windows - Windows 可移植应用程序究竟是如何工作的?

可移植应用程序可以从USB-drives运行所有和因此非常方便,但不幸的是它们很慢(因为USB驱动器通常较慢)。可移植应用的安装与普通应用的安装究竟有何不同?我知道他们不创建注册表,但他们如何实现与其他“普通”应用相同的功能? 最佳答案 任何以独立方式存储所有必需信息的应用程序都可以变得“便携”。例如,eclipse不需要安装并将所有首选项保留在工作区内,因此可以认为它是可移植的。以下任何一项都不能立即移植的应用程序:使用注册表使用用户的主目录,即:“C:\Users”或“C:\DocumentsandSettings”需要将某些文