Feed The Beast Wiki talk:Tilesheet update guide

Windows
Try out for 2 hours, I have no idea what to do yet. The program fails when compiling. I'm not a progammer .... can anyone help ? Microsoft Windows [Version 6.1.7601] Copyright (c) 2009 Microsoft Corporation. Alle Rechte vorbehalten.

D:\Daten\Rust\ftb-rs-master>set path=D:\Programme\Rust\bin

D:\Daten\Rust\ftb-rs-master>cargo build Compiling regex-syntax v0.2.2 Compiling libc v0.1.10 Compiling bitflags v0.3.2 Compiling byteorder v0.3.13 Compiling winapi v0.2.4 Compiling memchr v0.1.6 Compiling rustc-serialize v0.3.16 Compiling aho-corasick v0.3.4 Compiling winapi-build v0.1.1 Compiling advapi32-sys v0.1.2 Compiling regex v0.1.41 Compiling glob v0.2.10 Compiling rand v0.3.11 Compiling gcc v0.3.19 Compiling miniz-sys v0.1.6 Compiling num v0.1.27 Build failed, waiting for other jobs to finish... failed to run custom build command for `miniz-sys v0.1.6` Process didn't exit successfully: `D:\Daten\Rust\ftb-rs-master\target\debug\buil d\miniz-sys-6a96c81df5f9218f\build-script-build` (exit code: 101) --- stdout TARGET = Some("x86_64-pc-windows-gnu") OPT_LEVEL = Some("0") PROFILE = Some("debug") TARGET = Some("x86_64-pc-windows-gnu") debug=true opt-level=0 HOST = Some("x86_64-pc-windows-gnu") TARGET = Some("x86_64-pc-windows-gnu") TARGET = Some("x86_64-pc-windows-gnu") HOST = Some("x86_64-pc-windows-gnu") CC_x86_64-pc-windows-gnu = None CC_x86_64_pc_windows_gnu = None HOST_CC = None CC = None TARGET = Some("x86_64-pc-windows-gnu") HOST = Some("x86_64-pc-windows-gnu") CFLAGS_x86_64-pc-windows-gnu = None CFLAGS_x86_64_pc_windows_gnu = None HOST_CFLAGS = None CFLAGS = None running: "gcc.exe" "-O0" "-ffunction-sections" "-fdata-sections" "-g" "-m64" "-o " "D:\\Daten\\Rust\\ftb-rs-master\\target\\debug\\build\\miniz-sys-6a96c81df5f92 18f\\out\\miniz.o" "-c" "miniz.c" ExitStatus(ExitStatus(1))

command did not execute successfully, got: exit code: 1

--- stderr gcc.exe: error: CreateProcess: No such file or directory thread ' ' panicked at 'explicit panic', C:\Users\LuminousLizard\.cargo\reg istry\src\github.com-88ac128001ac3a9a\gcc-0.3.19\src\lib.rs:771

D:\Daten\Rust\ftb-rs-master> --LuminousLizard de-native / "en-B2" (talk) 14:38, 28 December 2015 (UTC)


 * The tilesheet program transitively depends on some C/C++ code, which unfortunately means you will need a C/C++ compiler. Since you're doing this on Windows, you have two choices. You can either install a full mingw-w64 installation for x86_64 and make sure it is in your PATH, or you can get the x86_64-pc-windows-msvc version of Rust instead and install VS 2015 Community Edition. 🐇 R e t e p 9 9 8 🐇🐰 Bunny Overlord 🐰 03:29, 29 December 2015 (UTC)


 * Thanks for the help ! MinGw-w64 from this page and "path set" has solved the problem :) ! I'll try it further .... I'll call you when the next problem arises xD. --LuminousLizard de-native / "en-B2" (talk) 10:29, 29 December 2015 (UTC)


 * With "set path" I mean to write them into the system variables. But I have the next problem. After compiling I use the command to update a tilesheet, but the "Tilesheet ABBRV.txt" is not created.

