Update your Genesis/32X Toolchain!

Talk about development tools here

Moderator: BigEvilCorporation

ammianus
Very interested
Posts: 124
Joined: Sun Jan 29, 2012 2:10 pm
Location: North America
Contact:

Post by ammianus » Thu Dec 13, 2012 8:55 pm

kubilus1 wrote:Alright everything but zasm should work on FreeBSD now. Tested on FreeBSD 8.3. Just checkout the project and do what I recommend in the previous post. This is tested with the gcc and binutils, through the sgdk setup. Since sgdk uses sjasm instead of zasm, you should still be ok.

Now if someone wanted to donate a Macbook Air, I'll take a look at a Mac build on this ... ;)
you want one of the new Macbook Pro with Retina Display.

Incredible screen. 8)

SONIC3D
Newbie
Posts: 6
Joined: Fri Dec 28, 2007 6:05 am
Location: Shanghai

Post by SONIC3D » Mon Aug 25, 2014 1:29 pm

Here is the prebuilt toolchain for Mac OS X:

https://www.mediafire.com/folder/41qpee ... n-Official
Tested with gens and 32X example files on OS X 10.8 and 10.9.
And I will add build script later as I forget where I stored it.I built this toolchain several months ago...


Thanks Chilly Willy for sharing the tutorial and reuploading the example.
:roll:

Zontar
Very interested
Posts: 55
Joined: Fri Oct 21, 2011 8:58 pm

Post by Zontar » Sat Oct 11, 2014 7:15 pm

Bit of a longshot but worth asking: are there m68k versions of GDC (for D programming language) or gccgo (for Golang)? Can we use them for genesis dev if they do exist? I'm loving what's new in the languages space.

Chilly Willy
Very interested
Posts: 2984
Joined: Fri Aug 17, 2007 9:33 pm

Post by Chilly Willy » Sun Oct 12, 2014 5:25 am

Zontar wrote:Bit of a longshot but worth asking: are there m68k versions of GDC (for D programming language) or gccgo (for Golang)? Can we use them for genesis dev if they do exist? I'm loving what's new in the languages space.
Not at present, but they wouldn't be too hard to compile. My toolchain builds Objective C/C++ in addition to C/C++. What might be more of an issue is any libraries associated with the languages that are commonly used. My toolchain only builds the c and stdc++ libraries. I've kept track of D since before 1.0, and the last time I looked over the code, the Phobos library would have been a pain to port. Not to mention, memory will be a BIG consideration - for example, simply including <iostream> with C++ projects makes the project tremendously bloated for the Genesis. If you can get by with just the language and the basic runtime, you'll probably have better luck than if you need more of the extra libs.

ammianus
Very interested
Posts: 124
Joined: Sun Jan 29, 2012 2:10 pm
Location: North America
Contact:

Post by ammianus » Sat Jan 17, 2015 8:32 pm

SONIC3D wrote:Here is the prebuilt toolchain for Mac OS X:

https://www.mediafire.com/folder/41qpee ... n-Official
Tested with gens and 32X example files on OS X 10.8 and 10.9.
And I will add build script later as I forget where I stored it.I built this toolchain several months ago...


Thanks Chilly Willy for sharing the tutorial and reuploading the example.
:roll:
This file doesn't appear to be there anymore, or it's not visible for me at least.

I am trying to build the toolchain for Mac OSX 10.10.1, getting errors after about 10 min:

Code: Select all

...
gtype-desc.c:8759:18: error: subscripted value is not an array, pointer, or
      vector
    sizeof (x_rtl[0]),
            ~~~~~^~
gtype-desc.c:8878:36: error: subscripted value is not an array, pointer, or
      vector
    sizeof (default_target_libfuncs[0]),
            ~~~~~~~~~~~~~~~~~~~~~~~^~
gtype-desc.c:8962:31: error: subscripted value is not an array, pointer, or
      vector
    sizeof (default_target_rtl[0]),
            ~~~~~~~~~~~~~~~~~~^~
gtype-desc.c:8983:31: error: subscripted value is not an array, pointer, or
      vector
    sizeof (default_target_rtl[0]),
            ~~~~~~~~~~~~~~~~~~^~
