Hello, I came across your project: https://github.com/aculnaig/httpfs/tree/main
Your code interests me for my project GNU-AI: https://gnu-ai.org Before going further, I have a question: is httpfs an HTTP server, or is it a software layer for browsing web pages? If it's a software layer, it would be highly relevant to my project, which is still in development. So far, I have coded a neural network, and I also have a collaborator: https://github.com/gnu-ai The goal is to develop an LLM inside GNU/Hurd itself, and naturally I will need this LLM to be able to access the Internet. I would be grateful if you could tell me more about your project. For my part, I remain available if you have any questions about my own project, or if you would like to join it. Best regards, Claire Ivanenka --- On Fri, 2026-10-02 at 09:40 +0200, Gianluca Cannata wrote: > Hello, > > In a previous email I wrote that I am resuming the work of the httpfs > translator. > > As an exercise, I have started writing the httpfs translator from > scratch. > > You can find the source code here: https://github.com/aculnaig/httpfs > > So far I have started digging into libnetfs and I have got the > following: > > make -j$(nproc) > make all-recursive > make[1]: Entering directory '/home/demo/httpfs' > Making all in src > make[2]: Entering directory '/home/demo/httpfs/src' > gcc -I/usr/include/i386-gnu -isystem /usr/include/mit-krb5 -isystem > /usr/include/mit-krb5 -I/usr/include/p11-kit-1 -std=gnu99 -Wall > -Wextra -g -O0 -o httpfs httpfs-httpfs.o httpfs-netfs.o -lcurl > -lnetfs -lihash > /usr/bin/ld: /usr/lib/gcc/i686-gnu/16/../../../i386-gnu/libnetfs.so: > undefined reference to `netfs_attempt_mkdir' > /usr/bin/ld: /usr/lib/gcc/i686-gnu/16/../../../i386-gnu/libnetfs.so: > undefined reference to `netfs_attempt_chmod' > /usr/bin/ld: /usr/lib/gcc/i686-gnu/16/../../../i386-gnu/libnetfs.so: > undefined reference to `netfs_attempt_rename' > /usr/bin/ld: /usr/lib/gcc/i686-gnu/16/../../../i386-gnu/libnetfs.so: > undefined reference to `netfs_attempt_chauthor' > /usr/bin/ld: /usr/lib/gcc/i686-gnu/16/../../../i386-gnu/libnetfs.so: > undefined reference to `netfs_attempt_chflags' > /usr/bin/ld: /usr/lib/gcc/i686-gnu/16/../../../i386-gnu/libnetfs.so: > undefined reference to `netfs_report_access' > /usr/bin/ld: /usr/lib/gcc/i686-gnu/16/../../../i386-gnu/libnetfs.so: > undefined reference to `netfs_maxsymlinks' > /usr/bin/ld: /usr/lib/gcc/i686-gnu/16/../../../i386-gnu/libnetfs.so: > undefined reference to `netfs_attempt_link' > /usr/bin/ld: /usr/lib/gcc/i686-gnu/16/../../../i386-gnu/libnetfs.so: > undefined reference to `netfs_attempt_create_file' > /usr/bin/ld: /usr/lib/gcc/i686-gnu/16/../../../i386-gnu/libnetfs.so: > undefined reference to `netfs_attempt_statfs' > /usr/bin/ld: /usr/lib/gcc/i686-gnu/16/../../../i386-gnu/libnetfs.so: > undefined reference to `netfs_attempt_mkdev' > /usr/bin/ld: /usr/lib/gcc/i686-gnu/16/../../../i386-gnu/libnetfs.so: > undefined reference to `netfs_attempt_chown' > /usr/bin/ld: /usr/lib/gcc/i686-gnu/16/../../../i386-gnu/libnetfs.so: > undefined reference to `netfs_attempt_mkfile' > /usr/bin/ld: /usr/lib/gcc/i686-gnu/16/../../../i386-gnu/libnetfs.so: > undefined reference to `netfs_attempt_write' > /usr/bin/ld: /usr/lib/gcc/i686-gnu/16/../../../i386-gnu/libnetfs.so: > undefined reference to `netfs_attempt_read' > /usr/bin/ld: /usr/lib/gcc/i686-gnu/16/../../../i386-gnu/libnetfs.so: > undefined reference to `netfs_attempt_syncfs' > /usr/bin/ld: /usr/lib/gcc/i686-gnu/16/../../../i386-gnu/libnetfs.so: > undefined reference to `netfs_attempt_set_size' > /usr/bin/ld: /usr/lib/gcc/i686-gnu/16/../../../i386-gnu/libnetfs.so: > undefined reference to `netfs_attempt_unlink' > collect2: error: ld returned 1 exit status > make[2]: *** [Makefile:367: httpfs] Error 1 > make[2]: Leaving directory '/home/demo/httpfs/src' > make[1]: *** [Makefile:386: all-recursive] Error 1 > make[1]: Leaving directory '/home/demo/httpfs' > make: *** [Makefile:327: all] Error 2 > > My question is: do I really need to implement all these functions ? > There is a nice way to tell the C compiler some functions are not > needed/yet implemented and it can reference a default implementation > ? > > Sincerely, > > Gianluca