D:\>cd Daten\Rust\ftb-rs-master

D:\Daten\Rust\ftb-rs-master>cargo build Compiling winapi-build v0.1.1 Compiling winapi v0.2.4 Compiling libc v0.1.10 Compiling rustc-serialize v0.3.16 Compiling advapi32-sys v0.1.2 Compiling regex-syntax v0.2.2 Compiling glob v0.2.10 Compiling bitflags v0.3.2 Compiling byteorder v0.3.13 Compiling memchr v0.1.6 Compiling aho-corasick v0.3.4 Compiling regex v0.1.41 Compiling gcc v0.3.19 Compiling rand v0.3.11 Compiling miniz-sys v0.1.6 Compiling num v0.1.27 Compiling flate2 v0.2.9 Compiling enum_primitive v0.0.1 Compiling png v0.3.1 Compiling image v0.4.0 C:\Users\LuminousLizard\.cargo\registry\src\github.com-88ac128001ac3a9a\image-0. 4.0\./src\image.rs:67:13: 67:42 warning: `ImageError::NotEnoughData` does not na me a tuple variant or a tuple struct [E0164] C:\Users\LuminousLizard\.cargo\registry\src\github.com-88ac128001ac3a9a\image-0. 4.0\./src\image.rs:67            ImageError::NotEnoughData(..) => &"Not enough data",

^~ C:\Users\LuminousLizard\.cargo\registry\src\github.com-88ac128001ac3a9a\image-0. 4.0\./src\image.rs:67:13: 67:42 help: run `rustc --explain E0164` to see a detai led explanation C:\Users\LuminousLizard\.cargo\registry\src\github.com-88ac128001ac3a9a\image-0. 4.0\./src\image.rs:67:13: 67:42 note: this warning will become a HARD ERROR in a future release. See RFC 218 for details. C:\Users\LuminousLizard\.cargo\registry\src\github.com-88ac128001ac3a9a\image-0. 4.0\./src\image.rs:67            ImageError::NotEnoughData(..) => &"Not enough data",

