Homebrew [Release] FTP-GMX - Customize Your FTBrony

  • Thread starter Thread starter Vorpal Blade
  • Start date Start date
  • Views Views 44,666
  • Replies Replies 90
  • Likes Likes 24
I posted the latest built here, also cia available: https://gbatemp.net/threads/ftp-server-ftbrony-by-mtheall.375254/page-9#post-6004749

Dunno if it gets more stability, works fine for me under emunand or HBL so far.
Nice flavor, also pretty neat that you can load custom background.bin with the homebrew version. I'll get mine up to speed, for those who prefer the Generic McBrandX theme ;)

Nice! Also, why not send mtheall a pull request on GitHub? I'm pretty sure he will want to keep that annoying (but by now very familiar) my little pony theme, but compiling CIA and 3DS would in fact be very useful. If you don't want to do the PR, maybe you want to show us your modified Makefile?
I don't have a fancy Makefile - I use the default Makefile in ftbrony to get the .elf file; then I proceed by using makerom with it's default make_base to build .cia and .3ds files. I thought about forking it on git; might get on that if it'll increases my efficiency.

It's pretty easy to add .cia and .3ds builds to the makefile (assuming ctrcommon/citrus isn't used where it already does it)...

For example... (this is a little old but you get the point i guess). :)

-snip-
Whoa thanks for this! I'll try it for a spin; this shall make building much much quicker :D

To those having connection issues, try assigning your 3DS a static IP and opening port 5000 on your router. Port forwarding shouldn't be necessary for local network stuff, but some routers are finicky like that. Also make sure that if you're a Windows user with a firewall like ESS that it isn't interfering with the connection.

FTP > SMB

Now if only someone would port SSH to the 3DS so that we could use SCP. :rolleyes:
Fortunately for me I did not have to go through all that finicky stuff to get FTP to work. Worth a shot @HeyItsJono?

An SSH application would be superior concerning connectivity. Though I'm under the impression FTP is faster :huh:
 
You know what would be the best course of action to do, in my opinion?

I say instead of arguing on what kind of interface an FTP client should or should not have Rainbow Dash or Mario characters or Generic McBrandX on it, why doesn't someone try looking into the code of Micro SD Management, aka the one from the new 3DS, and look into enabling FTP in that! That fits better with the rest of the 3DS aesthetic than My Little Brony theme, or literally-nothing-at-all-other-than-words theme.
 
Updated ftp-depony 2.2!

Thanks again @Shadowtrance for that Makefile code, I was able to implement it smoothly with subtle changes.

You know what would be the best course of action to do, in my opinion?

I say instead of arguing on what kind of interface an FTP client should or should not have Rainbow Dash or Mario characters or Generic McBrandX on it, why doesn't someone try looking into the code of Micro SD Management, aka the one from the new 3DS, and look into enabling FTP in that! That fits better with the rest of the 3DS aesthetic than My Little Brony theme, or literally-nothing-at-all-other-than-words theme.
The Micro SD Management uses SMB to network, so you couldn't enable FTP just by looking and changing some of the code. Though on the topic of aesthetics, it would be pretty neat to have SD Management's GUI with ftp code under it. Not sure how to approach a project like this. Also I don't think we are allowed to modify and distribute the SD Management.cia (though that won't stop us from distributing it if we do :rolleyes:)
 
Last edited by Vorpal Blade,
  • Like
Reactions: Shadowtrance
Update: you can create your own custom images and build ftbrony how you want it to be ^_^
Check out my git for further instructions. Hope it's straight forward enough!

@d0k3 I have a fancy makefile now ;)
 
Update: you can create your own custom images and build ftbrony how you want it to be ^_^
Check out my git for further instructions. Hope it's straight forward enough!

@d0k3 I have a fancy makefile now ;)
Nice, I'll use that! You may still want to consider shooting mtheall a pull request.
 
i have a Problem i cant Compile it.
I downloaded devkitProUpdater-1.6.0 installed it on c:\devkitpro and downloaded your project from git and when i enter make it gives me this message. I have devkitARM, libctru, libsf2d installed.
Have Windows 10 x64
Error:
C:\devkitPro\FTP-GMX-master>make
make[1]: Entering directory `/c/devkitPro/FTP-GMX-master'
app_banner.png
app_bottom.png
app_icon.png
console.c
arm-none-eabi-gcc -MMD -MP -MF /c/devkitPro/FTP-GMX-master/build/console.d -g -Wall -O3 -mword-relocations -march=armv6k -mtune=mpcore -mfloat-abi=hard -DSTATUS_STRING="\"FTP-GMX v2.2\"" -I/c/devkitPro/FTP-GMX-master/include -I/c/devkitPro/libctru/include -I/c/devkitPro/portlibs/armv6k/include -I/c/devkitPro/portlibs/3ds/include -I/c/devkitPro/FTP-GMX-master/build -DARM11 -D_3DS -c /c/devkitPro/FTP-GMX-master/source/console.c -o console.o
ftp.c
arm-none-eabi-gcc -MMD -MP -MF /c/devkitPro/FTP-GMX-master/build/ftp.d -g -Wall -O3 -mword-relocations -march=armv6k -mtune=mpcore -mfloat-abi=hard -DSTATUS_STRING="\"FTP-GMX v2.2\"" -I/c/devkitPro/FTP-GMX-master/include -I/c/devkitPro/libctru/include -I/c/devkitPro/portlibs/armv6k/include -I/c/devkitPro/portlibs/3ds/include -I/c/devkitPro/FTP-GMX-master/build -DARM11 -D_3DS -c /c/devkitPro/FTP-GMX-master/source/ftp.c -o ftp.o
c:/devkitPro/FTP-GMX-master/source/ftp.c: In function 'ftp_session_new':
c:/devkitPro/FTP-GMX-master/source/ftp.c:886:27: error: 'NI_MAXHOST' undeclared (first use in this function)
char host[NI_MAXHOST+1];
^
c:/devkitPro/FTP-GMX-master/source/ftp.c:886:27: note: each undeclared identifier is reported only once for each function it appears in
c:/devkitPro/FTP-GMX-master/source/ftp.c:887:27: error: 'NI_MAXSERV' undeclared (first use in this function)
char serv[NI_MAXSERV+1];
^
c:/devkitPro/FTP-GMX-master/source/ftp.c:901:8: warning: implicit declaration of function 'getnameinfo' [-Wimplicit-function-declaration]
rc = getnameinfo((struct sockaddr*)&addr, addrlen,
^
c:/devkitPro/FTP-GMX-master/source/ftp.c:887:22: warning: unused variable 'serv' [-Wunused-variable]
char serv[NI_MAXSERV+1];
^
c:/devkitPro/FTP-GMX-master/source/ftp.c:886:22: warning: unused variable 'host' [-Wunused-variable]
char host[NI_MAXHOST+1];
^
c:/devkitPro/FTP-GMX-master/source/ftp.c: In function 'list_transfer':
c:/devkitPro/FTP-GMX-master/source/ftp.c:1837:7: error: unknown type name 'sdmc_dir_t'
sdmc_dir_t *dir = (sdmc_dir_t*)session->dp->dirData->dirStruct;
^
c:/devkitPro/FTP-GMX-master/source/ftp.c:1837:26: error: 'sdmc_dir_t' undeclared (first use in this function)
sdmc_dir_t *dir = (sdmc_dir_t*)session->dp->dirData->dirStruct;
^
c:/devkitPro/FTP-GMX-master/source/ftp.c:1837:37: error: expected expression before ')' token
sdmc_dir_t *dir = (sdmc_dir_t*)session->dp->dirData->dirStruct;
^
c:/devkitPro/FTP-GMX-master/source/ftp.c:1839:13: error: request for member 'entry_data' in something not a structure or union
if(dir->entry_data.attributes & FS_ATTRIBUTE_DIRECTORY)
^
c:/devkitPro/FTP-GMX-master/source/ftp.c:1844:23: error: request for member 'entry_data' in something not a structure or union
st.st_size = dir->entry_data.fileSize;
^
make[2]: *** [ftp.o] Error 1
make[1]: *** [build] Error 2
make[1]: Leaving directory `/c/devkitPro/FTP-GMX-master'
make: *** [all] Error 2

C:\devkitPro\FTP-GMX-master>
 
i have a Problem i cant Compile it.
I downloaded devkitProUpdater-1.6.0 installed it on c:\devkitpro and downloaded your project from git and when i enter make it gives me this message. I have devkitARM, libctru, libsf2d installed.
Have Windows 10 x64
Error: -snip-
devKitProUpdater might not have the latest ctrulib. Here's a direct link to smea's ctrulib: LINK

1) Extract
2) Left_Shift+Right_Click the libctru folder and click Open command window here
3) In command prompt type make all
Your libraries should be updated now.

4) Try compiling FTP-GMX again: opening a command prompt in master and type make clean to be safe
5) type make

Nice, I'll use that! You may still want to consider shooting mtheall a pull request.
I'll consider it, though I had to uncommit the latest ftbrony merge because I could not compile it with my libraries :unsure:. If I get more into sync with the current ftbrony, I may give it a shot.
 
  • Like
Reactions: hiten and Nikolay
Same error here, and I had updated ctrulib like you said
Looking at the first few errors for @ladygugu, there are problems with:
Code:
NI_MAXHOST
NI_MAXSERV
If you go into -whereyouinstalledevkit-/devKitPro/libctru/include you should see a file called "netdb.h" where both of these variables are defined.
Code:
LINE 30: #DEFINE NI_MAXHOST 1025
LINE 31: #DEFINE NI_MAXSERV 32
If you don't see those values defined, I'm pretty sure you do not have an update ctrulib. The other errors appear to be connected to an un-updated ctrulib.