gtype-desc.c:8990:31: error: subscripted value is not an array, pointer, or
      vector
    sizeof (default_target_rtl[0]),
            ~~~~~~~~~~~~~~~~~~^~
gtype-desc.c:8997:31: error: subscripted value is not an array, pointer, or
      vector
    sizeof (default_target_rtl[0]),
            ~~~~~~~~~~~~~~~~~~^~
68 warnings and 6 errors generated.
make[2]: *** [gtype-desc.o] Error 1
make[1]: *** [all-gcc] Error 2
make: *** [build-sh2-gcc-pass1] Error 2
Is there any other prerequisite steps for Mac OSX?

Edit: searching around, this error appears to be an issue when using gcc 4.7 to compile things. I only have the default Mac gcc I guess

Code: Select all

gcc --version
Configured with: --prefix=/Applications/Xcode.app/Contents/Developer/usr --with-gxx-include-dir=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.10.sdk/usr/include/c++/4.2.1
Apple LLVM version 6.0 (clang-600.0.56) (based on LLVM 3.5svn)
Target: x86_64-apple-darwin14.0.0
Thread model: posix

Chilly Willy
Very interested
Posts: 2984
Joined: Fri Aug 17, 2007 9:33 pm

Post by Chilly Willy » Sun Jan 18, 2015 12:54 am

Newer versions of gcc require fairly recent versions of gcc to compile. You might try changing the makefile to build an older version. Just because I use gcc 4.8.3 doesn't mean everyone has to. You could try compiling like 4.6.whatever or 4.7.whatever.

ammianus
Very interested
Posts: 124
Joined: Sun Jan 29, 2012 2:10 pm
Location: North America
Contact:

Post by ammianus » Sun Jan 18, 2015 5:39 pm

Chilly Willy wrote:Newer versions of gcc require fairly recent versions of gcc to compile. You might try changing the makefile to build an older version. Just because I use gcc 4.8.3 doesn't mean everyone has to. You could try compiling like 4.6.whatever or 4.7.whatever.
I just tried creating a Xubuntu VM to see if it works there. Using Xubuntu 14.04 I get the same errors, this time I see my Xubuntu's gcc version is 4.8.2

Are you saying when you build the gcc 4.6.2 toolchain for sega you use gcc 4.8.3?

Chilly Willy
Very interested
Posts: 2984
Joined: Fri Aug 17, 2007 9:33 pm

Post by Chilly Willy » Sun Jan 18, 2015 7:26 pm

ammianus wrote:
Chilly Willy wrote:Newer versions of gcc require fairly recent versions of gcc to compile. You might try changing the makefile to build an older version. Just because I use gcc 4.8.3 doesn't mean everyone has to. You could try compiling like 4.6.whatever or 4.7.whatever.
I just tried creating a Xubuntu VM to see if it works there. Using Xubuntu 14.04 I get the same errors, this time I see my Xubuntu's gcc version is 4.8.2

Are you saying when you build the gcc 4.6.2 toolchain for sega you use gcc 4.8.3?
No, it should work fine. I use xubuntu 14.04 and it compiles fine. You must have missed a step, or gotten a step wrong. Probably forgot to copy the mpfr/mpc/gmp into the gcc source folder. Or maybe you forgot to change their folder names. Reread step 1 and make sure you follow it EXACTLY.

If you still have trouble, post the ENTIRE output from the build, not just one or two lines. You can't tell anything from the couple lines you posted.

ammianus
Very interested
Posts: 124
Joined: Sun Jan 29, 2012 2:10 pm
Location: North America
Contact:

Post by ammianus » Sun Jan 18, 2015 9:40 pm

Chilly Willy wrote:
ammianus wrote:
Chilly Willy wrote:Newer versions of gcc require fairly recent versions of gcc to compile. You might try changing the makefile to build an older version. Just because I use gcc 4.8.3 doesn't mean everyone has to. You could try compiling like 4.6.whatever or 4.7.whatever.
I just tried creating a Xubuntu VM to see if it works there. Using Xubuntu 14.04 I get the same errors, this time I see my Xubuntu's gcc version is 4.8.2

