Blog: NTFS Write Support GSoC - Week 1 Update
Moderator: Moderator Team
-
- Posts: 14
- Joined: Mon Mar 14, 2016 12:23 pm
-
- Posts: 29
- Joined: Tue Sep 23, 2014 5:58 pm
Re: Blog: NTFS Write Support GSoC - Week 1 Update
Sorry, no dice here. Link redirects to an 403 - NOT AUTHORIZED page.
-
- Posts: 14
- Joined: Mon Mar 14, 2016 12:23 pm
Re: Blog: NTFS Write Support GSoC - Week 1 Update
Apologies! It should work now.
-
- Posts: 29
- Joined: Tue Sep 23, 2014 5:58 pm
Re: Blog: NTFS Write Support GSoC - Week 1 Update
Yups it's working.
Re: Blog: NTFS Write Support GSoC - Week 1 Update
This is very exciting! I'm still hyped for NTFS support, this is going to be huge.
Re: Blog: NTFS Write Support GSoC - Week 1 Update
Thanks for the update, Trevor! I'm glad that also you yourself can see the value of your contributions, and got rid of the impostor syndrome
-
- Posts: 4
- Joined: Mon May 30, 2016 3:04 pm
Re: Blog: NTFS Write Support GSoC - Week 1 Update
Hi, coderTrevor. I have almost finished basic read/write NTFS driver for KolibriOS, and since we are also participating in GSoC, I have discovered your project and hastened to fix the NTFS documentation, which I was using. I have updated it with all I have discovered, and I hope it will help you too. Here is the link:
https://github.com/flatcap/ntfs-docs
P.S. I can try to answer your questions, if they will appear.
https://github.com/flatcap/ntfs-docs
P.S. I can try to answer your questions, if they will appear.
Re: Blog: NTFS Write Support GSoC - Week 1 Update
Monday, Monday. You're not a US student I take it then?
-
- Posts: 14
- Joined: Mon Mar 14, 2016 12:23 pm
Re: Blog: NTFS Write Support GSoC - Week 1 Update
Hi everyone, thanks for the encouragement!
Pathoswithin - Thank you so much for doing that and for reaching out to me! Documentation for NTFS is super-precious! NTFS is not known for it's simplicity either, so congrats on even a basic read/write implementation, especially one written in assembly!! We should definitely stay in touch. Do you have a blog where I can follow your progress?
Z98 - "Monday." Oops. For one thing, I started drafting that before yesterday, hence why I said Monday instead of tomorrow. The other thing, that you're probably referring to, is that today is Memorial day and my college is closed. I forgot the one holiday that references memory in its name.
I can now get React to build with MSVC, but I have no idea what changed though
EDIT: Actually, I'm pretty sure I do know what I changed! You have to launch the command prompt called "Developer Command Prompt for VS201X," not one of the ten or so other command prompts. (I think I was either running the MSBuild or x86 native tools prompts before)
ThFabba told me exactly the commands I needed to run to build with MSVC:
Pathoswithin - Thank you so much for doing that and for reaching out to me! Documentation for NTFS is super-precious! NTFS is not known for it's simplicity either, so congrats on even a basic read/write implementation, especially one written in assembly!! We should definitely stay in touch. Do you have a blog where I can follow your progress?
Z98 - "Monday." Oops. For one thing, I started drafting that before yesterday, hence why I said Monday instead of tomorrow. The other thing, that you're probably referring to, is that today is Memorial day and my college is closed. I forgot the one holiday that references memory in its name.
I can now get React to build with MSVC, but I have no idea what changed though
EDIT: Actually, I'm pretty sure I do know what I changed! You have to launch the command prompt called "Developer Command Prompt for VS201X," not one of the ten or so other command prompts. (I think I was either running the MSBuild or x86 native tools prompts before)
ThFabba told me exactly the commands I needed to run to build with MSVC:
- Open Developer Command Prompt for VS2015
- set path=%path%;c:\program files\rosbe\bin
- mkdir my-ros-output-dir && cd my-ros-output-dir
- my-ros-source-dir\configure RTC
- ninja bootcd
-
- Posts: 4
- Joined: Mon May 30, 2016 3:04 pm
Re: Blog: NTFS Write Support GSoC - Week 1 Update
Follow my progress? You can certainly find me at board.kolibrios.org, but I think I will watch this forum too. Currently, I will fixing our EXT driver, and return to NTFS later. As you are, I was starting with existing reading. I have used maximum from it, and now have some problems with directory's B+ tree. Windows driver wants it to be symmetric (root grow only) and without empty nodes. Since there are no pointers to parent node, perfect driver should be based on recursive node reading (not cycle), been able to return to previous node.
-
- Posts: 14
- Joined: Mon Mar 14, 2016 12:23 pm
Re: Blog: NTFS Write Support GSoC - Week 1 Update
Regarding MSVC building problems:
Fortunately, I now understand the problems I was seeing with MSVC builds, although I'm a little embarrassed to learn that I was the cause.
My previous theory was that I was launching the wrong command prompt to start the build process. This proved incorrect. Launching an MSBuild prompt results in an immediate error:
Error: Unable to detect build environment. Configure script failure.
and not the problems I was seeing before. Other command prompts, like x86 native tools, actually worked OK once I knew what the issue was.
The issue is that running "configure" and "configure VSSolution" are mutually exclusive operations. If you run one command for a given output folder, you can't run the other or it will screw up ninja (I'm not sure if it also screws up the solution files or not). Also, I would generally run configure directly from the reactos folder, and in both cases, the output folder that configure.cmd generates is the same.
This is how I had some intermittent success early on, by following advice on IRC and deleting that folder. However, it would always just be a matter of time before I wanted to generate the VS solutions to navigate the code. Having no idea these solutions couldn't live in the same folder, I always put them there. Well, configure.cmd put them there, I just let it do it's thing.
Also, the errors aren't consistent. If you run "configure && configure VSSolution" then run ninja, you will see
[1/1] Re-running CMake...
and the project will build for a while until you see that CMake is re-running again, going on indefinitely. However, if you run "configure VSSolution && configure" and run ninja, you will see:
ninja: fatal: CreateProcess: The parameter is incorrect.put.dir\mycomput.rc.res
Maybe needing separate folders for each case is obvious to most everyone, and I should have known better. After digging into configure.cmd and learning the tiniest bit about how CMake works, I'm pretty sure this is a limitation-by-design as a result of CMake. In fact, the issue is mentioned specifically in the wiki already, on the deprecated page: https://reactos.org/wiki/Building_with_MSVC I just didn't see that or read the entire page before (since it's clearly labeled as deprecated).
Whether the solution should have been obvious or not, I've edited configure.cmd to make it more fool-proof and submitted the changes to my GSoC branch. I also made a couple of small changes based on my experience and expectations. I hope these changes get patched into the trunk soon, so nobody else will have to suffer like I did!
Fortunately, I now understand the problems I was seeing with MSVC builds, although I'm a little embarrassed to learn that I was the cause.
My previous theory was that I was launching the wrong command prompt to start the build process. This proved incorrect. Launching an MSBuild prompt results in an immediate error:
Error: Unable to detect build environment. Configure script failure.
and not the problems I was seeing before. Other command prompts, like x86 native tools, actually worked OK once I knew what the issue was.
The issue is that running "configure" and "configure VSSolution" are mutually exclusive operations. If you run one command for a given output folder, you can't run the other or it will screw up ninja (I'm not sure if it also screws up the solution files or not). Also, I would generally run configure directly from the reactos folder, and in both cases, the output folder that configure.cmd generates is the same.
This is how I had some intermittent success early on, by following advice on IRC and deleting that folder. However, it would always just be a matter of time before I wanted to generate the VS solutions to navigate the code. Having no idea these solutions couldn't live in the same folder, I always put them there. Well, configure.cmd put them there, I just let it do it's thing.
Also, the errors aren't consistent. If you run "configure && configure VSSolution" then run ninja, you will see
[1/1] Re-running CMake...
and the project will build for a while until you see that CMake is re-running again, going on indefinitely. However, if you run "configure VSSolution && configure" and run ninja, you will see:
ninja: fatal: CreateProcess: The parameter is incorrect.put.dir\mycomput.rc.res
Maybe needing separate folders for each case is obvious to most everyone, and I should have known better. After digging into configure.cmd and learning the tiniest bit about how CMake works, I'm pretty sure this is a limitation-by-design as a result of CMake. In fact, the issue is mentioned specifically in the wiki already, on the deprecated page: https://reactos.org/wiki/Building_with_MSVC I just didn't see that or read the entire page before (since it's clearly labeled as deprecated).
Whether the solution should have been obvious or not, I've edited configure.cmd to make it more fool-proof and submitted the changes to my GSoC branch. I also made a couple of small changes based on my experience and expectations. I hope these changes get patched into the trunk soon, so nobody else will have to suffer like I did!
Re: Blog: NTFS Write Support GSoC - Week 1 Update
Fascinating...
Skillset: VMS,DOS,Windows Sysadmin from 1985, fault-tolerance, VaxCluster, Alpha,Sparc. DCL,QB,VBDOS- VB6,.NET, PHP,NODE.JS, Graphic Design, Project Manager, CMS, Quad Electronics. classic cars & m'bikes. Artist in water & oils. Historian.
Who is online
Users browsing this forum: No registered users and 42 guests