N64Recomp / N64Recomp

Tool to statically recompile N64 games into native executables

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Error linking RSPRecomp

HalosGhost opened this issue · comments

I'm currently following this procedure to build the project:

$ git clone --recurse-submodules https://github.com/Mr-Wiseguy/N64Recomp.git
$ cd N64Recomp
$ cmake .
$ cmake --build .

The build eventually fails with this error:

[ 97%] Linking CXX executable RSPRecomp
/usr/bin/ld: cannot open output file RSPRecomp: Is a directory
collect2: error: ld returned 1 exit status
make[2]: *** [CMakeFiles/RSPRecomp.dir/build.make:99: RSPRecomp] Error 1
make[1]: *** [CMakeFiles/Makefile2:158: CMakeFiles/RSPRecomp.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....

This appears to be because the target executable has the same name as a directory in the top-level of the root; just lower-casing the name of the target executable (and project)—I have a case-sensitive filesystem—results in the build succeeding.

Alternatively, renaming the source directory may be less invasive. I didn't know which would be the preferred choice, so this is an issue rather than a PR, but if one option is clearly better, I'm happy to PR it (though, it's probably just as easy for that change to be done upstream, and I don't need credit or anything ☺).

if you go read the build portion of the readme it does mention (though not explicitly) to make a build folder to run cmake in, so here is an example of what i did:

git clone https://github.com/Mr-Wiseguy/N64Recomp.git
cd n64recomp
git submodule update --init --recursive
mkdir build
cd build
cmake ..
cmake --build .

Might make sense for this and #17 to result in more specific build instructions.

This works for me though (which is pretty normal for cmake projects). Closing to avoid noise.