I have been trying to install the casio prizm sdk on my Ubuntu machine. I followed this topic (https://www.cemetech.net/forum/viewtopic.php?t=14119&start=0) predominantly which got me most of the way.
But when I try to make the skeleton folder I get this error:
//---------------------------------//
Code: /home/saul/casio-gcc/bin/sh3eb-elf-gcc example.o -mb -m4a-nofpu -mhitachi -nostdlib -T/home/saul/Desktop/c_stuff/tools/casioskd/libfxcg/toolchain/prizm.x -Wl,-static -Wl,-gc-sections -L/home/saul/Desktop/c_stuff/tools/casioskd/libfxcg/lib -lc -lfxcg -lgcc -o /home/saul/Desktop/c_stuff/tools/casioskd/libfxcg/examples/skeleton/skeleton.bin
/home/saul/casio-gcc/lib/gcc/sh3eb-elf/12.2.0/../../../../sh3eb-elf/bin/ld: cannot find -lc
/home/saul/casio-gcc/lib/gcc/sh3eb-elf/12.2.0/../../../../sh3eb-elf/bin/ld: cannot find -lfxcg
collect2: error: ld returned 1 exit status
/home/saul/Desktop/c_stuff/tools/casioskd/libfxcg/toolchain/prizm_rules:83: recipe for target '/home/saul/Desktop/c_stuff/tools/casioskd/libfxcg/examples/skeleton/skeleton.bin' failed
make[1]: *** [/home/saul/Desktop/c_stuff/tools/casioskd/libfxcg/examples/skeleton/skeleton.bin] Error 1
Makefile:108: recipe for target 'all' failed
make: *** [all] Error 2
//---------------------------------//
I have tried instead putting into the install script
wget 'http://ftp.gnu.org/gnu/binutils/binutils-2.37.tar.xz'
wget 'http://ftp.gnu.org/gnu/gcc/gcc-12.2.0/gcc-12.2.0.tar.xz'
instead of:
wget 'http://ftp.gnu.org/gnu/binutils/binutils-2.29.1.tar.xz'
wget 'http://ftp.gnu.org/gnu/gcc/gcc-7.2.0/gcc-7.2.0.tar.xz'
but the error is still occuring.
I am not sure what to do now.
I'm guessing you haven't (correctly?) compiled libfxcg. What's in your library directory (-L~/...libfxcg/lib)? There should be libc and libfxcg static libraries in there since you're specifying that as your library search path.
Which directory are you referring to?
Within the casio-gcc directory there isn't a folder called libfxcg.
What I did to install gcc and binutils is this script from the linked forum:
Code: #!/bin/bash
set -e
set -o pipefail
TMPDIR=/tmp
cd $TMPDIR
wget 'http://ftp.gnu.org/gnu/binutils/binutils-2.37.tar.xz'
wget 'http://ftp.gnu.org/gnu/gcc/gcc-12.2.0/gcc-12.2.0.tar.xz'
tar -xf binutils*
tar -xf gcc*
export PREFIX=$HOME/casio-gcc
mkdir -p $PREFIX
export PATH=$PATH:$PREFIX/bin
export TARGET=sh3eb-elf
export CFLAGS="-O2 -pipe -s -fomit-frame-pointer -ffunction-sections -fdata-sections"
export CXXFLAGS=$CFLAGS && export LDFLAGS="-Wl,--gc-sections"
mkdir -p build-binutils
cd build-binutils
../binutils-*/configure --disable-werror --target=$TARGET --prefix=$PREFIX --disable-nls --disable-tls --disable-libssp --enable-plugin --enable-plugins --enable-gold=yes
make -j8
make -j8 install
cd ..
mkdir -p build-gcc
cd build-gcc
../gcc-*/configure --target=$TARGET --prefix=$PREFIX --without-headers --enable-plugin --enable-plugins --enable-gold=yes --enable-sjlj-exceptions --disable-hosted-libstdcxx --with-gnu-as --with-gnu-ld --enable-languages=c,c++ --disable-nls --disable-tls --disable-libssp --disable-threads --disable-shared --enable-static --disable-__cxa_atexit --disable-libvtv --disable-libada --with-endian=big
make -j8 all-gcc
make -j8 install-gcc
make -j8 all-target-libgcc
make -j8 install-target-libgcc
You didn't read far enough in what you linked then, because you also need libfxcg. Also see
https://prizm.cemetech.net/index.php?title=PrizmSDK_Setup_Guide
O I thought you were referring to a libfxcg somewhere within the casio-gcc directory. Did ya mean the sdk files itself?
Within that directory the lib folder is empty. Do I have to compile parts of this directory? What I've been doing is going to the directory skeleton and using the command make to try and get a g3a to be spit out.
Yes, you need to compile libfxcg. That's the first step on the page I linked above.
How did I miss that in the wiki. I tried compiling that it before this thread but after getting errors 127 and 2 I assumed you were suppose to compile from the skeleton and the libfxcg was material that would be compiled into the final output file.
I am a bit embarrassed now.
I am not really sure what to say as I feel like this response would not bring things more clarity.
I just feel like I have been kinda rude in this thread. I know it is probably just in my head, but I have tried multiple times to try and put technical info in this response about the errors 127 and 2 and a question about if compiling that would put things into the casio-gcc directory. But honestly that fear of being rude means that every time I try I cannot press a single key. Hopefully this preface will help me be able to write a proper response.
So for a proper reply. I feel like I was under the wrong impression for a lot of things.
So firstly thoes errors 127 and 2. This was the terminal output.
Code:
make -C libfxcg
make[1]: Entering directory '/home/saul/Desktop/c_stuff/tools/casioskd/libfxcg/libfxcg'
sh3eb-elf-gcc -c -ffunction-sections -fdata-sections -Os -Lr -I../include -mhitachi -m4a-nofpu -flto -ffat-lto-objects -std=c99 -Wall -Wextra syscalls/GetKeyWait_OS.S -o syscalls/GetKeyWait_OS.o
make[1]: sh3eb-elf-gcc: Command not found
Makefile:21: recipe for target 'syscalls/GetKeyWait_OS.o' failed
make[1]: *** [syscalls/GetKeyWait_OS.o] Error 127
make[1]: Leaving directory '/home/saul/Desktop/c_stuff/tools/casioskd/libfxcg/libfxcg'
Makefile:11: recipe for target 'libfxcg/libfxcg.a' failed
make: *** [libfxcg/libfxcg.a] Error 2
I would assume this is due to me having to specify a file location as without that how would it know to put stuff in the casio-gcc directory to hopefully solve the initial issue.
But I am not sure which makefile would cause this as there is a lot maybe prism_rules, though the prefix I saw in that seemed to be more about turning the C file into object code then g3a.
Admittedly what I did that was to make the whole downloaded folder.
One other question is that what I have been doing is having a folder in my home directory with the gcc stuff. Am I instead suppose to have those files populated throughout the library directories
One things that interests me is that in the thread I linked that linked to another thread from a person on windows who had what looks like the same error as what I initially had and solved it through using a newer version of GCC and binutils. Though that could be coincidence.
Hopefully this does not come off rude or anything.
Register to Join the Conversation
Have your own thoughts to add to this or any other topic? Want to ask a question, offer a suggestion, share your own programs and projects, upload a file to the file archives, get help with calculator and computer programming, or simply chat with like-minded coders and tech and calculator enthusiasts via the site-wide AJAX SAX widget? Registration for a free Cemetech account only takes a minute.
»
Go to Registration page
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum