小编Ric*_*ich的帖子

在 64 位 Ubuntu 中构建 32 位应用程序

经过数小时的谷歌搜索,我决定放弃并咨询专家。我正在尝试在我的 64 位 Ubuntu 11.10 中构建一个 32 位应用程序(如果有人感兴趣,则为 xgap)。我在 makefile 中添加了CFLAGS=-m32LDFLAGS=-L/usr/lib32。这些对象被内置到 32 位精细中。最后一步是将 X 窗口的所有对象和库链接到这个可执行文件——xgap。不知何故,它不断给我这个错误:

gcc -o xgap xcmds.o utils.o gapgraph.o gaptext.o pty.o popdial.o xgap.o selfile.o   -L/usr/lib32 -lXaw -lXmu -lXt -lXext -lX11  -lSM -lICE

/usr/bin/ld: skipping incompatible /usr/lib32/libXmu.so when searching for -lXmu
...

/usr/bin/ld: i386 architecture of input file `xcmds.o' is incompatible with i386:x86-64 output
...
Run Code Online (Sandbox Code Playgroud)

我已经安装了ia32-libsmutilib support。我想我只需要强制链接器生成 i386 输出。我尝试在我的 gcc 命令中放置两个ld标志,如上所示:-melf_i386-oformat elf32-i386。但是发生的情况是 gcc 不再在/usr/lib32 …

64-bit gcc

24
推荐指数
2
解决办法
8万
查看次数

重定向不起作用

我想把我的程序的输出放到一个文件中。我输入了以下内容:

./prog > log 2>&1
Run Code Online (Sandbox Code Playgroud)

但是文件"log" 中没有任何内容。我使用的是 Ubuntu 11.10,默认 shell 是 bash。

任何人都知道这个的原因以及我如何调试它?

command-line bash

3
推荐指数
1
解决办法
9820
查看次数

标签 统计

64-bit ×1

bash ×1

command-line ×1

gcc ×1