Source code issues

Discussion in '3DS - Homebrew Development and Emulators' started by UsujioTarako, Sep 4, 2015.

  1. UsujioTarako
    OP

    UsujioTarako Member

    Newcomer
    24
    3
    Sep 4, 2015
    So i've recently been getting into the whole Homebrew thing and started to learn to compile source code for apps like Portal3DS and Ironhax but when I do so i'm running into problems and then the Compilations Terminate heres the following that I get when trying to Compile Ironhax

    Code:
    Jaydons-iMac:~ jaydonrobinson$ git clone https://github.com/smealum/sploit_installer.git
    fatal: destination path 'sploit_installer' already exists and is not an empty directory.
    Jaydons-iMac:~ jaydonrobinson$ cd sploit_installer
    Jaydons-iMac:sploit_installer jaydonrobinson$ make
    filesystem.c
    arm-none-eabi-gcc -MMD -MP -MF /Users/jaydonrobinson/sploit_installer/build/filesystem.d -g -Wall -O2 -mword-relocations -fomit-frame-pointer -ffast-math -march=armv6k -mtune=mpcore -mfloat-abi=hard -I/Users/jaydonrobinson/sploit_installer/include -I/opt/devkitpro/libctru/include -I/Users/jaydonrobinson/sploit_installer/build -DARM11 -D_3DS -c /Users/jaydonrobinson/sploit_installer/source/filesystem.c -o filesystem.o
    /Users/jaydonrobinson/sploit_installer/source/filesystem.c:4:17: fatal error: 3ds.h: No such file or directory
    #include <3ds.h>
                     ^
    compilation terminated.
    make[1]: *** [filesystem.o] Error 1
    make: *** [build] Error 2
    Jaydons-iMac:sploit_installer jaydonrobinson$
    What am i doing wrong?
     
  2. Justin20020

    Justin20020 GBAtemp Advanced Fan

    Member
    515
    92
    Jun 22, 2015
    Gambia, The
    3ds.h is missing. Thats why it wont work
     
  3. UsujioTarako
    OP

    UsujioTarako Member

    Newcomer
    24
    3
    Sep 4, 2015
    3ds.h isn't anywhere on the source code on github or in the clone yet other people don't seem to have any issue creating the 3dsx files
     
  4. tj_cool

    tj_cool Site dev

    Supervisor
    9,989
    -1
    Jan 7, 2009
    Belgium
    This planet
    3ds.h is part of ctrulib. Can you see the file in the ctrulib folder (/opt/devkitpro/libctru/include)?
     
    Evernew likes this.
  5. UsujioTarako
    OP

    UsujioTarako Member

    Newcomer
    24
    3
    Sep 4, 2015
    I will check when I get home but I'm sure i installed ctrulib do i need to add it to the devkitpro folder without ctrulib/libctru? also do you know how i add the export to my environment variables in Yosemite?
     
  6. tj_cool

    tj_cool Site dev

    Supervisor
    9,989
    -1
    Jan 7, 2009
    Belgium
    This planet
    The libctru folder should be directly in the devkitpro directory (so in your case: /opt/devkitpro/libctru)
    However, you should not copy the libctru folder from github directly. Instead, go to that libctru folder and do make and make install
    That will compile ctrulib and set it up automatically.

    As for environment variables, as long as you added the export lines to your ~/.bash_profile or ~/.bashrc it should be ok.
     
  7. UsujioTarako
    OP

    UsujioTarako Member

    Newcomer
    24
    3
    Sep 4, 2015
    hm ok i see right when I do the Make Make install i get an error back, I'll post the error when i get back
     
  8. UsujioTarako
    OP

    UsujioTarako Member

    Newcomer
    24
    3
    Sep 4, 2015
    all right this is what i get
    Code:
    Jaydons-iMac:~ jaydonrobinson$ cd ctrulib/libctru
    Jaydons-iMac:libctru jaydonrobinson$ make
    sdmc_dev.c
    arm-none-eabi-gcc -MMD -MP -MF /Users/jaydonrobinson/ctrulib/libctru/build/sdmc_dev.d -g -Wall -O2 -mword-relocations -fno-strict-aliasing -fomit-frame-pointer -ffast-math -march=armv6k -mtune=mpcore -mfloat-abi=hard -I/Users/jaydonrobinson/ctrulib/libctru/include  -I/Users/jaydonrobinson/ctrulib/libctru/build -DARM11 -D_3DS -c /Users/jaydonrobinson/ctrulib/libctru/source/sdmc_dev.c -o sdmc_dev.o
    /Users/jaydonrobinson/ctrulib/libctru/source/sdmc_dev.c:95:3: error: unknown field 'rmdir_r' specified in initializer
       .rmdir_r      = sdmc_rmdir,
       ^
    /Users/jaydonrobinson/ctrulib/libctru/source/sdmc_dev.c:95:3: warning: excess elements in struct initializer
    /Users/jaydonrobinson/ctrulib/libctru/source/sdmc_dev.c:95:3: warning: (near initialization for 'sdmc_devoptab')
    make[1]: *** [sdmc_dev.o] Error 1
    make: *** [build] Error 2
    Jaydons-iMac:libctru jaydonrobinson$ make all
    sdmc_dev.c
    arm-none-eabi-gcc -MMD -MP -MF /Users/jaydonrobinson/ctrulib/libctru/build/sdmc_dev.d -g -Wall -O2 -mword-relocations -fno-strict-aliasing -fomit-frame-pointer -ffast-math -march=armv6k -mtune=mpcore -mfloat-abi=hard -I/Users/jaydonrobinson/ctrulib/libctru/include  -I/Users/jaydonrobinson/ctrulib/libctru/build -DARM11 -D_3DS -c /Users/jaydonrobinson/ctrulib/libctru/source/sdmc_dev.c -o sdmc_dev.o
    /Users/jaydonrobinson/ctrulib/libctru/source/sdmc_dev.c:95:3: error: unknown field 'rmdir_r' specified in initializer
       .rmdir_r      = sdmc_rmdir,
       ^
    /Users/jaydonrobinson/ctrulib/libctru/source/sdmc_dev.c:95:3: warning: excess elements in struct initializer
    /Users/jaydonrobinson/ctrulib/libctru/source/sdmc_dev.c:95:3: warning: (near initialization for 'sdmc_devoptab')
    make[1]: *** [sdmc_dev.o] Error 1
    make: *** [build] Error 2
    Jaydons-iMac:libctru jaydonrobinson$
    — Posts automatically merged - Please don't double post! —

    ops put all instead of install


    Code:
    Jaydons-iMac:libctru jaydonrobinson$ make install
    
    sdmc_dev.c
    
    arm-none-eabi-gcc -MMD -MP -MF /Users/jaydonrobinson/ctrulib/libctru/build/sdmc_dev.d -g -Wall -O2 -mword-relocations -fno-strict-aliasing -fomit-frame-pointer -ffast-math -march=armv6k -mtune=mpcore -mfloat-abi=hard -I/Users/jaydonrobinson/ctrulib/libctru/include  -I/Users/jaydonrobinson/ctrulib/libctru/build -DARM11 -D_3DS -c /Users/jaydonrobinson/ctrulib/libctru/source/sdmc_dev.c -o sdmc_dev.o
    
    /Users/jaydonrobinson/ctrulib/libctru/source/sdmc_dev.c:95:3: error: unknown field 'rmdir_r' specified in initializer
    
      .rmdir_r      = sdmc_rmdir,
    
      ^
    
    /Users/jaydonrobinson/ctrulib/libctru/source/sdmc_dev.c:95:3: warning: excess elements in struct initializer
    
    /Users/jaydonrobinson/ctrulib/libctru/source/sdmc_dev.c:95:3: warning: (near initialization for 'sdmc_devoptab')
    
    make[1]: *** [sdmc_dev.o] Error 1
    
    make: *** [build] Error 2
    
    Jaydons-iMac:libctru jaydonrobinson$
     
  9. tj_cool

    tj_cool Site dev

    Supervisor
    9,989
    -1
    Jan 7, 2009
    Belgium
    This planet
    Is your devkitARM up to date? You may want to try running the devkitARMupdate script again.
    The error suggests it can't find rmdir_r in the struct definition, which is in devkitARM.
     
  10. UsujioTarako
    OP

    UsujioTarako Member

    Newcomer
    24
    3
    Sep 4, 2015
    Oh I didn't know anything about an update thanks for the info hope it works.

    — Posts automatically merged - Please don't double post! —

    TJ I could kiss you right now, but I won't, the update has fixed all my problems thank you so much for your help.