^~  Compiling ftb v0.0.1 (file:///D:/Daten/Rust/ftb-rs-master) src\main.rs:3:37: 3:42 warning: this feature is stable. attribute no longer need ed, #[warn(stable_features)] on by default src\main.rs:3 #![feature(fs_walk, slice_patterns, drain)] ^~ src\main.rs:14:27: 14:35 warning: use of deprecated item: superceded by the walk dir crate, #[warn(deprecated)] on by default src\main.rs:14 use std::fs::{File, copy, walk_dir}; ^~ src\tilesheets.rs:8:21: 8:29 warning: use of deprecated item: superceded by the walkdir crate, #[warn(deprecated)] on by default src\tilesheets.rs:8 use std::fs::{File, walk_dir}; ^~ src\tilesheets.rs:78:22: 78:30 warning: use of deprecated item: superceded by th e walkdir crate, #[warn(deprecated)] on by default src\tilesheets.rs:78        for entry in walk_dir(&path).unwrap { ^~ src\tilesheets.rs:98:33: 98:41 warning: use of deprecated item: superceded by th e walkdir crate, #[warn(deprecated)] on by default src\tilesheets.rs:98        let names: HashSet<_> = walk_dir(&path).unwrap.fi lter_map(|entry| {                                                     ^~ src\main.rs:124:18: 124:26 warning: use of deprecated item: superceded by the wa lkdir crate, #[warn(deprecated)] on by default src\main.rs:124     for entry in walk_dir(&path).unwrap {                                 ^~

D:\Daten\Rust\ftb-rs-master>cargo run --release -- import PR  Compiling winapi v0.2.4 Compiling libc v0.1.10 Compiling regex-syntax v0.2.2 Compiling rustc-serialize v0.3.16 Compiling glob v0.2.10 Compiling memchr v0.1.6 Compiling aho-corasick v0.3.4 Compiling bitflags v0.3.2 Compiling byteorder v0.3.13 Compiling winapi-build v0.1.1 Compiling regex v0.1.41 Compiling advapi32-sys v0.1.2 Compiling gcc v0.3.19 Compiling rand v0.3.11 Compiling num v0.1.27 Compiling miniz-sys v0.1.6 Compiling enum_primitive v0.0.1 Compiling flate2 v0.2.9 Compiling png v0.3.1 Compiling image v0.4.0 C:\Users\LuminousLizard\.cargo\registry\src\github.com-88ac128001ac3a9a\image-0. 4.0\./src\image.rs:67:13: 67:42 warning: `ImageError::NotEnoughData` does not na me a tuple variant or a tuple struct [E0164] C:\Users\LuminousLizard\.cargo\registry\src\github.com-88ac128001ac3a9a\image-0. 4.0\./src\image.rs:67            ImageError::NotEnoughData(..) => &"Not enough data",

^~ C:\Users\LuminousLizard\.cargo\registry\src\github.com-88ac128001ac3a9a\image-0. 4.0\./src\image.rs:67:13: 67:42 help: run `rustc --explain E0164` to see a detai led explanation C:\Users\LuminousLizard\.cargo\registry\src\github.com-88ac128001ac3a9a\image-0. 4.0\./src\image.rs:67:13: 67:42 note: this warning will become a HARD ERROR in a future release. See RFC 218 for details. C:\Users\LuminousLizard\.cargo\registry\src\github.com-88ac128001ac3a9a\image-0. 4.0\./src\image.rs:67            ImageError::NotEnoughData(..) => &"Not enough data",

^~  Compiling ftb v0.0.1 (file:///D:/Daten/Rust/ftb-rs-master) src\main.rs:3:37: 3:42 warning: this feature is stable. attribute no longer need ed, #[warn(stable_features)] on by default src\main.rs:3 #![feature(fs_walk, slice_patterns, drain)] ^~ src\main.rs:14:27: 14:35 warning: use of deprecated item: superceded by the walk dir crate, #[warn(deprecated)] on by default src\main.rs:14 use std::fs::{File, copy, walk_dir}; ^~ src\tilesheets.rs:8:21: 8:29 warning: use of deprecated item: superceded by the walkdir crate, #[warn(deprecated)] on by default src\tilesheets.rs:8 use std::fs::{File, walk_dir}; ^~ src\tilesheets.rs:78:22: 78:30 warning: use of deprecated item: superceded by th e walkdir crate, #[warn(deprecated)] on by default src\tilesheets.rs:78        for entry in walk_dir(&path).unwrap { ^~ src\tilesheets.rs:98:33: 98:41 warning: use of deprecated item: superceded by th e walkdir crate, #[warn(deprecated)] on by default src\tilesheets.rs:98        let names: HashSet<_> = walk_dir(&path).unwrap.fi lter_map(|entry| {                                                     ^~ src\main.rs:124:18: 124:26 warning: use of deprecated item: superceded by the wa lkdir crate, #[warn(deprecated)] on by default src\main.rs:124     for entry in walk_dir(&path).unwrap {                                 ^~     Running `target\release\ftb.exe import PR`

D:\Daten\Rust\ftb-rs-master>cargo run --release -- import PR    Running `target\release\ftb.exe import PR`

D:\Daten\Rust\ftb-rs-master>

In the "\ftb-rs-master\work\tilesheets" folder I have: But how has the record in the text file look like ? As some spaces are included along with tabs. I have deleted the spaces but does not work too. I have saved with UTF-8 without BOM. My txt file looks like:
 * 1) the "PR" folder with all icons from NEI
 * 2) the downloaded 16px tilesheet of PR
 * 3) the downloaded 32px tilesheet of PR
 * 4) the imports.txt out of Special:TileList

