Skip to content

Build Nouveau on Windows #4678

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
Jul 24, 2023
Merged

Build Nouveau on Windows #4678

merged 1 commit into from
Jul 24, 2023

Conversation

big-r81
Copy link
Contributor

@big-r81 big-r81 commented Jul 14, 2023

Porting Nouveau to build on Windows.

Commands:

.\make.cmd
.\make.cmd nouveau-test
.\make.cmd clean

The clean target ends with the following error:

PS C:\Users\couchdb\Documents\couchdb> .\make.cmd clean
==> snappy (clean)
==> bear (clean)
==> meck (clean)
==> folsom (clean)
==> hyper (clean)
==> ibrowse (clean)
==> jiffy (clean)
==> mochiweb (clean)
==> recon (clean)
==> proper (clean)
==> couch_epi (clean)
==> config (clean)
==> couch_log (clean)
==> khash (clean)
WARN:  Missing plugins: [pc]
==> b64url (clean)
WARN:  Missing plugins: [pc]
==> exxhash (clean)
==> ets_lru (clean)
==> chttpd (clean)
==> couch (clean)
==> couch_event (clean)
==> mem3 (clean)
==> couch_index (clean)
==> couch_mrview (clean)
==> couch_replicator (clean)
==> couch_pse_tests (clean)
==> couch_stats (clean)
==> couch_peruser (clean)
==> couch_tests (clean)
==> couch_dist (clean)
==> custodian (clean)
==> ddoc_cache (clean)
==> dreyfus (clean)
==> nouveau (clean)
==> fabric (clean)
==> global_changes (clean)
==> ioq (clean)
==> jwtf (clean)
==> ken (clean)
==> mango (clean)
==> rexi (clean)
==> setup (clean)
==> smoosh (clean)
==> weatherreport (clean)
==> couch_prometheus (clean)
==> rel (clean)
==> couchdb (clean)
The system cannot find the file specified.
make: [Makefile.win:424: clean] Error 2 (ignored)
The filename, directory name, or volume label syntax is incorrect.
make: [Makefile.win:426: clean] Error 123 (ignored)
The filename, directory name, or volume label syntax is incorrect.
make: [Makefile.win:427: clean] Error 123 (ignored)
Could Not Find C:\Users\couchdb\Documents\couchdb\src\*.dll
Could Not Find C:\Users\couchdb\Documents\couchdb\src\couch\priv\*.exe
The system cannot find the file specified.
make: [Makefile.win:431: clean] Error 2 (ignored)
The system cannot find the file specified.
make: [Makefile.win:432: clean] Error 2 (ignored)
dev\logs\nouveau.log - The process cannot access the file because it is being used by another process.
The system cannot find the file specified.
make: [Makefile.win:435: clean] Error 2 (ignored)
Could Not Find C:\Users\couchdb\Documents\couchdb\src\couch\priv\couch_js\config.h
The system cannot find the file specified.
make: [Makefile.win:437: clean] Error 1 (ignored)
> Task :clean FAILED

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':clean'.
> java.io.IOException: Unable to delete directory 'C:\Users\couchdb\Documents\couchdb\nouveau\build'
    Failed to delete some children. This might happen because a process has files open or has its working directory set in the target directory.
    - C:\Users\couchdb\Documents\couchdb\nouveau\build\libs\server-1.0-SNAPSHOT-dist.jar
    - C:\Users\couchdb\Documents\couchdb\nouveau\build\libs

* Try:
> Run with --stacktrace option to get the stack trace.
> Run with --info or --debug option to get more log output.
> Run with --scan to get full insights.

* Get more help at https://help.gradle.org

BUILD FAILED in 5s
1 actionable task: 1 executed
make: *** [Makefile.win:438: clean] Error 1

It seems, nouveau isn't shutting down properly by our dev/run script. Needs additional investigation.

@big-r81
Copy link
Contributor Author

big-r81 commented Jul 15, 2023

Update:

A file handle to dev/log/nouveau.log is open too after running the test. The file can't be deleted for example.

@big-r81 big-r81 force-pushed the nouveau4win branch 2 times, most recently from 10ba201 to 2c518db Compare July 23, 2023 12:44
@big-r81 big-r81 marked this pull request as ready for review July 23, 2023 12:45
@big-r81 big-r81 changed the title [WIP] Build Nouveau on Windows Build Nouveau on Windows Jul 23, 2023
@big-r81
Copy link
Contributor Author

big-r81 commented Jul 23, 2023

Fixed the open file handle issue by commit b7ca600.

Commands:

.\make.cmd
...
==> rel (compile)
==> couchdb (compile)
        1 file(s) copied.

BUILD SUCCESSFUL in 48s
.\make.cmd nouveau-test
...
Finished in 25.0 seconds (0.00s async, 25.0s sync)
22 tests, 0 failures

Randomized with seed 901471
.\make.cmd clean
...
BUILD SUCCESSFUL in 3s
1 actionable task: 1 executed

@big-r81 big-r81 requested a review from rnewson July 23, 2023 12:59
@big-r81 big-r81 requested a review from nickva July 24, 2023 15:36
Copy link
Contributor

@nickva nickva left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

+1

The changes look good based on the diff. I didn't run it on Windows. It looks like you did and it worked, so I think that's good enough.

@big-r81
Copy link
Contributor Author

big-r81 commented Jul 24, 2023

Thanks Nick, if you have time, you can test it before merging.

Copy link
Contributor

@nickva nickva left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@big-r81 since you insisted, as rightly you should have :-) I have tested the PR on the windows CI machine (on my own clone of couchdb).

+1

Screen Shot 2023-07-24 at 3 20 57 PM

Thanks keeping it updated

@big-r81 big-r81 merged commit 1c9dbdb into main Jul 24, 2023
@big-r81 big-r81 deleted the nouveau4win branch July 24, 2023 20:07
nickva added a commit that referenced this pull request Jul 24, 2023
Revert "Build Nouveau on Windows (#4678)"

This reverts commit 1c9dbdb.
doctor-claw added a commit to doctor-claw/couchdb that referenced this pull request Mar 10, 2025
The default node name in configure.ps1 changed in apache#4678, from couchdb@localhost to [email protected]

This change in behaviour also occurred in When upgrading from 2.x to 2.1.1, so the upgrade notes for 3.4.x have been updated with the same text.

https://docs.couchdb.org/en/stable/whatsnew/2.1.html#upgrade-notes
doctor-claw added a commit to doctor-claw/couchdb that referenced this pull request Mar 10, 2025
The default node name in configure.ps1 changed in apache#4678, from couchdb@localhost to [email protected]

The same change in default node name (and resulting behaviour) also occurred in "When upgrading from 2.x to 2.1.1", so the upgrade notes for 3.4.x have been updated with the same text.

https://docs.couchdb.org/en/stable/whatsnew/2.1.html#upgrade-notes
doctor-claw added a commit to doctor-claw/couchdb that referenced this pull request Mar 13, 2025
The default node name in configure.ps1 changed in apache#4678, from couchdb@localhost to [email protected]

The same change in default node name (and resulting behaviour) also occurred in "When upgrading from 2.x to 2.1.1", so the upgrade notes for 3.4.x have been updated with the same text.

https://docs.couchdb.org/en/stable/whatsnew/2.1.html#upgrade-notes
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants