Skip to content

Fix GCC not compiling .c files, but .cpp #10

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

HTTPHeader
Copy link

I think I fixed it

Problem: GCC won't compile the kernel unless its code is placed in a .cpp file

From OSDev Wiki:
"Writing a kernel in C++ is easy. Note that not all features from the language is available. For instance, exception support requires special runtime support and so does memory allocation. To write a kernel in C++, simply adopt code above: Add an extern "C" declaration to the main method."

Solution: Remove extern "C" from void main in kernel.cpp, and rename the file to kernel.c

@HTTPHeader
Copy link
Author

I also recompiled the binaries and replaced environment specific information (such as the path) with the same data as in the original binaries

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant