【问题标题】:32 bit compilation in linux with scons使用 scons 在 linux 中进行 32 位编译
【发布时间】:2020-10-11 20:19:54
【问题描述】:

我有一个项目,它有一个用于 Ubuntu 的现有 scons 构建系统。我需要修改 scons 文件以便将其编译为 32 位。

在环境中尝试了 CC_FLAGS='-m32'、HOST_ARCH='x86' 和 TARGET_ARCH='x86',这些都没有帮助。

基本上我想要的效果与在 gcc 中使用 -m32 选项相同。

用下面给出的 scons 文件内容尝试了下面的示例代码,但仍然没有帮助。 感谢任何指针。

test.c:

#include <stdio.h>

int main()
{
    int a1 = 6;
    char *p1 = (char *)malloc(100);
    printf("Hello, world!\n");
    printf("&a1: %p\n", &a1);
    printf("p1: %p\n", p1);
}

构造文件:

Program('test.c')
Environment(CCFLAGS=['-m32'], TARGET_ARCH='x86', HOST_ARCH='x86')

【问题讨论】:

    标签: ubuntu 32-bit scons


    【解决方案1】:

    它适用于以下 scons。

    env = Environment(CCFLAGS = '-m32', LINKFLAGS = '-m32')
    env.Program('test.c')
    
    

    用这个答案结束这个问题。

    【讨论】:

    • 是的。如果您查看手册页,这将是解决此类问题的好资源。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-08-25
    • 1970-01-01
    • 1970-01-01
    • 2021-09-01
    • 1970-01-01
    相关资源
    最近更新 更多