lenticularis39 / axpbox

AXPbox Alpha emulator
GNU General Public License v2.0
165 stars 16 forks source link

how to build with gcc? #67

Open youxiaojie opened 3 years ago

youxiaojie commented 3 years ago
-- The CXX compiler identification is GNU 10.2.1
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Looking for pthread.h
-- Looking for pthread.h - found
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Failed
-- Looking for pthread_create in pthreads
-- Looking for pthread_create in pthreads - not found
-- Looking for pthread_create in pthread
-- Looking for pthread_create in pthread - found
-- Found Threads: TRUE  
-- Check if the system is big endian
-- Searching 16 bit integer
-- Looking for sys/types.h
-- Looking for sys/types.h - found
-- Looking for stdint.h
-- Looking for stdint.h - found
-- Looking for stddef.h
-- Looking for stddef.h - found
-- Check size of unsigned short
-- Check size of unsigned short - done
-- Searching 16 bit integer - Using unsigned short
-- Check if the system is big endian - little endian
-- Looking for alarm
-- Looking for alarm - found
-- Looking for arpa/inet.h
-- Looking for arpa/inet.h - found
-- Looking for arpa/telnet.h
-- Looking for arpa/telnet.h - found
-- Looking for atexit
-- Looking for atexit - found
-- Looking for ctype.h
-- Looking for ctype.h - found
-- Looking for errno.h
-- Looking for errno.h - found
-- Looking for fcntl.h
-- Looking for fcntl.h - found
-- Looking for fopen
-- Looking for fopen - found
-- Looking for fopen64
-- Looking for fopen64 - not found
-- Looking for fork
-- Looking for fork - found
-- Looking for fseek
-- Looking for fseek - found
-- Looking for fseeko
-- Looking for fseeko - found
-- Looking for fseeko64
-- Looking for fseeko64 - not found
-- Looking for ftell
-- Looking for ftell - found
-- Looking for ftello
-- Looking for ftello - found
-- Looking for ftello64
-- Looking for ftello64 - not found
-- Looking for gmtime_s
-- Looking for gmtime_s - not found
-- Looking for inet_aton
-- Looking for inet_aton - found
-- Looking for inet.h
-- Looking for inet.h - not found
-- Looking for inttypes.h
-- Looking for inttypes.h - found
-- Looking for in.h
-- Looking for in.h - not found
-- Looking for isblank
-- Looking for isblank - found
-- Looking for localtime_s
-- Looking for localtime_s - not found
-- Looking for malloc
-- Looking for malloc - found
-- Looking for malloc.h
-- Looking for malloc.h - found
-- Looking for memory.h
-- Looking for memory.h - found
-- Looking for memset
-- Looking for memset - found
-- Looking for netinet/in.h
-- Looking for netinet/in.h - found
-- Looking for pow
-- Looking for pow - not found
-- Looking for process.h
-- Looking for process.h - not found
-- Looking for pthread_self in pthread
-- Looking for pthread_self in pthread - found
-- Looking for pthread.h
-- Looking for pthread.h - found
-- Looking for realloc
-- Looking for realloc - found
-- Looking for select
-- Looking for select - found
-- Looking for signal.h
-- Looking for signal.h - found
-- Looking for socket
-- Looking for socket - found
-- Looking for socket.h
-- Looking for socket.h - not found
-- Looking for sqrt
-- Looking for sqrt - not found
-- Looking for stdbool.h
-- Looking for stdbool.h - found
-- Looking for stdlib.h
-- Looking for stdlib.h - found
-- Looking for strcasecmp
-- Looking for strcasecmp - found
-- Looking for strchr
-- Looking for strchr - found
-- Looking for strdup
-- Looking for strdup - found
-- Looking for strings.h
-- Looking for strings.h - found
-- Looking for string.h
-- Looking for string.h - found
-- Looking for strncasecmp
-- Looking for strncasecmp - found
-- Looking for strspn
-- Looking for strspn - found
-- Looking for sys/param.h
-- Looking for sys/param.h - found
-- Looking for sys/select.h
-- Looking for sys/select.h - found
-- Looking for sys/socket.h
-- Looking for sys/socket.h - found
-- Looking for sys/stat.h
-- Looking for sys/stat.h - found
-- Looking for sys/time.h
-- Looking for sys/time.h - found
-- Looking for sys/wait.h
-- Looking for sys/wait.h - found
-- Looking for unistd.h
-- Looking for unistd.h - found
-- Looking for vfork
-- Looking for vfork - found
-- Looking for vfork.h
-- Looking for vfork.h - not found
-- Looking for windows.h
-- Looking for windows.h - not found
-- Looking for winsock2.h
-- Looking for winsock2.h - not found
-- Looking for ws2tcpip.h
-- Looking for ws2tcpip.h - not found
-- Check size of _Bool
-- Check size of _Bool - done
-- Looking for _fseeki64
-- Looking for _fseeki64 - not found
-- Looking for _ftelli64
-- Looking for _ftelli64 - not found
-- Looking for _strdup
-- Looking for _strdup - not found
-- Looking for _stricasecmp
-- Looking for _stricasecmp - not found
-- Looking for _stricmp
-- Looking for _stricmp - not found
-- Looking for pcap.h
-- Looking for pcap.h - not found
-- Looking for SDL/SDL.h
-- Looking for SDL/SDL.h - not found
-- Looking for X11/X.h
-- Looking for X11/X.h - not found
CMake Warning at CMakeLists.txt:133 (message):
  pcap not found.  Building without network support

