# Build Before build and launch client, we need build godot-cpp (lib to connect c++ code to godot engine) and build crypt (c++ module use to authentification with khaganat) ## Build godot-cpp ### Initialize Load git submodule (godot-cpp & godot_header) ``` git submodule update --init --recursive ``` ### Build on 64bits ``` godot --gdnative-generate-json-api godot-cpp/godot_headers/api.json scons -C godot-cpp platform=linux generate_bindings=yes custom_api_file=godot_headers/api.json bits=64 ``` ### Build on 32bits ``` godot --gdnative-generate-json-api godot-cpp/godot_headers/api.json scons -C godot-cpp platform=linux generate_bindings=yes custom_api_file=godot_headers/api.json bits=32 ``` ## Build gdnative (crypt / bitstream / bitset) ### Build on 64bits ``` scons -C gdnative platform=linux bits=64 target=debug scons -C gdnative platform=linux bits=64 target=release ``` ### Build on 32bits ``` scons -C gdnative platform=linux bits=32 target=debug scons -C gdnative platform=linux bits=64 target=release ``` ## Package client khaganat ### Configure export Configure on project export (or edit file export_presets.cfg) Ex.: export_presets.cfg ``` [preset.0] name="khaganat.linux.64" platform="Linux/X11" runnable=true custom_features="" export_filter="all_resources" include_filter="" exclude_filter="" export_path="" patch_list=PoolStringArray( ) script_export_mode=1 script_encryption_key="" [preset.0.options] texture_format/bptc=false texture_format/s3tc=true texture_format/etc=false texture_format/etc2=false texture_format/no_bptc_fallbacks=true binary_format/64_bits=true custom_template/release="" custom_template/debug="" ``` ### Generate package ``` godot --path . --export khaganat.linux.64 khaganat.linux64.bin ``` ## Launch client khaganat ### With godot ``` godot login_scene/login_scene.tsc ```