Are you saying when you build the gcc 4.6.2 toolchain for sega you use gcc 4.8.3?
No, it should work fine. I use xubuntu 14.04 and it compiles fine. You must have missed a step, or gotten a step wrong. Probably forgot to copy the mpfr/mpc/gmp into the gcc source folder. Or maybe you forgot to change their folder names. Reread step 1 and make sure you follow it EXACTLY.

If you still have trouble, post the ENTIRE output from the build, not just one or two lines. You can't tell anything from the couple lines you posted.
If I install gcc-4.6 and texinfo packages, I get further, but then receive errors with TeX documentation:

Code: Select all

gcc   -g -O2 -DIN_GCC -DCROSS_DIRECTORY_STRUCTURE  -W -Wall -Wwrite-strings -Wcast-qual -Wstrict-prototypes -Wmissing-prototypes -Wmissing-format-attribute -pedantic -Wno-long-long -Wno-variadic-macros -Wno-overlength-strings -Wold-style-definition -Wc++-compat   -DHAVE_CONFIG_H  -o lto1 \
		lto/lto-lang.o lto/lto.o lto/lto-object.o attribs.o main.o  libbackend.a ../libcpp/libcpp.a ../libdecnumber/libdecnumber.a   -L/home/ammianus/Downloads/32X/build-gcc-m68k-elf-4.6.2/./gmp/.libs -L/home/ammianus/Downloads/32X/build-gcc-m68k-elf-4.6.2/./mpfr/.libs -L/home/ammianus/Downloads/32X/build-gcc-m68k-elf-4.6.2/./mpc/src/.libs -lmpc -lmpfr -lgmp -rdynamic -ldl  -L../zlib -lz ../libcpp/libcpp.a   ../libiberty/libiberty.a ../libdecnumber/libdecnumber.a 
if [ xinfo = xinfo ]; then \
		makeinfo --split-size=5000000 --no-split -I . -I ../../gcc-4.6.2/gcc/doc \
			-I ../../gcc-4.6.2/gcc/doc/include -o doc/cpp.info ../../gcc-4.6.2/gcc/doc/cpp.texi; \
	fi
if [ xinfo = xinfo ]; then \
		makeinfo --split-size=5000000 --no-split -I . -I ../../gcc-4.6.2/gcc/doc \
			-I ../../gcc-4.6.2/gcc/doc/include -o doc/gcc.info ../../gcc-4.6.2/gcc/doc/gcc.texi; \
	fi
../../gcc-4.6.2/gcc/doc/gcc.texi:89: warning: @tex should only appear at a line beginning
../../gcc-4.6.2/gcc/doc/gcc.texi:89: warning: @end should only appear at a line beginning
../../gcc-4.6.2/gcc/doc/gcc.texi:91: warning: @tex should only appear at a line beginning
../../gcc-4.6.2/gcc/doc/gcc.texi:91: warning: @end should only appear at a line beginning
../../gcc-4.6.2/gcc/doc/invoke.texi:168: superfluous argument to @end smallexample:  -fdump-go-spec=@var{file} (possibly involving @gccoptlist)
../../gcc-4.6.2/gcc/doc/invoke.texi:5088: @itemx must follow @item
../../gcc-4.6.2/gcc/doc/invoke.texi:5092: @itemx must follow @item
../../gcc-4.6.2/gcc/doc/invoke.texi:5103: @itemx must follow @item
../../gcc-4.6.2/gcc/doc/invoke.texi:5107: @itemx must follow @item
../../gcc-4.6.2/gcc/doc/invoke.texi:5152: @itemx must follow @item
../../gcc-4.6.2/gcc/doc/invoke.texi:5182: @itemx must follow @item
../../gcc-4.6.2/gcc/doc/invoke.texi:5194: @itemx must follow @item
../../gcc-4.6.2/gcc/doc/invoke.texi:977: warning: node next `Overall Options' in menu `C Dialect Options' and in sectioning `Invoking G++' differ
../../gcc-4.6.2/gcc/doc/invoke.texi:977: warning: node up `Overall Options' in menu `Option Summary' and in sectioning `Invoking GCC' differ
../../gcc-4.6.2/gcc/doc/invoke.texi:1442: warning: node prev `C Dialect Options' in menu `Overall Options' and in sectioning `Invoking G++' differ
../../gcc-4.6.2/gcc/doc/invoke.texi:1442: warning: node up `C Dialect Options' in menu `Option Summary' and in sectioning `Invoking GCC' differ
../../gcc-4.6.2/gcc/doc/invoke.texi:1811: warning: node up `C++ Dialect Options' in menu `Option Summary' and in sectioning `Invoking GCC' differ
../../gcc-4.6.2/gcc/doc/invoke.texi:2513: warning: node up `Objective-C and Objective-C++ Dialect Options' in menu `Option Summary' and in sectioning `Invoking GCC' differ
../../gcc-4.6.2/gcc/doc/invoke.texi:2745: warning: node up `Language Independent Options' in menu `Option Summary' and in sectioning `Invoking GCC' differ
../../gcc-4.6.2/gcc/doc/invoke.texi:2808: warning: node up `Warning Options' in menu `Option Summary' and in sectioning `Invoking GCC' differ
../../gcc-4.6.2/gcc/doc/invoke.texi:4538: warning: node up `Debugging Options' in menu `Option Summary' and in sectioning `Invoking GCC' differ
../../gcc-4.6.2/gcc/doc/invoke.texi:5862: warning: node up `Optimize Options' in menu `Option Summary' and in sectioning `Invoking GCC' differ
../../gcc-4.6.2/gcc/doc/invoke.texi:8917: warning: node up `Preprocessor Options' in menu `Option Summary' and in sectioning `Invoking GCC' differ
../../gcc-4.6.2/gcc/doc/invoke.texi:8955: warning: node up `Assembler Options' in menu `Option Summary' and in sectioning `Invoking GCC' differ
../../gcc-4.6.2/gcc/doc/invoke.texi:8978: warning: node up `Link Options' in menu `Option Summary' and in sectioning `Invoking GCC' differ
../../gcc-4.6.2/gcc/doc/invoke.texi:9230: warning: node up `Directory Options' in menu `Option Summary' and in sectioning `Invoking GCC' differ
../../gcc-4.6.2/gcc/doc/invoke.texi:9374: warning: node up `Spec Files' in menu `Option Summary' and in sectioning `Invoking GCC' differ
../../gcc-4.6.2/gcc/doc/invoke.texi:9936: warning: node up `Target Options' in menu `Option Summary' and in sectioning `Invoking GCC' differ
../../gcc-4.6.2/gcc/doc/implement-c.texi:6: warning: node next `C Implementation' in menu `C Extensions' and in sectioning `C++ Implementation' differ
../../gcc-4.6.2/gcc/doc/implement-cxx.texi:6: warning: node next `C++ Implementation' in menu `C++ Extensions' and in sectioning `C Extensions' differ
../../gcc-4.6.2/gcc/doc/implement-cxx.texi:6: warning: node prev `C++ Implementation' in menu `C Extensions' and in sectioning `C Implementation' differ
../../gcc-4.6.2/gcc/doc/extend.texi:8: warning: node next `C Extensions' in menu `C++ Implementation' and in sectioning `C++ Extensions' differ
../../gcc-4.6.2/gcc/doc/extend.texi:8: warning: node prev `C Extensions' in menu `C Implementation' and in sectioning `C++ Implementation' differ
../../gcc-4.6.2/gcc/doc/extend.texi:771: warning: node next `Conditionals' in menu `Long Long' and in sectioning `__int128' differ
../../gcc-4.6.2/gcc/doc/extend.texi:809: warning: node next `__int128' in menu `Complex' and in sectioning `Long Long' differ
../../gcc-4.6.2/gcc/doc/extend.texi:809: warning: node prev `__int128' in menu `Long Long' and in sectioning `Conditionals' differ
../../gcc-4.6.2/gcc/doc/extend.texi:820: warning: node next `Long Long' in menu `__int128' and in sectioning `Complex' differ
../../gcc-4.6.2/gcc/doc/extend.texi:820: warning: node prev `Long Long' in menu `Conditionals' and in sectioning `__int128' differ
../../gcc-4.6.2/gcc/doc/extend.texi:852: warning: node prev `Complex' in menu `__int128' and in sectioning `Long Long' differ
../../gcc-4.6.2/gcc/doc/extend.texi:1246: warning: node next `Zero Length' in menu `Variable Length' and in sectioning `Empty Structures' differ
../../gcc-4.6.2/gcc/doc/extend.texi:1344: warning: node next `Empty Structures' in menu `Variadic Macros' and in sectioning `Variable Length' differ
../../gcc-4.6.2/gcc/doc/extend.texi:1344: warning: node prev `Empty Structures' in menu `Variable Length' and in sectioning `Zero Length' differ
../../gcc-4.6.2/gcc/doc/extend.texi:1360: warning: node next `Variable Length' in menu `Empty Structures' and in sectioning `Variadic Macros' differ
../../gcc-4.6.2/gcc/doc/extend.texi:1360: warning: node prev `Variable Length' in menu `Zero Length' and in sectioning `Empty Structures' differ
../../gcc-4.6.2/gcc/doc/extend.texi:1441: warning: node prev `Variadic Macros' in menu `Empty Structures' and in sectioning `Variable Length' differ
../../gcc-4.6.2/gcc/doc/extend.texi:1659: warning: node next `Designated Inits' in menu `Cast to Union' and in sectioning `Case Ranges' differ
../../gcc-4.6.2/gcc/doc/extend.texi:1803: warning: node next `Case Ranges' in menu `Mixed Declarations' and in sectioning `Cast to Union' differ
../../gcc-4.6.2/gcc/doc/extend.texi:1803: warning: node prev `Case Ranges' in menu `Cast to Union' and in sectioning `Designated Inits' differ
../../gcc-4.6.2/gcc/doc/extend.texi:1840: warning: node next `Cast to Union' in menu `Case Ranges' and in sectioning `Mixed Declarations' differ
../../gcc-4.6.2/gcc/doc/extend.texi:1840: warning: node prev `Cast to Union' in menu `Designated Inits' and in sectioning `Case Ranges' differ
../../gcc-4.6.2/gcc/doc/extend.texi:1881: warning: node prev `Mixed Declarations' in menu `Case Ranges' and in sectioning `Cast to Union' differ
../../gcc-4.6.2/gcc/doc/extend.texi:10004: warning: node next `MIPS Loongson Built-in Functions' in menu `Other MIPS Built-in Functions' and in sectioning `picoChip Built-in Functions' differ
../../gcc-4.6.2/gcc/doc/extend.texi:10407: warning: node next `picoChip Built-in Functions' in menu `PowerPC AltiVec/VSX Built-in Functions' and in sectioning `Other MIPS Built-in Functions' differ
../../gcc-4.6.2/gcc/doc/extend.texi:10407: warning: node prev `picoChip Built-in Functions' in menu `Other MIPS Built-in Functions' and in sectioning `MIPS Loongson Built-in Functions' differ
../../gcc-4.6.2/gcc/doc/extend.texi:10443: warning: node next `Other MIPS Built-in Functions' in menu `picoChip Built-in Functions' and in sectioning `PowerPC AltiVec/VSX Built-in Functions' differ
../../gcc-4.6.2/gcc/doc/extend.texi:10443: warning: node prev `Other MIPS Built-in Functions' in menu `MIPS Loongson Built-in Functions' and in sectioning `picoChip Built-in Functions' differ
../../gcc-4.6.2/gcc/doc/extend.texi:10455: warning: node prev `PowerPC AltiVec/VSX Built-in Functions' in menu `picoChip Built-in Functions' and in sectioning `Other MIPS Built-in Functions' differ
../../gcc-4.6.2/gcc/doc/extend.texi:13701: warning: node prev `C++ Extensions' in menu `C++ Implementation' and in sectioning `C Extensions' differ
../../gcc-4.6.2/gcc/doc/trouble.texi:7: warning: node next `Trouble' in menu `Service' and in sectioning `Bugs' differ
../../gcc-4.6.2/gcc/doc/trouble.texi:7: warning: node prev `Trouble' in menu `Bug Reporting' and in sectioning `Gcov' differ
../../gcc-4.6.2/gcc/doc/trouble.texi:7: warning: node up `Trouble' in menu `Bugs' and in sectioning `Top' differ
../../gcc-4.6.2/gcc/doc/service.texi:6: warning: node prev `Service' in menu `Trouble' and in sectioning `Bugs' differ
../../gcc-4.6.2/gcc/doc/service.texi:6: warning: node up `Service' in menu `Bugs' and in sectioning `Top' differ
make[2]: *** [doc/gcc.info] Error 1
make[2]: Leaving directory `/home/ammianus/Downloads/32X/build-gcc-m68k-elf-4.6.2/gcc'
make[1]: *** [all-gcc] Error 2
make[1]: Leaving directory `/home/ammianus/Downloads/32X/build-gcc-m68k-elf-4.6.2'
make: *** [build-m68k-gcc-pass1] Error 2

