Help, Build Visopsys Failed

General discussion about Visopsys. We'll create more specific forums if the number of posts justifies that.
meowsoft
Posts: 11
Joined: Thu Jul 23, 2020 4:15 pm
Location: Moscow

Help, Build Visopsys Failed

Post by meowsoft »

Please help, why i am failed build visopsys ?
I was try version 6,7,8,9 all is failed to build, with same error message, i'm using Ubuntu 18.04 64-Bit on WSL2, 32GB RAM, 4x 1TB SSD Samsung 860 EVO, Dual Xeon e5-2678v3 (24 Total Cores, 48 Total Threads)
What's wrong ?

root@DESKTOP-GF0PHJ4:/visopsys/visopsys-0.9-src# make
mkdir -p build/system
cp COPYING.txt build/system/
make -C dist
make[1]: Entering directory '/visopsys/visopsys-0.9-src/dist'
mkdir -p ../build/temp
mkdir -p ../build/users
make -C programs
make[2]: Entering directory '/visopsys/visopsys-0.9-src/dist/programs'
make -C fontutil.dir
make[3]: Entering directory '/visopsys/visopsys-0.9-src/dist/programs/fontutil.dir'
mkdir -p ../../../build/programs/fontutil.dir
cp *.txt ../../../build/programs/fontutil.dir
make[3]: Leaving directory '/visopsys/visopsys-0.9-src/dist/programs/fontutil.dir'
make -C helpfiles
make[3]: Entering directory '/visopsys/visopsys-0.9-src/dist/programs/helpfiles'
mkdir -p ../../../build/programs/helpfiles
cp *.txt ../../../build/programs/helpfiles
make[3]: Leaving directory '/visopsys/visopsys-0.9-src/dist/programs/helpfiles'
make -C mines.dir
make[3]: Entering directory '/visopsys/visopsys-0.9-src/dist/programs/mines.dir'
mkdir -p ../../../build/programs/mines.dir
cp *.bmp ../../../build/programs/mines.dir
make[3]: Leaving directory '/visopsys/visopsys-0.9-src/dist/programs/mines.dir'
make -C snake.dir
make[3]: Entering directory '/visopsys/visopsys-0.9-src/dist/programs/snake.dir'
mkdir -p ../../../build/programs/snake.dir
cp *.bmp ../../../build/programs/snake.dir
make[3]: Leaving directory '/visopsys/visopsys-0.9-src/dist/programs/snake.dir'
make[2]: Leaving directory '/visopsys/visopsys-0.9-src/dist/programs'
make -C system
make[2]: Entering directory '/visopsys/visopsys-0.9-src/dist/system'
mkdir -p ../../build/system
cp visopsys.jpg install-files.* password.blank ../../build/system
make -C config
make[3]: Entering directory '/visopsys/visopsys-0.9-src/dist/system/config'
mkdir -p ../../../build/system/config
cp *.conf ../../../build/system/config
mkdir -p ../../../build/system/config/de
cp de/*.conf ../../../build/system/config/de
mkdir -p ../../../build/system/config/es
cp es/*.conf ../../../build/system/config/es
mkdir -p ../../../build/system/config/ru
cp ru/*.conf ../../../build/system/config/ru
mkdir -p ../../../build/system/config/tr
cp tr/*.conf ../../../build/system/config/tr
make[3]: Leaving directory '/visopsys/visopsys-0.9-src/dist/system/config'
make -C fonts
make[3]: Entering directory '/visopsys/visopsys-0.9-src/dist/system/fonts'
mkdir -p ../../../build/system/fonts
cp *.vbf ../../../build/system/fonts
make[3]: Leaving directory '/visopsys/visopsys-0.9-src/dist/system/fonts'
make -C icons
make[3]: Entering directory '/visopsys/visopsys-0.9-src/dist/system/icons'
mkdir -p ../../../build/system/icons
cp *.ico ../../../build/system/icons
make[3]: Leaving directory '/visopsys/visopsys-0.9-src/dist/system/icons'
make -C install
make[3]: Entering directory '/visopsys/visopsys-0.9-src/dist/system/install'
mkdir -p ../../../build/system/install
make[3]: Leaving directory '/visopsys/visopsys-0.9-src/dist/system/install'
make -C keymaps
make[3]: Entering directory '/visopsys/visopsys-0.9-src/dist/system/keymaps'
mkdir -p ../../../build/system/keymaps
cp *.map ../../../build/system/keymaps
make[3]: Leaving directory '/visopsys/visopsys-0.9-src/dist/system/keymaps'
make -C locale
make[3]: Entering directory '/visopsys/visopsys-0.9-src/dist/system/locale'
mkdir -p ../../../build/system/locale
cp flag-*.bmp ../../../build/system/locale
make[3]: Leaving directory '/visopsys/visopsys-0.9-src/dist/system/locale'
make -C mouse
make[3]: Entering directory '/visopsys/visopsys-0.9-src/dist/system/mouse'
mkdir -p ../../../build/system/mouse
cp *.bmp *.ico ../../../build/system/mouse
make[3]: Leaving directory '/visopsys/visopsys-0.9-src/dist/system/mouse'
make -C wallpaper
make[3]: Entering directory '/visopsys/visopsys-0.9-src/dist/system/wallpaper'
mkdir -p ../../../build/system/wallpaper
cp *.jpg ../../../build/system/wallpaper
make[3]: Leaving directory '/visopsys/visopsys-0.9-src/dist/system/wallpaper'
make[2]: Leaving directory '/visopsys/visopsys-0.9-src/dist/system'
make[1]: Leaving directory '/visopsys/visopsys-0.9-src/dist'
make -C src DEBUG=
make[1]: Entering directory '/visopsys/visopsys-0.9-src/src'
make -C osloader DEBUG=
make[2]: Entering directory '/visopsys/visopsys-0.9-src/src/osloader'
make -C bios DEBUG=
make[3]: Entering directory '/visopsys/visopsys-0.9-src/src/osloader/bios'
mkdir -p obj ../../../build/system/boot ../../../build
nasm -f bin -w+orphan-labels mbr-simple.s -o ../../../build/system/boot/mbr.simple
nasm -f bin -w+orphan-labels mbr-bootmenu.s -o ../../../build/system/boot/mbr.bootmenu
nasm -f bin -w+orphan-labels bootmenu.s -o ../../../build/system/boot/bootmenu
nasm -f bin -w+orphan-labels bootsect-fat.s -o ../../../build/system/boot/bootsect.fat
nasm -f bin -w+orphan-labels -DFAT32 bootsect-fat.s -o ../../../build/system/boot/bootsect.fat32
nasm -f bin -w+orphan-labels bootsect-fatnoboot.s -o ../../../build/system/boot/bootsect.fatnoboot
nasm -f bin -w+orphan-labels -DFAT32 bootsect-fatnoboot.s -o ../../../build/system/boot/bootsect.fatnoboot32
nasm -f elf32 -w+orphan-labels loaderMain.s -o obj/loaderMain.o
nasm -f elf32 -w+orphan-labels loaderA20.s -o obj/loaderA20.o
nasm -f elf32 -w+orphan-labels loaderDetectHardware.s -o obj/loaderDetectHardware.o
nasm -f elf32 -w+orphan-labels loaderDiskError.s -o obj/loaderDiskError.o
nasm -f elf32 -w+orphan-labels loaderLoad.s -o obj/loaderLoad.o
nasm -f elf32 -w+orphan-labels loaderLoadFile.s -o obj/loaderLoadFile.o
nasm -f elf32 -w+orphan-labels loaderLoadKernel.s -o obj/loaderLoadKernel.o
nasm -f elf32 -w+orphan-labels loaderPrintRoutines.s -o obj/loaderPrintRoutines.o
nasm -f elf32 -w+orphan-labels loaderProgress.s -o obj/loaderProgress.o
nasm -f elf32 -w+orphan-labels loaderVideo.s -o obj/loaderVideo.o
gcc -m32 -nodefaultlibs -nostartfiles -Wl,-warn-common,-X,--oformat,binary,-e,loaderMain,-Ttext,0x00000000 obj/loaderMain.o obj/loaderA20.o obj/loaderDetectHardware.o obj/loaderDiskError.o obj/loaderLoad.o obj/loaderLoadFile.o obj/loaderLoadKernel.o obj/loaderPrintRoutines.o obj/loaderProgress.o obj/loaderVideo.o -o ../../../build/vloader
make[3]: Leaving directory '/visopsys/visopsys-0.9-src/src/osloader/bios'
make[2]: Leaving directory '/visopsys/visopsys-0.9-src/src/osloader'
make -C include
make[2]: Entering directory '/visopsys/visopsys-0.9-src/src/include'
mkdir -p ../../build/system/headers
cp *.h ../../build/system/headers
make -C arpa
make[3]: Entering directory '/visopsys/visopsys-0.9-src/src/include/arpa'
mkdir -p ../../../build/system/headers/arpa
cp *.h ../../../build/system/headers/arpa
make[3]: Leaving directory '/visopsys/visopsys-0.9-src/src/include/arpa'
make -C c++
make[3]: Entering directory '/visopsys/visopsys-0.9-src/src/include/c++'
mkdir -p ../../../build/system/headers/c++
for FILE in * ; do \
if [ -f "$FILE" -a "$FILE" != "Makefile" ] ; then \
cp $FILE ../../../build/system/headers/c++ ; \
fi \
done
make[3]: Leaving directory '/visopsys/visopsys-0.9-src/src/include/c++'
make -C netinet
make[3]: Entering directory '/visopsys/visopsys-0.9-src/src/include/netinet'
mkdir -p ../../../build/system/headers/netinet
cp *.h ../../../build/system/headers/netinet
make[3]: Leaving directory '/visopsys/visopsys-0.9-src/src/include/netinet'
make -C sys
make[3]: Entering directory '/visopsys/visopsys-0.9-src/src/include/sys'
mkdir -p ../../../build/system/headers/sys
cp *.h ../../../build/system/headers/sys
make[3]: Leaving directory '/visopsys/visopsys-0.9-src/src/include/sys'
make[2]: Leaving directory '/visopsys/visopsys-0.9-src/src/include'
make -C lib DEBUG=
make[2]: Entering directory '/visopsys/visopsys-0.9-src/src/lib'
mkdir -p ../../build/system/libraries
make -C libc DEBUG=
make[3]: Entering directory '/visopsys/visopsys-0.9-src/src/lib/libc'
mkdir -p obj picobj ../../../build/system/libraries
gcc -Os -m32 -pipe -fno-common -fno-strict-aliasing -fno-builtin -fno-omit-frame-pointer -fno-asynchronous-unwind-tables -fno-stack-protector -ffreestanding -Wall -W -Wshadow -Wcast-align -Wsign-compare -Waggregate-return -Wmissing-format-attribute -Wredundant-decls -Werror -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -nostdinc -I../../include -c crt0.c -o ../../../build/system/libraries/crt0.o
gcc -Os -m32 -pipe -fno-common -fno-strict-aliasing -fno-builtin -fno-omit-frame-pointer -fno-asynchronous-unwind-tables -fno-stack-protector -ffreestanding -Wall -W -Wshadow -Wcast-align -Wsign-compare -Waggregate-return -Wmissing-format-attribute -Wredundant-decls -Werror -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -nostdinc -I../../include -c _dbl2str.c -o obj/_dbl2str.o
gcc -Os -m32 -pipe -fno-common -fno-strict-aliasing -fno-builtin -fno-omit-frame-pointer -fno-asynchronous-unwind-tables -fno-stack-protector -ffreestanding -Wall -W -Wshadow -Wcast-align -Wsign-compare -Waggregate-return -Wmissing-format-attribute -Wredundant-decls -Werror -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -nostdinc -I../../include -c _digits.c -o obj/_digits.o
gcc -Os -m32 -pipe -fno-common -fno-strict-aliasing -fno-builtin -fno-omit-frame-pointer -fno-asynchronous-unwind-tables -fno-stack-protector -ffreestanding -Wall -W -Wshadow -Wcast-align -Wsign-compare -Waggregate-return -Wmissing-format-attribute -Wredundant-decls -Werror -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -nostdinc -I../../include -c _fdesc.c -o obj/_fdesc.o
gcc -Os -m32 -pipe -fno-common -fno-strict-aliasing -fno-builtin -fno-omit-frame-pointer -fno-asynchronous-unwind-tables -fno-stack-protector -ffreestanding -Wall -W -Wshadow -Wcast-align -Wsign-compare -Waggregate-return -Wmissing-format-attribute -Wredundant-decls -Werror -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -nostdinc -I../../include -c _flt2str.c -o obj/_flt2str.o
gcc -Os -m32 -pipe -fno-common -fno-strict-aliasing -fno-builtin -fno-omit-frame-pointer -fno-asynchronous-unwind-tables -fno-stack-protector -ffreestanding -Wall -W -Wshadow -Wcast-align -Wsign-compare -Waggregate-return -Wmissing-format-attribute -Wredundant-decls -Werror -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -nostdinc -I../../include -c _fmtinpt.c -o obj/_fmtinpt.o
gcc -Os -m32 -pipe -fno-common -fno-strict-aliasing -fno-builtin -fno-omit-frame-pointer -fno-asynchronous-unwind-tables -fno-stack-protector -ffreestanding -Wall -W -Wshadow -Wcast-align -Wsign-compare -Waggregate-return -Wmissing-format-attribute -Wredundant-decls -Werror -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -nostdinc -I../../include -c _kernapi.c -o obj/_kernapi.o
_kernapi.c: In function ‘_syscall’:
_kernapi.c:59:1: error: unsupported size for integer register [-Werror]
}
^
_kernapi.c:59:1: error: unsupported size for integer register [-Werror]
cc1: all warnings being treated as errors
Makefile:278: recipe for target 'obj/_kernapi.o' failed
make[3]: *** [obj/_kernapi.o] Error 1
make[3]: Leaving directory '/visopsys/visopsys-0.9-src/src/lib/libc'
Makefile:11: recipe for target 'all' failed
make[2]: *** [all] Error 2
make[2]: Leaving directory '/visopsys/visopsys-0.9-src/src/lib'
Makefile:11: recipe for target 'all' failed
make[1]: *** [all] Error 2
make[1]: Leaving directory '/visopsys/visopsys-0.9-src/src'
Makefile:13: recipe for target 'all' failed
make: *** [all] Error 2

#### failed to build some targets (2 seconds) ####
User avatar
andymc
Posts: 574
Joined: Tue Nov 16, 2010 7:20 pm

Re: Help, Build Visopsys Failed

Post by andymc »

Hellow meowsoft, and welcome

This is a bit of a weird one. I can see why the assembler is complaining, but I don't know why you see this error, and I don't. Is your gcc using some different assembler than the standard gas maybe?

Anyway, can you try changing the _syscall() function in src/lib/libc/_kernapi.c to the following, and let me know if that compiles/works for you?

Code: Select all

static quad_t _syscall(int fnum, void *args)
{
	// This function sets up the stack and arguments, invokes the kernel API,
	// cleans up the stack, and returns the return code.

	unsigned statusLo = 0;
	unsigned statusHi = 0;
	quad_t status = 0;

	if (!visopsys_in_kernel)
	{
		// Call the kernel
		kernelCall(fnum, args, statusLo, statusHi);
	}

	status = ((quad_t) statusHi << 32);
	status += statusLo;

	return (status);
}
meowsoft
Posts: 11
Joined: Thu Jul 23, 2020 4:15 pm
Location: Moscow

Re: Help, Build Visopsys Failed

Post by meowsoft »

Ok...., now i get this error message ?
Btw... how i can know my default assembler ?, i am using Ubuntu 18.04 running on Windows Subsytem for Linux ver 2 (WSL 2), windows 10 update 1809
Sorry... i am advanced in high programming language such .Net, PHP, Java, etc, but i am new in low level programming

root@DESKTOP-GF0PHJ4:/visopsys/visopsys-0.9-src# make
mkdir -p build/system

#Note : I cut this error message because your forum limited comments only for 60000 characters.

make[3]: Entering directory '/visopsys/visopsys-0.9-src/src/lib/libstdc++'
mkdir -p obj picobj ../../../build/system/libraries
g++ -Os -m32 -pipe -fno-common -fno-strict-aliasing -fno-builtin -fno-omit-frame-pointer -fno-asynchronous-unwind-tables -fno-stack-protector -ffreestanding -fno-rtti -fno-exceptions -Wall -W -Wshadow -Wcast-align -Wsign-compare -Waggregate-return -Wmissing-format-attribute -Wredundant-decls -Werror -nostdinc -I../../include -I../../include/c++ -c _cxa.cpp -o obj/_cxa.o
g++ -Os -m32 -pipe -fno-common -fno-strict-aliasing -fno-builtin -fno-omit-frame-pointer -fno-asynchronous-unwind-tables -fno-stack-protector -ffreestanding -fno-rtti -fno-exceptions -Wall -W -Wshadow -Wcast-align -Wsign-compare -Waggregate-return -Wmissing-format-attribute -Wredundant-decls -Werror -nostdinc -I../../include -I../../include/c++ -c ios.cpp -o obj/ios.o
g++ -Os -m32 -pipe -fno-common -fno-strict-aliasing -fno-builtin -fno-omit-frame-pointer -fno-asynchronous-unwind-tables -fno-stack-protector -ffreestanding -fno-rtti -fno-exceptions -Wall -W -Wshadow -Wcast-align -Wsign-compare -Waggregate-return -Wmissing-format-attribute -Wredundant-decls -Werror -nostdinc -I../../include -I../../include/c++ -c iostream.cpp -o obj/iostream.o
g++ -Os -m32 -pipe -fno-common -fno-strict-aliasing -fno-builtin -fno-omit-frame-pointer -fno-asynchronous-unwind-tables -fno-stack-protector -ffreestanding -fno-rtti -fno-exceptions -Wall -W -Wshadow -Wcast-align -Wsign-compare -Waggregate-return -Wmissing-format-attribute -Wredundant-decls -Werror -nostdinc -I../../include -I../../include/c++ -c istream.cpp -o obj/istream.o
g++ -Os -m32 -pipe -fno-common -fno-strict-aliasing -fno-builtin -fno-omit-frame-pointer -fno-asynchronous-unwind-tables -fno-stack-protector -ffreestanding -fno-rtti -fno-exceptions -Wall -W -Wshadow -Wcast-align -Wsign-compare -Waggregate-return -Wmissing-format-attribute -Wredundant-decls -Werror -nostdinc -I../../include -I../../include/c++ -c memory.cpp -o obj/memory.o
g++ -Os -m32 -pipe -fno-common -fno-strict-aliasing -fno-builtin -fno-omit-frame-pointer -fno-asynchronous-unwind-tables -fno-stack-protector -ffreestanding -fno-rtti -fno-exceptions -Wall -W -Wshadow -Wcast-align -Wsign-compare -Waggregate-return -Wmissing-format-attribute -Wredundant-decls -Werror -nostdinc -I../../include -I../../include/c++ -c new.cpp -o obj/new.o
new.cpp:44:6: error: the program should also define ‘void operator delete(void*, unsigned int)’ [-Werror=sized-deallocation]
void operator delete(void *ptr)
^~~~~~~~
new.cpp:50:6: error: the program should also define ‘void operator delete [](void*, unsigned int)’ [-Werror=sized-deallocation]
void operator delete[](void *ptr)
^~~~~~~~
cc1plus: all warnings being treated as errors
Makefile:62: recipe for target 'obj/new.o' failed
make[3]: *** [obj/new.o] Error 1
make[3]: Leaving directory '/visopsys/visopsys-0.9-src/src/lib/libstdc++'
Makefile:11: recipe for target 'all' failed
make[2]: *** [all] Error 2
make[2]: Leaving directory '/visopsys/visopsys-0.9-src/src/lib'
Makefile:11: recipe for target 'all' failed
make[1]: *** [all] Error 2
make[1]: Leaving directory '/visopsys/visopsys-0.9-src/src'
Makefile:13: recipe for target 'all' failed
make: *** [all] Error 2

#### failed to build some targets (26 seconds) ####
User avatar
andymc
Posts: 574
Joined: Tue Nov 16, 2010 7:20 pm

Re: Help, Build Visopsys Failed

Post by andymc »

OK, now I guess my basic C++ runtime support isn't complete enough for your compiler's tastes.

Looks like maybe your C++ compiler is using the C++14 standard by default, maybe (I'm not a C++ expert).

Can you change the C++CODEGEN line in Makefile.include to read as follows?:

Code: Select all

C++CODEGEN = ${CODEGEN} -std=c++11 -ffreestanding -fno-rtti -fno-exceptions
(adds -std=c++11)

These are all good fixes for me to add to the next release
meowsoft
Posts: 11
Joined: Thu Jul 23, 2020 4:15 pm
Location: Moscow

Re: Help, Build Visopsys Failed

Post by meowsoft »

Revision : I make changes to libstdc++\new.cpp, and fix to this previous problem, but gives new problems

#I add this code
void operator delete(void *ptr, unsigned int)
{
free(ptr);
}
#End

void operator delete(void *ptr)
{
free(ptr);
}

#I add this code
void operator delete[](void *ptr, unsigned int)
{
free(ptr);
}
#End

void operator delete[](void *ptr)
{
free(ptr);
}
meowsoft
Posts: 11
Joined: Thu Jul 23, 2020 4:15 pm
Location: Moscow

Re: Help, Build Visopsys Failed

Post by meowsoft »

New error is :

make[2]: Entering directory '/visopsys/visopsys-0.9-src/src/kernel'
mkdir -p obj
mkdir -p ../../build
gcc -Os -m32 -pipe -fno-common -fno-strict-aliasing -fno-builtin -fno-omit-frame-pointer -fno-asynchronous-unwind-tables -fno-stack-protector -ffreestanding -Wall -W -Wshadow -Wcast-align -Wsign-compare -Waggregate-return -Wmissing-format-attribute -Wredundant-decls -Werror -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -nostdinc -I. -I../include -DKERNEL -c kernelMain.c -o obj/kernelMain.o
gcc -Os -m32 -pipe -fno-common -fno-strict-aliasing -fno-builtin -fno-omit-frame-pointer -fno-asynchronous-unwind-tables -fno-stack-protector -ffreestanding -Wall -W -Wshadow -Wcast-align -Wsign-compare -Waggregate-return -Wmissing-format-attribute -Wredundant-decls -Werror -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -nostdinc -I. -I../include -DKERNEL -O0 -Wno-strict-prototypes -c kernelApi.c -o obj/kernelApi.o
kernelApi.c: In function ‘kernelApi’:
kernelApi.c:2220:1: error: unsupported size for integer register [-Werror]
}
^
kernelApi.c:2220:1: error: unsupported size for integer register [-Werror]
cc1: all warnings being treated as errors
Makefile:199: recipe for target 'obj/kernelApi.o' failed
make[2]: *** [obj/kernelApi.o] Error 1
make[2]: Leaving directory '/visopsys/visopsys-0.9-src/src/kernel'
Makefile:11: recipe for target 'all' failed
make[1]: *** [all] Error 2
make[1]: Leaving directory '/visopsys/visopsys-0.9-src/src'
Makefile:13: recipe for target 'all' failed
make: *** [all] Error 2

#### failed to build some targets (6 seconds) ####
meowsoft
Posts: 11
Joined: Thu Jul 23, 2020 4:15 pm
Location: Moscow

Re: Help, Build Visopsys Failed

Post by meowsoft »

Thank you so much for your attention :-)
User avatar
andymc
Posts: 574
Joined: Tue Nov 16, 2010 7:20 pm

Re: Help, Build Visopsys Failed

Post by andymc »

Thanks for helping me work out these problems :-D

The latest error is basically the inverse of the first one. Edit the top of the kernelApi() function to add statusLo and statusHi:

Code: Select all

void kernelApi(unsigned CS __attribute__((unused)), unsigned *args)
{
	// This is the initial entry point for the kernel's API.  This
	// function will be first the recipient of all calls to the global
	// call gate.  This function will pass a pointer to the rest of the
	// arguments to the processCall function that does all the real work.
	// This funcion does the far return.

	quad_t status = 0;
	unsigned statusLo = 0;
	unsigned statusHi = 0;
and edit the bottom so it looks like this:

Code: Select all

	// Call the function
	status = functionPointer();

	statusLo = (status & 0xFFFFFFFF);
	statusHi = (status >> 32);

out:
	#if defined(DEBUG)
	kernelDebug(debug_api, "ret=%lld", status);
	#endif

	processorApiExit(stackAddress, statusLo, statusHi);
}
meowsoft
Posts: 11
Joined: Thu Jul 23, 2020 4:15 pm
Location: Moscow

Re: Help, Build Visopsys Failed

Post by meowsoft »

New error after changes in kernelApi.c:

gcc -Os -m32 -pipe -fno-common -fno-strict-aliasing -fno-builtin -fno-omit-frame-pointer -fno-asynchronous-unwind-tables -fno-stack-protector -ffreestanding -Wall -W -Wshadow -Wcast-align -Wsign-compare -Waggregate-return -Wmissing-format-attribute -Wredundant-decls -Werror -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -nostdinc -I. -I../include -DKERNEL -O0 -Wno-strict-prototypes -c kernelApi.c -o obj/kernelApi.o
kernelApi.c: In function ‘kernelApi’:
kernelApi.c:2029:11: error: variable ‘statusHi’ set but not used [-Werror=unused-but-set-variable]
unsigned statusHi = 0;
^~~~~~~~
kernelApi.c:2028:11: error: variable ‘statusLo’ set but not used [-Werror=unused-but-set-variable]
unsigned statusLo = 0;
^~~~~~~~
kernelApi.c:2224:1: error: unsupported size for integer register [-Werror]
}
^
kernelApi.c:2224:1: error: unsupported size for integer register [-Werror]
cc1: all warnings being treated as errors
Makefile:199: recipe for target 'obj/kernelApi.o' failed
make[2]: *** [obj/kernelApi.o] Error 1
make[2]: Leaving directory '/visopsys/visopsys-0.9-src/src/kernel'
Makefile:11: recipe for target 'all' failed
make[1]: *** [all] Error 2
make[1]: Leaving directory '/visopsys/visopsys-0.9-src/src'
Makefile:13: recipe for target 'all' failed
make: *** [all] Error 2

#### failed to build some targets (1 seconds) ####
User avatar
andymc
Posts: 574
Joined: Tue Nov 16, 2010 7:20 pm

Re: Help, Build Visopsys Failed

Post by andymc »

Did you forget to change the end of the function (that second bit of code I pasted)?
Post Reply