#	Item name	Mod name	X position	Y position	Registered sizes Edit	5796	Draw Plate	PR	0	0	16px, 32px Edit	5797	Wire Debugger	PR	1	0	16px, 32px Edit	5798	Data Card	PR	2	0	16px, 32px Edit	5799	Wool Gin	PR	3	0	16px, 32px Edit	5800	Screwdriver	PR	4	0	16px, 32px --LuminousLizard de-native / "en-B2" (talk) 12:18, 29 December 2015 (UTC)


 * When using the import feature, do not add the header row, so just delete that first line and everything should work. The code is capable of handling all whitespace equally well so mixed spaces and tabs shouldn't be a problem. I'd really recommend to avoid deleting and recreating the tilesheet if possible. Just because Xbony2 recreates tilesheets, doesn't mean you should do that too. 🐇 R e t e p 9 9 8 🐇🐰 Bunny Overlord 🐰 15:33, 29 December 2015 (UTC)


 * I use "rust-nightly-x86_64-pc-windows-gnu" (Nightly (1.7)). I will try it with the msvc version. --LuminousLizard de-native / "en-B2" (talk) 12:51, 29 December 2015 (UTC)


 * Creating a new tilesheet (for Project Red) works without any problem. The txt-files and tilesheets are getting produced. But the updating of the tilesheet doesn't works. I thinks it is a problem with the "imports.txt". --LuminousLizard de-native / "en-B2" (talk) 13:21, 29 December 2015 (UTC)


 * Adding on to an existing tilesheet has always been shit for me, I usually just delete + replace a tilesheet. Btw, you should register a bot account for importing the tilesheet onto the actual wiki, since it disrupts the RC largely. -Xbony2 (talk) 13:41, 29 December 2015 (UTC)


 * I can also replace the complete tilesheet, if that's allowed. But since all the entries of the items need to be changed, as I've seen on the created tilesheet. That with the bot would been my last question ^^. As I said, I'm not a programmer and don't know how the bots work. --LuminousLizard de-native / "en-B2" (talk) 13:52, 29 December 2015 (UTC)


 * It doesn't really need to be a bot, just a secondary account marked as a bot. To delete a tilesheet, you just need to go to Special:CreateTileSheet, put in the first two parameters, leave the third empty, and click the "Overwrite existing" button. -Xbony2 (talk) 14:00, 29 December 2015 (UTC)

Cmd with admin rights and no txt-file is created. Microsoft Windows [Version 6.1.7601] Copyright (c) 2009 Microsoft Corporation. Alle Rechte vorbehalten.

C:\Windows\system32>cd..

C:\Windows>cd..

C:\>D:

D:\>cd Daten\Rust\ftb-rs-master

D:\Daten\Rust\ftb-rs-master>cargo run --release --verbose -- import PR      Fresh winapi v0.2.4 Fresh bitflags v0.3.2 Fresh winapi-build v0.1.1 Fresh byteorder v0.3.13 Fresh rustc-serialize v0.3.16 Fresh regex-syntax v0.2.2 Fresh glob v0.2.10 Fresh libc v0.1.10 Fresh memchr v0.1.6 Fresh advapi32-sys v0.1.2 Fresh aho-corasick v0.3.4 Fresh rand v0.3.11 Fresh gcc v0.3.19 Fresh regex v0.1.41 Fresh num v0.1.27 Fresh enum_primitive v0.0.1 Fresh miniz-sys v0.1.6 Fresh flate2 v0.2.9 Fresh png v0.3.1 Fresh image v0.4.0 Fresh ftb v0.0.1 (file:///D:/Daten/Rust/ftb-rs-master) Running `target\release\ftb.exe import PR`

D:\Daten\Rust\ftb-rs-master> --LuminousLizard de-native / "en-B2" (talk) 16:33, 29 December 2015 (UTC)


 * Problem solved ! "Import.txt" and not "Imports.txt" -.-' ! --LuminousLizard de-native / "en-B2" (talk) 12:14, 30 December 2015 (UTC)

Linux

 * Other problem with linux :/ ! Both when compiling everything again, and if I use Windows created ... the same error !

[luminouslizard@LuminousLizard FTB Tilesheet programm]$ sudo cargo build [sudo] Passwort für luminouslizard: Compiling regex-syntax v0.2.2 Compiling bitflags v0.3.2 Compiling byteorder v0.3.13 Compiling gcc v0.3.19 Compiling glob v0.2.10 Compiling winapi-build v0.1.1 Compiling libc v0.1.10 Compiling memchr v0.1.6 Compiling rustc-serialize v0.3.16 Compiling miniz-sys v0.1.6 Compiling aho-corasick v0.3.4 Compiling flate2 v0.2.9 Compiling winapi v0.2.4 Compiling advapi32-sys v0.1.2 Compiling rand v0.3.11 Compiling regex v0.1.41 Compiling num v0.1.27 Compiling enum_primitive v0.0.1 Compiling png v0.3.1 Compiling image v0.4.0 Compiling ftb v0.0.1 (file:///home/luminouslizard/Desktop/FTB%20Tilesheet%20programm) src/main.rs:3:1: 3:44 error: #[feature] may not be used on the stable release channel src/main.rs:3 #![feature(fs_walk, slice_patterns, drain)] ^ error: aborting due to previous error Could not compile `ftb`.

To learn more, run the command again with --verbose. [luminouslizard@LuminousLizard FTB Tilesheet programm]$ --LuminousLizard de-native / "en-B2" (talk) 00:01, 30 December 2015 (UTC)


 * Look at the error message "#[feature] may not be used on the stable release channel". You need to have the nightly installed, there's a flag you have to pass to rustup in order to install a nightly instead of a stable. 🐇 R e t e p 9 9 8 🐇🐰 Bunny Overlord 🐰 08:03, 30 December 2015 (UTC)


 * Sorry ... I have used the wrong link. I have it now uninstalled and the nightly installed. Compiling without errors, Creating a tilesheet without errors and all files are created ... but updating a tilesheet stops at the same part after 1 sec (like in Windows) and no file is created :/ ! Without "sudo" I have permission denied. At least I can create missing tilesheets and insert them into the wiki. So I can take some work off.

[luminouslizard@LuminousLizard ftb-rs]$ sudo cargo run --release --verbose -- import PR [sudo] Passwort für luminouslizard: Fresh byteorder v0.3.13 Fresh regex-syntax v0.2.2 Fresh libc v0.1.10 Fresh gcc v0.3.19 Fresh bitflags v0.3.2 Fresh glob v0.2.10 Fresh memchr v0.1.6 Fresh rustc-serialize v0.3.16 Fresh winapi-build v0.1.1 Fresh aho-corasick v0.3.4 Fresh winapi v0.2.4 Fresh regex v0.1.41 Fresh miniz-sys v0.1.6 Fresh flate2 v0.2.9 Fresh advapi32-sys v0.1.2 Fresh rand v0.3.11 Fresh num v0.1.27 Fresh png v0.3.1 Fresh enum_primitive v0.0.1 Fresh image v0.4.0 Fresh ftb v0.0.1 (file:///home/luminouslizard/Desktop/FTB/ftb-rs) Running `target/release/ftb import PR` [luminouslizard@LuminousLizard ftb-rs]$ --LuminousLizard de-native / "en-B2" (talk) 10:33, 30 December 2015 (UTC)


 * Problem solved ! "Import.txt" and not "Imports.txt" -.-' ! --LuminousLizard de-native / "en-B2" (talk) 12:14, 30 December 2015 (UTC)


 * Hmm, does it really need sudo access though? I've never needed it on OS X, which is unix-based. -Xbony2 (talk) 12:58, 30 December 2015 (UTC)