SONIC3D
Newbie
Posts: 6
Joined: Fri Dec 28, 2007 6:05 am
Location: Shanghai

Post by SONIC3D » Wed Feb 04, 2015 5:54 pm

ammianus wrote:
SONIC3D wrote:Here is the prebuilt toolchain for Mac OS X:

https://www.mediafire.com/folder/41qpee ... n-Official
Tested with gens and 32X example files on OS X 10.8 and 10.9.
And I will add build script later as I forget where I stored it.I built this toolchain several months ago...


Thanks Chilly Willy for sharing the tutorial and reuploading the example.
:roll:
This file doesn't appear to be there anymore, or it's not visible for me at least.

I am trying to build the toolchain for Mac OSX 10.10.1, getting errors after about 10 min:

Code: Select all

...
gtype-desc.c:8759:18: error: subscripted value is not an array, pointer, or
      vector
    sizeof (x_rtl[0]),
            ~~~~~^~
gtype-desc.c:8878:36: error: subscripted value is not an array, pointer, or
      vector
    sizeof (default_target_libfuncs[0]),
            ~~~~~~~~~~~~~~~~~~~~~~~^~
gtype-desc.c:8962:31: error: subscripted value is not an array, pointer, or
      vector
    sizeof (default_target_rtl[0]),
            ~~~~~~~~~~~~~~~~~~^~
