# [Help] How to compile a CIA from Github

Discussion in '3DS - Homebrew Development and Emulators' started by spkuja, Jun 16, 2017.

# [Help] How to compile a CIA from Github

591 Views
1. ### spkujaGBAtemp Regular

Member
May 7, 2007
As the title says.

How would I compile the CIA file from a github?

I know I need to use "make" but I cannot for the life of me find how to install this on Windows 10....

Any help would be greatly appreciated!

2. ### Somebody Whoisboredit's all okeydokey

Member
May 12, 2016
hypeland
Simply install devkitPro. It comes with make and everything needed to build 3DS homebrew. Make sure to enable devkitARM in the installation if it isn't already.

3. ### spkujaGBAtemp Regular

Member
May 7, 2007
I've tried that already. When I run: make "Path\to\file\Makefile"

I get: make: Nothing to be done for 'Path\to\file\'.

Any clues?

4. ### Tenshi_OkamiGBAtemp Maniac

Member
Nov 3, 2015
What do you want to be compiled? I'll compile it for you :3

5. ### Somebody Whoisboredit's all okeydokey

Member
May 12, 2016
hypeland
Try running make within the directory by either cd'ing to it or hold shift-right click in the folder and selecting Run command window here. Then just run "make"

6. ### spkujaGBAtemp Regular

Member
May 7, 2007
Thank you for the offer, but I need to work this out for myself

I think that worked but it didn't output a CIA. Do I need to run Buildtools separately?

7. ### Tenshi_OkamiGBAtemp Maniac

Member
Nov 3, 2015
Well, what's the GitHub? Probably needs some stuff installed rather than just DevkitPro

8. ### Somebody Whoisboredit's all okeydokey

Member
May 12, 2016
hypeland
If it outputted a 3dsx and smdh, then it probably had all the dependencies.

9. ### Somebody Whoisboredit's all okeydokey

Member
May 12, 2016
hypeland
Most likely. What files did it output?

10. ### spkujaGBAtemp Regular

Member
May 7, 2007
I think I know the issue. It's throwing an error:

Code:
source/ui/section/types.h:44:2: error: expected '}' before numeric constant
source/ui/section/types.h:44:2: error: expected unqualified-id before numeric constant
In file included from source/ui/section/lib.h:38:0,
from source/ui/section/utils.cpp:19:
source/ui/section/types.h:48:1: error: expected declaration before '}' token
} endianness_flag;
The file that's throwing the error has this code in it:

Code:
/**

This file is part of make_cdn_cia.

make_cdn_cia is free software: you can redistribute it and/or modify
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.

make_cdn_cia is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with make_cdn_cia.  If not, see <http://www.gnu.org/licenses/>.
**/
#include <stdlib.h>
#include <stdint.h>
//Bools
typedef enum
{
False,
True
} _boolean;

typedef enum
{
Good,
Fail
} return_basic;

typedef enum
{
ARGC_FAIL = 1,
ARGV_FAIL,
IO_FAIL,
FILE_PROCESS_FAIL
} errors;

typedef enum
{
BIG_ENDIAN = 0,
LITTLE_ENDIAN = 1,
BE = 0,
LE = 1
} endianness_flag;
I won't lie, I know nothing about the above code so I don't know how to fix it

11. ### Somebody Whoisboredit's all okeydokey

Member
May 12, 2016
hypeland
I'm not much of a C++ coder myself. So your guess is as good as mine. Check if the project has any specific ways of building it, or if it is just make.

12. ### spkujaGBAtemp Regular

Member
May 7, 2007
I think it is something to do with the types.h file, which I quoted above.

It's kicking out an error that I don't understand.

Last edited by spkuja, Jun 16, 2017