Comments (3)
Figured it out and got a bit further. Please add this to your guide as it's a critical step:
export DEVKITPRO=/opt/devkitpro/
export DEVKITPPC=/opt/devkitpro/devkitPPC
^regarding the second export command. There is a bug in the code where there is an additional forward slash for DEVKITPPC so the export command must omit it at the end until the code is fixed.
Also add in your guide to name the rom file specifically as baserom.us.z64
The build still fails though:
Building tools...
In file included from /usr/include/c++/11/cstdio:41,
from armips.cpp:51:
/usr/include/x86_64-linux-gnu/c++/11/bits/c++config.h:573:2: warning: #warning "__STRICT_ANSI__ seems to have been undefined; this is not supported" [-Wcpp]
573 | #warning "__STRICT_ANSI__ seems to have been undefined; this is not supported"
| ^~~~~~~
armips.cpp:1273:9: warning: ISO C++ prohibits anonymous structs [-Wpedantic]
1273 | {
| ^
armips.cpp: In member function ‘wchar_t TextFile::readCharacter()’:
armips.cpp:15054:50: warning: ‘value’ may be used uninitialized in this function [-Wmaybe-uninitialized]
15054 | if (value == L'\r' && recursion == false && atEnd() == false)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~
In constructor ‘ExpressionValue::ExpressionValue(ExpressionValue&&)’,
inlined from ‘ExpressionValue ExpressionInternal::evaluate()’ at armips.cpp:18031:10:
armips.cpp:1225:8: warning: ‘val.ExpressionValue::<anonymous>’ may be used uninitialized [-Wmaybe-uninitialized]
1225 | struct ExpressionValue
| ^~~~~~~~~~~~~~~
armips.cpp: In member function ‘ExpressionValue ExpressionInternal::evaluate()’:
armips.cpp:17923:25: note: ‘val’ declared here
17923 | ExpressionValue val;
| ^~~
In constructor ‘ExpressionValue::ExpressionValue(ExpressionValue&&)’,
inlined from ‘ExpressionValue Expression::evaluate()’ at armips.cpp:18145:10:
armips.cpp:1225:8: warning: ‘invalid.ExpressionValue::<anonymous>’ may be used uninitialized [-Wmaybe-uninitialized]
1225 | struct ExpressionValue
| ^~~~~~~~~~~~~~~
armips.cpp: In member function ‘ExpressionValue Expression::evaluate()’:
armips.cpp:18144:33: note: ‘invalid’ declared here
18144 | ExpressionValue invalid;
| ^~~~~~~
armips.cpp: In member function ‘bool CDirectiveConditional::evaluate()’:
armips.cpp:9626:33: warning: ‘value’ may be used uninitialized in this function [-Wmaybe-uninitialized]
9626 | return value != 0;
| ^
armips.cpp: In function ‘std::unique_ptr<CAssemblerCommand> parseDirectiveConditional(Parser&, int)’:
armips.cpp:9600:37: warning: ‘type’ may be used uninitialized in this function [-Wmaybe-uninitialized]
9600 | : CDirectiveConditional(type)
| ^
armips.cpp:11038:23: note: ‘type’ was declared here
11038 | ConditionType type;
| ^~~~
Building ROM...
Preprocessing level make rules: levels/level_rules.mk -> build/us_wiiu/level_rules.mk
Makefile:102: /opt/devkitpro/devkitPPC//base_tools: No such file or directory
make: *** No rule to make target '/opt/devkitpro/devkitPPC//base_tools'. Stop.
from sm64-port.
Ok so here's the actual, functional instructions, please update your instructions to include all of this:
Credit to this guide: https://youtu.be/hrA8z7Yw02Y
Tested and working on Linux Mint
#Super Mario 64 PC Port - Wii U Installation script for Linux
#https://youtu.be/hrA8z7Yw02Y
#https://github.com/aboood40091/sm64-port
#https://github.com/devkitPro/pacman/releases
sudo apt update
sudo apt install -y git build-essential pkg-config libusb-1.0-0-dev libsdl2-dev curl
cd ~/Downloads
wget https://apt.devkitpro.org/install-devkitpro-pacman
chmod +x ./install-devkitpro-pacman
sudo ./install-devkitpro-pacman
#^Confirm when prompted
sudo dkp-pacman -Sy
sudo dkp-pacman -S devkitPPC wiiload
sudo dkp-pacman -S devkit-env
#^Confirm when prompted
source /etc/profile.d/devkit-env.sh
export DEVKITPRO=/opt/devkitpro
export DEVKITPPC=$DEVKITPRO/devkitPPC
export PATH=$DEVKITPPC/bin:$DEVKITPRO/tools/bin:$PATH
sudo dkp-pacman -Sl | grep wut
sudo dkp-pacman -Sl | grep wiiu
sudo dkp-pacman -S wut-tools wiiu-pkg-config wiiu-sdl2
#^Confirm when prompted
git clone https://github.com/aboood40091/sm64-port "/home/me/Downloads/sm64-port"
# copy baserom.us.z64 into the directory
cp "/path/to/Super Mario 64.z64" "/home/me/Downloads/sm64-port/baserom.us.z64"
cd /home/me/Downloads/sm64-port
make -j4
#Then go to /build/us_wiiu and grab the sm64.us.f3dex2e.rpx file. Copy it to the Wii U SD card into the "apps" folder.
from sm64-port.
What exactly am I meant to do then to get the "Failed to build tools. Stop." error to go away?
from sm64-port.
Related Issues (20)
- Garbled text on EU builds HOT 2
- Allow for Virtual Console Style Controller Customization. HOT 2
- Build failing on Ubuntu 20 HOT 1
- Failed to build tools on Ubuntu 20.04 HOT 2
- Update 60fps.patch to remove GX2SetSwapInterval(2) line HOT 1
- Cannot install mingw gcc HOT 2
- Not enough memory
- 60 FPS patch failed to apply HOT 3
- On Linux it gives the error: 'isnan' was not decleared in this scope. SOLVED!!!! HOT 2
- trying to build for wii u but the make file dosent work i need help here is proof HOT 2
- building returns Makefile.split:152: build/us_wiiu/level_rules.mk: No such file or directory powerpc-eabi-cpp -P -DVERSION_US -I . -o build/us_wiiu/level_rules.mk levels/level_rules.mk cc1: fatal error: opening output file build/us_wiiu/level_rules.mk: No such file or directory compilation terminated. make: *** [build/us_wiiu/level_rules.mk] Error 1 HOT 1
- What are the directions for docker?
- KPADShutdown not defined HOT 1
- Failed to compile in Linux for WiiU HOT 5
- In file included from include/level_commands.h:4, from levels/scripts.c:4:
- I got this issue when building src/game/memory.c:810:10: fatal error: coreinit/cache.h: No such file or directory HOT 1
- .exe not found
- error building HOT 2
- (Nevermind; wrong repository.)
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from sm64-port.