gtype-desc.c:8983:31: error: subscripted value is not an array, pointer, or
      vector
    sizeof (default_target_rtl[0]),
            ~~~~~~~~~~~~~~~~~~^~
gtype-desc.c:8990:31: error: subscripted value is not an array, pointer, or
      vector
    sizeof (default_target_rtl[0]),
            ~~~~~~~~~~~~~~~~~~^~
gtype-desc.c:8997:31: error: subscripted value is not an array, pointer, or
      vector
    sizeof (default_target_rtl[0]),
            ~~~~~~~~~~~~~~~~~~^~
68 warnings and 6 errors generated.
make[2]: *** [gtype-desc.o] Error 1
make[1]: *** [all-gcc] Error 2
make: *** [build-sh2-gcc-pass1] Error 2
Is there any other prerequisite steps for Mac OSX?

Edit: searching around, this error appears to be an issue when using gcc 4.7 to compile things. I only have the default Mac gcc I guess

Code: Select all

gcc --version
Configured with: --prefix=/Applications/Xcode.app/Contents/Developer/usr --with-gxx-include-dir=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.10.sdk/usr/include/c++/4.2.1
Apple LLVM version 6.0 (clang-600.0.56) (based on LLVM 3.5svn)
Target: x86_64-apple-darwin14.0.0
Thread model: posix
Files are still there,just confirmed.
Sorry,I remember I modified the build script a bit.But I can hardly remember how I have done that.And the VirtualMachine I used to build it is missing.I forgot where I put the VM disk file.
:(

SONIC3D
Newbie
Posts: 6
Joined: Fri Dec 28, 2007 6:05 am
Location: Shanghai

Build script for MacOSX

Post by SONIC3D » Thu Feb 19, 2015 9:28 pm

Another year passed by.And it's another Chinese spring festival.I think I have to do something to cure my procrastination. :roll:

I tried to recall what I have done last year.And finally I successfully built the toolchain again(OS:Mac OS X 10.8.5).It's now based on mattkubilus's gendev build script on google code(https://code.google.com/p/gendev/) with slightly modification to make it compilable on MacOSX.

And I created a new repository on github in case I forget how to do that months later.And anyone who interested in build the toolchain on OS X can simply clone that and build it yourself.
Check this URL for git info:
https://github.com/SONIC3D/gendev-macos

Tools version info:
Currently this toolchain is based on:
GCC_VERSION=4.8.2
MPFR_VERSION=2.4.2
MPC_VERSION=0.8.2
GMP_VERSION=5.0.5
BINUTILS_VERSION=2.24
NEWLIB_VERSION=1.19.0
zasm=3.0.21

Things that skipped
Compare to mattkubilus's work.My current modification has 3 tools unimplemented in build.They are:
sixpack
VGMTools/vgm_cmp
appack
These tools need additional source modification to build on MacOSX.I will update them later.(Procrastination!! :twisted: )

Caution:
Build this toolchain requires estimated 1.5 hrs to finish.So try not building it with battery power.

P.S. I'm not a native English speaker.So if there is anything unclear with the ReadMe.md,please tell me.(I will try to fix that.)

Greets:
Finally thanks ChillyWilly for sharing the initial toolchain building experience/script resource/example.And thanks mattkubilus(don't know if he's in this forum) for his excellent all-in-one build script as my work basis.

Happy New Year!! :P

kubilus1
Very interested
Posts: 237
Joined: Thu Aug 16, 2012 2:25 am
Contact:

Post by kubilus1 » Sun Mar 08, 2015 11:23 pm

Fantastic work. It's great to have other build options for other operating systems. That should help keep interest in our hobby.

Stef
Very interested
Posts: 3131
Joined: Thu Nov 30, 2006 9:46 pm
Location: France - Sevres
Contact:

Post by Stef » Tue Mar 10, 2015 8:20 am

Great ! I put a link on the main SGDK project page if you don't mind :)

Zontar
Very interested
Posts: 55
Joined: Fri Oct 21, 2011 8:58 pm

Post by Zontar » Sat Mar 28, 2015 11:06 pm

There is a potential issue with newlib 2.1.0.

I have encountered this error when compiling the toolchain in linux (ubuntu 14.04 with GCC 4.8.2): https://sourceware.org/ml/newlib/2014/msg00258.html

The solution appears to be rolling back to newlib 2.0.0. I'm still in the middle of compiling now, will report if that works.

UPDATE: toolchain does compile with newlib 2.0.0 and programs will compile, but they will not work when you go to run them. This appears to be a regression due to a change in GCC and I do not believe it will ever be fixed by either newlib or GCC.

Moon-Watcher
Very interested
Posts: 117
Joined: Sun Jan 02, 2011 9:14 pm
Contact:

Post by Moon-Watcher » Mon Mar 30, 2015 10:01 pm

I used noname22's script it and got this error building the MD TicTacToe on C++

Code: Select all

t800@cabronazo:~/Escritorio/TicTacToe/C++/MD$ make -f Makefile
m68k-elf-g++ -T /opt/toolchains/gen/ldscripts/md.ld -Wl,-Map=output.map -nostdlib -ffreestanding -fno-rtti crt0.o crtstuff.o main.o hw_md.o font.o -L/opt/toolchains/gen/m68k-elf/lib -L/opt/toolchains/gen/m68k-elf/m68k-elf/lib -lstdc++ -lc -lgcc -lnosys -o TicTacToe.elf
/opt/toolchains/gen/m68k-elf/m68k-elf/lib/libc.a(lib_a-closer.o): En la función `_close_r':
/home/t800/megadrive-gcc-master/build/build-newlib-m68k-elf-2.0.0/m68k-elf/newlib/libc/reent/../../../../../newlib-2.0.0/newlib/libc/reent/closer.c:53: aviso: _close is not implemented and will always fail
/opt/toolchains/gen/m68k-elf/m68k-elf/lib/libc.a(lib_a-fstatr.o): En la función `_fstat_r':
/home/t800/megadrive-gcc-master/build/build-newlib-m68k-elf-2.0.0/m68k-elf/newlib/libc/reent/../../../../../newlib-2.0.0/newlib/libc/reent/fstatr.c:62: aviso: _fstat is not implemented and will always fail
/opt/toolchains/gen/m68k-elf/m68k-elf/lib/libc.a(lib_a-signalr.o): En la función `_getpid_r':
/home/t800/megadrive-gcc-master/build/build-newlib-m68k-elf-2.0.0/m68k-elf/newlib/libc/reent/../../../../../newlib-2.0.0/newlib/libc/reent/signalr.c:96: aviso: _getpid is not implemented and will always fail
/opt/toolchains/gen/m68k-elf/m68k-elf/lib/libc.a(lib_a-isattyr.o): En la función `_isatty_r':
/home/t800/megadrive-gcc-master/build/build-newlib-m68k-elf-2.0.0/m68k-elf/newlib/libc/reent/../../../../../newlib-2.0.0/newlib/libc/reent/isattyr.c:58: aviso: _isatty is not implemented and will always fail
/opt/toolchains/gen/m68k-elf/m68k-elf/lib/libc.a(lib_a-signalr.o): En la función `_kill_r':
/home/t800/megadrive-gcc-master/build/build-newlib-m68k-elf-2.0.0/m68k-elf/newlib/libc/reent/../../../../../newlib-2.0.0/newlib/libc/reent/signalr.c:61: aviso: _kill is not implemented and will always fail
/opt/toolchains/gen/m68k-elf/m68k-elf/lib/libstdc++.a(basic_file.o): En la función `std::__basic_file<char>::seekoff(long long, std::_Ios_Seekdir)':
/home/t800/megadrive-gcc-master/build/build-gcc-m68k-elf-4.9.1/m68k-elf/libstdc++-v3/src/c++98/basic_file.cc:327: aviso: _lseek is not implemented and will always fail
/opt/toolchains/gen/m68k-elf/m68k-elf/lib/libc.a(lib_a-openr.o): En la función `_open_r':
/home/t800/megadrive-gcc-master/build/build-newlib-m68k-elf-2.0.0/m68k-elf/newlib/libc/reent/../../../../../newlib-2.0.0/newlib/libc/reent/openr.c:59: aviso: _open is not implemented and will always fail
/opt/toolchains/gen/m68k-elf/m68k-elf/lib/libstdc++.a(basic_file.o): En la función `std::__basic_file<char>::xsgetn(char*, long)':
/home/t800/megadrive-gcc-master/build/build-gcc-m68k-elf-4.9.1/m68k-elf/libstdc++-v3/src/c++98/basic_file.cc:289: aviso: _read is not implemented and will always fail
/opt/toolchains/gen/m68k-elf/m68k-elf/lib/libstdc++.a(pure.o): En la función `__cxa_pure_virtual':
/home/t800/megadrive-gcc-master/build/build-gcc-m68k-elf-4.9.1/m68k-elf/libstdc++-v3/libsupc++/../../../../gcc-4.9.1/libstdc++-v3/libsupc++/pure.cc:49: aviso: _write is not implemented and will always fail
/opt/toolchains/gen/m68k-elf/lib/gcc/m68k-elf/4.9.1/../../../../m68k-elf/bin/ld: la sección .gcc_except_table._ZNSt8ios_base4InitC2Ev.part.10 cargada en [0000000000000000,000000000000005b] sobreescribe la sección .text cargada en [0000000000000000,0000000000073e31]
collect2: error: ld devolvió el estado de salida 1
make: *** [TicTacToe.elf] Error 1

Does anyone knows how to solve this?

Code: Select all

collect2: error: ld devolvió el estado de salida 1
Ops, forgot to mention it's a Mind Debian Edition

Code: Select all

$ uname -a
Linux cabronazo 3.11-2-amd64 #1 SMP Debian 3.11.8-1 (2013-11-13) x86_64 GNU/Linux

Post Reply