CMake Warning at CMakeLists.txt:139 (message):
  sdl not found.  Building without SDL graphics support

CMake Warning at CMakeLists.txt:145 (message):
  x11 not found.  Building without x11 graphics support

-- Found Git: /usr/bin/git (found version "2.30.2") 
-- Looking for include files time.h, sys/time.h
-- Looking for include files time.h, sys/time.h - found
-- C++ compiler flags  : 
-- C compiler flags    : 
-- Linker flags        :   
-- Configuring done
-- Generating done
-- Build files have been written to: /home/allan/alpha/axpbox/build

$ sudo apt-get install libsdl1.2-dev $ sudo apt-get install libpcap-dev

./axpbox run
sys0(tsunami): $Id: System.cpp,v 1.79 2008/06/12 07:29:44 iamcamiel Exp $
%FLS-F-NOREST: Flash could not be restored from rom/flash.rom
sys0(tsunami): $Id: Flash.cpp,v 1.19 2008/03/24 22:11:50 iamcamiel Exp $
Segmentation fault
lenticularis39 commented 3 years ago

You need SDL1, not SDL2.

youxiaojie commented 3 years ago

You need SDL1, not SDL2.

thanx, but still segment fault.

sys0 = tsunami
{
  memory.bits = 28;
  rom.srm = "rom/cl67srmrom.exe";
  rom.decompressed = "rom/decompressed.rom";
  rom.flash = "rom/flash.rom";
  rom.dpr = "rom/dpr.rom";

  cpu0 = ev68cb
  {
    speed = 800M;
    icache = true;
  }

  serial0 = serial
  {
    port = 21264;
    action = "";
  }

 pci0.15 = ali_ide
 {
   disk0.0 = file
   {
     file =          "disk0.img";
     serial_number = "VMS";
     rev_number    = "8.4";
     model_number  = "OpenVMS8.3";
     read_only     = false;
     cdrom         = false;
     autocreate_size = 6000M;
   }
   disk1.0 = file
   {
     file          = "alpha084.iso";
     read_only     = true;
     cdrom         = true;
   }
 }

  pci0.7 = ali
  {
    mouse.enabled = false;
    vga_console = false;
  }

  pci0.19 = ali_usb
  {
  }
}
RaymiiOrg commented 3 years ago

You can try to build a debug build:

$ mkdir build && cd build
$ cmake .. -DCMAKE_BUILD_TYPE="Debug"
$ make -j$(($(nproc) + 1))

Then attach the GDB debugger to your process (gdb ./axpbox) and if it segfaults, print a backtrace (type bt + ENTER). That would help figuring our where the segfault comes from.