andwn/marsdev

unknown option single-branch

andwhyisit opened this issue · 9 comments

git clone https://github.com/konamiman/sjasm --branch v0.39 --single-branch
error: unknown option `single-branch'

The --single-branch option only works in newer versions of git. You might need to note that somewhere.

andwn commented

Maybe it'll still work if I just remove it since the branch is already specified

Marsdev hates me:

make[2]: Entering directory '/root/marsdev/sik-tools/mdtools/mdtiler/tool'
cc -Wall -O3 -s -std=c99 -c -o main.o main.c
cc -Wall -O3 -s -std=c99 -c -o tiles.o tiles.c
cc -Wall -O3 -s -std=c99 -c -o batch.o batch.c
cc -Wall -O3 -s -std=c99 -c -o bitmap.o bitmap.c
bitmap.c:30:17: error: png.h: No such file or directory
bitmap.c:39: warning: parameter names (without types) in function declaration
bitmap.c: In function ‘load_bitmap’:
bitmap.c:105: error: ‘png_structp’ undeclared (first use in this function)
bitmap.c:105: error: (Each undeclared identifier is reported only once
bitmap.c:105: error: for each function it appears in.)
bitmap.c:105: error: expected ‘;’ before ‘png_ptr’
bitmap.c:107: error: ‘png_ptr’ undeclared (first use in this function)
bitmap.c:113: error: ‘png_infop’ undeclared (first use in this function)
bitmap.c:113: error: expected ‘;’ before ‘info_ptr’
bitmap.c:114: error: ‘info_ptr’ undeclared (first use in this function)
bitmap.c:115: warning: implicit declaration of function ‘png_destroy_read_struct’
bitmap.c:122: warning: implicit declaration of function ‘png_jmpbuf’
bitmap.c:129: warning: implicit declaration of function ‘png_set_read_fn’
bitmap.c:133: warning: implicit declaration of function ‘png_set_user_limits’
bitmap.c:136: warning: implicit declaration of function ‘png_read_png’
bitmap.c:136: error: ‘PNG_TRANSFORM_STRIP_16’ undeclared (first use in this function)
bitmap.c:137: error: ‘PNG_TRANSFORM_PACKING’ undeclared (first use in this function)
bitmap.c:137: error: ‘PNG_TRANSFORM_SHIFT’ undeclared (first use in this function)
bitmap.c:138: error: ‘PNG_TRANSFORM_STRIP_ALPHA’ undeclared (first use in this function)
bitmap.c:141: error: ‘png_bytepp’ undeclared (first use in this function)
bitmap.c:141: error: expected ‘;’ before ‘rows’
bitmap.c:144: warning: implicit declaration of function ‘png_get_image_width’
bitmap.c:145: warning: implicit declaration of function ‘png_get_image_height’
bitmap.c:146: warning: implicit declaration of function ‘png_get_color_type’
bitmap.c:186: error: ‘PNG_COLOR_TYPE_PALETTE’ undeclared (first use in this function)
bitmap.c:188: error: ‘rows’ undeclared (first use in this function)
bitmap.c:195: error: ‘PNG_COLOR_TYPE_GRAY’ undeclared (first use in this function)
bitmap.c:206: error: ‘PNG_COLOR_TYPE_RGB’ undeclared (first use in this function)
bitmap.c: At top level:
bitmap.c:234: error: expected ‘)’ before ‘png_ptr’
make[2]: *** [bitmap.o] Error 1
make[2]: Leaving directory '/root/marsdev/sik-tools/mdtools/mdtiler/tool'
make[1]: *** [/root/mars/bin/mdtiler] Error 2
make[1]: Leaving directory '/root/marsdev/sik-tools'
make: *** [sik-tools] Error 2

andwn commented

I think you would be better off extracting the release tarball to your home directory, if libpng 1.6 development libraries are not available in your OS.

andwn commented

Also if you only care about Cave Story I don't think any of Sik's tools (or Flamewing's for that matter) are needed, just the SGDK ones.

So make sgdk (don't clean first or you will lose the toolchain you spent an hour building) and you should be done.

I am now deeply regretting choosing Centos when I originally set up this server.

andwn commented

😬

This should "just work" though, really
https://github.com/andwn/marsdev/releases/tag/2017.09.12

I wish it did.

/root/mars/m68k-elf/bin/m68k-elf-gcc: /lib64/libc.so.6: version `GLIBC_2.14' not found (required by /root/mars/m68k-elf/bin/m68k-elf-gcc)

I can't upgrade it without breaking stuff, so I have to compile from source.

Alright I managed to compile the important stuff.

andwn commented

3 months later I was able to try this on a CentOS VM from work. I got rid of "--single-branch" and made the flamewing + sik tools optional since they require "new" things and aren't needed to build SGDK/Cave Story/YM2017.

The GLIBC_2.14 error also came up from trying the release due to the compiler that built it using a newer glibc than that on the system (built with GCC 7 but CentOS 6 and Debian 8 only have GCC 4.8 compatibility).

Apparently libc is backwards compatible:
https://stackoverflow.com/questions/11107263/how-compatible-are-different-versions-of-glibc

So what I am going to do in the future is be more conservative with the GCC version that builds releases. The toolchain will still use GCC 7.2.0 but I will build the GCC 7.2.0 with GCC 4.8.x, if that makes sense. Cross compiling is fun.