gcc有关的问题


如何强制makefile包含库

我使用Intel_safe_string_lib,它被编译为静态的 (这是这个库的一个 “问题”,它不能像我一样被编译为共享的)。
我做了一个使用这个intel_safe_stri的库.


将gcc构建的静态c库与xlC编译的程序链接起来?

我有一个第三方静态库,它是用gcc构建在AIX上的。当我尝试使用xlC AIX编译器链接到该库时,我会得到各种未解析的符号。我相信这是因为


具有多个编译器的Make

当使用C 14/C 11 特征和STL includes时,GCC和clang具有不同的行为。Libc倾向于含蓄地包含事物,而libstdc似乎倾向于要求ex.


是否有可能让GCC编译与BOM源文件UTF-8?

我在Windows上使用Microsoft Visual Studio开发C跨平台,在uBuntu Linux上使用GCC。
在Visual Studio中,我可以在代码中使用 “π” 和 “²” 这样的unicode符号。Visual Stu.


我可以为gcc/ld指定部分的顺序吗

我正在X86/Linux上开发一个测试代码。我希望使用来自u-boot的linker_lists.h头。标题的目的在 https://gitlab.com/u-boot/u-boot/blob/master/doc/README 中解释。


如何为我自己的OS编译带有调试符号的内核?

嗨,我是一个初学者,试图写一个像内核一样的Linux。
我使用Qemu作为我的模拟器,目前在一个汇编级调试。
然而,根据以前的经验,我可以在.


在扩展GCC asm中正确使用多个输入和输出操作数是什么?

在寄存器约束下,扩展GCC asm中正确使用多个输入和输出操作数是什么?考虑这个我的问题的最小版本。下面的GC中简短的扩展asm代码.


Arm thumb模式代码生成 -- gcc arm linux编译器

我有一个手臂拇指模式的问题。GCC arm linux编译器是否自行生成拇指模式代码?
或者我们必须使用一些编译器指令来告诉编译器生成拇指模式代码?


仅静态链接某些库

当与GCC链接时,我如何静态地将一些特定的库链接到我的二进制文件?
Gcc.-静态.试图静态链接所有链接的库,但我还没有得到静态ver.


使用gcc为 32 位架构编译的C程序的意外退出代码

我写了一个简单的C程序,并为 32 位架构编译。
但是当我运行它时,我发现了意想不到的结果。
# Include <stdio.h>
Int foo(int n) {
Int sum = 0;
Int i;
如果 (n &.


不使用指向函数的指针调用shellcode?

有没有办法在不使用指向函数的指针的情况下获得外壳代码中函数的返回值?
# Include <stdio.h>
未签名的char代码 [] = "\ x55 \ x48 \ x89 \ xe5"
……


如何确定最大堆栈使用在嵌入式系统与gcc?

我正在为一个嵌入式系统编写启动代码 -- 在跳转到main() 之前加载初始堆栈指针的代码函数-我需要告诉它多少字节的堆栈我的应用程序.


Isnan的源代码在哪里?

由于标准的层次,包含c的文件是大鼠的巢。我试图弄清楚isnan实际上调用了什么,却找不到任何有实际定义的地方。
所以我j.


Asm代码的解释

下面的GCC内联asm取自LuaJit的coco库。有人可以提供一行一行的解释它做什么?
静态内联void coco_switch(coco_ctx from,coco_ctx to)
{
_ _ A.


链接器-使用自己的stdlib实现

我有个问题。这个项目的要求是我们不能将我们的应用程序与标准库链接起来 (so -nostdlib在gcc中打开)。
My_stdlb.c包含所有函数的实现my_memset,


C-如何使用GCC SSE矢量扩展访问矢量元素

通常我使用以下类型使用 3D向量:
Typedef vec3_t float[3];
使用smth初始化向量。喜欢:
Vec3_t x_basis = {1.0,0.0,0.0};
Vec3_t y_basis = {0.0,1.0,0.0};
Vec3_t z.


为什么x86-64 GCC函数序言分配比局部变量更少的堆栈?

考虑以下简单程序:
Int main(int argc,char * * argv)
{
Char buffer[256];
缓冲区 [0] = 0x41;
缓冲区 [128] = 0x41;
缓冲区 [255] = 0x41;
重.


真的不能理解gcc如何初始化数组

我的例子很简单:
Extern int fun(int arr[]);
Int foo(void)
{
Int arr[64] = {0};
返回乐趣 (arr);
}
当我使用clang编译它时,asm代码非常简单:
F.