I don't want to assume it's windows 10 fault :wink: though personally I used windows 8.1

EDIT: also @Argentlan, make sure you have sf2dlib, since this program uses those libraries to render images.
 
Last edited by Vorpal Blade,
Looking at the first few errors for @ladygugu, there are problems with:
Code:
NI_MAXHOST
NI_MAXSERV
If you go into -whereyouinstalledevkit-/devKitPro/libctru/include you should see a file called "netdb.h" where both of these variables are defined.
Code:
LINE 30: #DEFINE NI_MAXHOST 1025
LINE 31: #DEFINE NI_MAXSERV 32
If you don't see those values defined, I'm pretty sure you do not have an update ctrulib. The other errors appear to be connected to an un-updated ctrulib.

I don't want to assume it's windows 10 fault :wink: though personally I used windows 8.1

EDIT: also @Argentlan, make sure you have sf2dlib, since this program uses those libraries to render images.

devKitProUpdater might not have the latest ctrulib. Here's a direct link to smea's ctrulib: LINK

1) Extract
2) Left_Shift+Right_Click the libctru folder and click Open command window here
3) In command prompt type make all
Your libraries should be updated now.

4) Try compiling FTP-GMX again: opening a command prompt in master and type make clean to be safe
5) type make


I'll consider it, though I had to uncommit the latest ftbrony merge because I could not compile it with my libraries :unsure:. If I get more into sync with the current ftbrony, I may give it a shot.

Ok Thank you @Vorpal Blade fixed it for me. Updated ctrulib from your link and now it worked:)
but now the ld.exe gives me error at linking FTP-GMX-2.2.elf :unsure:

arm-none-eabi-gcc -MMD -MP -MF /c/devkitPro/FTP-GMX-master/build/main.d -g -Wall -O3 -mword-relocations -march=armv6k -mtune=mpcore -mfloat-abi=hard -DSTATUS_STRING="\"FTP-GMX v2.2\"" -I/c/devkitPro/FTP-GMX-master/include -I/c/devkitPro/libctru/include -I/c/devkitPro/portlibs/armv6k/include -I/c/devkitPro/portlibs/3ds/include -I/c/devkitPro/FTP-GMX-master/build -DARM11 -D_3DS -c /c/devkitPro/FTP-GMX-master/source/main.c -o main.o
linking FTP-GMX-2.2.elf
c:/devkitpro/devkitarm/bin/../lib/gcc/arm-none-eabi/5.3.0/../../../../arm-none-eabi/bin/ld.exe: cannot find -lsfil
c:/devkitpro/devkitarm/bin/../lib/gcc/arm-none-eabi/5.3.0/../../../../arm-none-eabi/bin/ld.exe: cannot find -lpng
c:/devkitpro/devkitarm/bin/../lib/gcc/arm-none-eabi/5.3.0/../../../../arm-none-eabi/bin/ld.exe: cannot find -ljpeg
c:/devkitpro/devkitarm/bin/../lib/gcc/arm-none-eabi/5.3.0/../../../../arm-none-eabi/bin/ld.exe: cannot find -lz
collect2.exe: error: ld returned 1 exit status
make[2]: *** [/c/devkitPro/FTP-GMX-master/FTP-GMX-2.2.elf] Error 1
make[1]: *** [build] Error 2
make[1]: Leaving directory `/c/devkitPro/FTP-GMX-master'
make: *** [all] Error 2

C:\devkitPro\FTP-GMX-master>
 
Ok Thank you @Vorpal Blade fixed it for me. Updated ctrulib from your link and now it worked:)
but now the ld.exe gives me error at linking FTP-GMX-2.2.elf :unsure:

-snip-

I may need to specify the readme, those errors might be connected to yet another library :O

1) Download and extract xerpi's portlibs
2) Open command window in the master folder and run this command
Code:
make all

Hopefully that'll fix her ;)
 
wtf is this thread ?
just a thing to download an "unmodified" app, just for his icon/banner ?
so stupid.
 
wtf is this thread ?
just a thing to download an "unmodified" app, just for his icon/banner ?
so stupid.
This thread is for customizing your own FTP application. I can see your anger though, this thread is dragging out. I'm just happily troubleshooting right now, but I'll dismiss myself since it's probably annoying to you and others too :wink:
 
I may need to specify the readme, those errors might be connected to yet another library :O

1) Download and extract xerpi's portlibs
2) Open command window in the master folder and run this command
Code:
make all

Hopefully that'll fix her ;)

Ok compiled portlibs but still one missing

arm-none-eabi/bin/ld.exe: cannot find -lsfil
what part of lib is this in?

Or send me the compiled lib for lsfil would be nice from you ;)
 
Hello, I have downloaded version of the linker .3DS unfortunately the application is not running.

Code:
FTP-GMX V2.2
Waiting for wifi...

I see the 3DS look light but turns WIFI for nothing

Gateway Ultra v3.7.1 - OLD 3DS XL.
 

Site & Scene News

Popular threads in this forum