在Debian 32位系统上构建xkeropi

最近发现最新版本的VirtualBox(大约从5.2开始)无法在Hyper-V上的ubuntu 16.04中安装,所以我尝试在Hyper-V上运行了xkeropi。

所以我打算换到Debian。

建立环境

安装操作系统

在VirtualBox 7.0上安装debian-11.6.0-i386-netinst.iso。

允许使用sudo命令(可选)

$ su -
# adduser yui sudo
# reboot

有一个很方便的ssh(自由选择)。

$ sudo apt install openssh-server

某种有用的Samba(随意)

$ sudo apt install samba
$ sudo vi /etc/samba/smb.conf

[homes]
  comment = Home Directories
  browseable = no
  writable = yes
  create mask = 0644
  directory mask = 0755

$ sudo smbpasswd -a yui
$ sudo service smbd restart

安装所需的库等

$ sudo apt-get install xutils-dev
$ sudo apt-get install libgtk2.0-dev
$ sudo apt-get install libsdl1.2-dev
$ sudo apt-get install nasm

构建

err.png

在编译选项中添加-Wno-narrowing。

EXTRA_DEFINES+= -Wno-narrowing

编译错误

/usr/bin/ld: x68k/68kem.o: in function `m68000_ICountBk':
x68k/68kem.asm:(.data+0x4): multiple definition of `m68000_ICountBk'; x68k/cpu_glue.o:/home/yui/xkeropi-20101107/x68k/cpu_glue.c:6: first defined here
/usr/bin/ld: x68k/68kem.o: warning: relocation in read-only section `.text'
/usr/bin/ld: warning: creating DT_TEXTREL in a PIE
collect2: error: ld returned 1 exit status
make: *** [Makefile:1152: xkeropi] Error 1

虽然在Ubuntu上没有问题,但确实存在多重定义的情况。
没办法,只能将其注释掉。

// int m68000_ICountBk;
run.png

运行32bpp兼容版本

run2.png
广告
将在 10 秒后关闭
bannerAds