Skip to content
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

Help me with this error please! #53

Open
NeoGeoFreak2004 opened this issue Aug 22, 2021 · 16 comments
Open

Help me with this error please! #53

NeoGeoFreak2004 opened this issue Aug 22, 2021 · 16 comments

Comments

@NeoGeoFreak2004
Copy link

Hey, so i am trying to install ngdevkit on ubuntu and i am getting a error that is not letting me install the examples for ngdevkit. It says "No Package ngdevkit Found" or something like that so can you help me please!

@dciabrin
Copy link
Owner

Which Ubuntu version are you using?
There are nightly builds available for 20.4 (Focal), 21.04 (Hirsute) and 21.10 (Impish).

@NeoGeoFreak2004
Copy link
Author

NeoGeoFreak2004 commented Aug 22, 2021

I am using Ubuntu 21.04 (Hirsute)

@dciabrin
Copy link
Owner

OK maybe I misunderstood the question. Are you trying to install ngdevkit-examples with a pre-built ngdevkit, or did you build ngdevkit and now the examples won't compile because running ./configure will fail?

@NeoGeoFreak2004
Copy link
Author

im trying to install ngdevkit-examples with a pre-built ngdevkit.

@dciabrin
Copy link
Owner

Could you try to go back to the top directory and configure all the shell variables with:

eval $(make shellinit)

Then go back to examples and try to compile them:

autoreconf -iv
./configure
make

@NeoGeoFreak2004
Copy link
Author

Thank you it worked! also how do i make my own makefile for the c++ compiler on ngdevkit since i installed the devkit on ubuntu and idk how to make my own programs and run them on gngeo?

@dciabrin
Copy link
Owner

Although g++ ships with ngdevkit, I'm not sure the current linkscript links all the necessary segments for the c++ runtime to work. If especially true if you make use of runtime features like exception.
That being said, have a look at examples/Makefile.common to see how to change the build command to run g++ instead of gcc.

@NeoGeoFreak2004
Copy link
Author

NeoGeoFreak2004 commented Aug 23, 2021

but here's the thing, where does it say on makefile.common on how to change the build command from gcc to g++?

@dciabrin
Copy link
Owner

So in a nutshell:

examples/Makefile.config contains all the path to the 68k and z80 compilers. you'd need to adapt it to use m68k-neogeo-elf-g++. In this file you'll find the CFLAGS and LDFLAGS to use come from pkg-config. Keep them in your Makefile as they set up the necessary bits to use the proper link script for neo geo ROMs.

examples/Makefile.common is just boilerplate to create things like directories, zip files, file truncation...

If you want to rebuild a simpler Makefile for your ROM, you can see the output of the compilation of example 01-helloworld on your terminal. It's fairly straightforward: one 68k file compiled as an elf, elf transformed into ROM format, and everything zipped into puzzledp.zip.

@NeoGeoFreak2004
Copy link
Author

But here is the problem, like say i have a c++ file and i copy one of the makefile from the example of the helllo world program, but when i run the make gngeo command it does not work so what do i do with this?

@dciabrin
Copy link
Owner

Hmmm, after looking at it, the current version of ngdevkit doesn't ship a C++ compiler, I'm not sure when this one got lost, but that surely was a long time ago, probably when I split ngdevkit-toolchain out of ngdevkit...

Thinking more about it adding back g++ will need some time to validate the compilation and whatnot, as well as making sure that the runtime helpers (libngdevkit) link with c++.

For now this is going to be a longer term feature, your best bet is to stick to C for the time being.

@NeoGeoFreak2004
Copy link
Author

Thanks for the answer!

@NeoGeoFreak2004
Copy link
Author

Hey, also so when i type in The make command it says this Makefile:22: ../Makefile.common: No such file or directory
make: *** No rule to make target '../Makefile.common'. Stop or something, so can you help me please!

@dciabrin
Copy link
Owner

I'm not sure whether you're trying to build in the ./examples subdirectory or if you're trying to build something in a separate directory of your own, the issue description lacks details.

I committed an example of standalone directory in https://github.com/dciabrin/ngdevkit-examples/tree/standalone/00-standalone, it contains all the generic Makefiles needed to build an example from a single directory.
You only need two things:

  1. the assets directory from ngdevkit-examples
    This is to build some character and sprite ROMs

  2. you need to set up ngdevkit in your PATH
    go in ngdevkit base directory and run:

eval $(make shellinit)

You should now be able to go into the new directory 00-standalone from above and build the example in an isolated way.

@NeoGeoFreak2004
Copy link
Author

I am trying to build something in a separate directory of my own, so how do i make and compile my own c file by using make in a separate directory of my own!

@NeoGeoFreak2004
Copy link
Author

but then when i do what you say it gives me the same error so can you help me!

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

No branches or pull requests

2 participants