Чтобы XDS 2.6 хорошо работал на x64 надо добавить ключ -m32 в шаблон для сборки.
/usr/local/xds/bin/xc.temчтобы стало вот так:
Код:
...
!else
! "$(TARGET) : $(OBJ) $(XDSLIB)\n"
!if (env_target="x86linux") then
! "\tgcc $(LFLAGS) -o $(TARGET) $(OBJ) $(XLIBS) $(TSLIBS) $(XDSLIB) $(XMACLIBS) -lm -lncurses -m32\n"
!elsif (env_target="linux") or (env_target="aix") then
! "\tgcc $(LFLAGS) -o $(TARGET) $(OBJFF) $(OBJ) $(XLIBS) $(XDSLIB) -lm -m32\n"
!else
! "\tcc $(LFLAGS) -o $(TARGET) $(OBJ) $(XLIBS) $(XDSLIB) -lm -m32\n"
!end
!end
...
тогда без проблем проходит команда
xc =m hello.ob2:
Код:
dia@lenovo:/usr/local/xds/samples/oberon$ xc =m hello.ob2
O2/M2 development system v2.60 TS (c) 1991-2011 Excelsior, LLC. (build 03.02.2012)
XDS Oberon-2 v2.40 [x86, v1.50] - build 03.02.2012
Compiling "hello.ob2"
no errors, no warnings, lines 8, time 0.00
gcc -o hello hello.o /usr/local/xds/lib/x86/libts.a /usr/local/xds/lib/x86/libxds.a -lm -lncurses -m32
Результат:
Код:
dia@lenovo:/usr/local/xds/samples/oberon$ ./hello
Привет мир!!!