-
-
Notifications
You must be signed in to change notification settings - Fork 1.5k
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
Nix on Cygwin doesn't work because DBD::SQLite doesn't work #19
Comments
Does this problem happen only when building nix using nix? I'm trying to build nix master on cygwin (not using nix), and I fail even to install DBD::SQLite. Somehow it wants to call 'gcc-4' instead of 'gcc'. |
I just had to add gcc 4.x into cygwin, and install DBD::SQLite. Then I built the nix 1.0 tarball, with CC=gcc-4 CXX=g++-4, and then nix runs fine. I haven't tried without setting gcc/g++ to 4.x for nix. |
OTH, if nix uses shared libraries, trying to run nix inside nix (maybe in the make check stage) can fail hard, if nix shared libraries of different versions don't have different names. Windows can't load multiple DLLs with the same name - systemwide constraint (unless using winsxs). If nix shared libraries have the same name regardless of the version, the nix under 'make check' would be dynamically linked with the nix DLLs doing the build, because they were loaded first there. |
After building nix with nix and gcc-4, having disabled the doInstallCheck, I get this:
|
I tried rebaseall with a list of all exe and dlls in the nix store (-T list), and that did not help. I had to make the dll writeable, for it to success. As for the exe, it said the exe were not 'rebaseable'; maybe here is the trouble. |
Finally I removed the perl DBD lines in configure.ac. I rebuilt all, installed (I disabled the manual generation the hard way, which also failed), and all went fine. So if the DBD stuff could be made optional (like the default substituters), it would make all easier by now. |
From #nixos:
|
nix builds on cygwin-nt 6.1 2.2.0 (0.289/5/3) x86_64 |
This issue is outdated and should be closed. @tohl thx for reporting |
For completeness: we describe a cygport file to install nix on cygwin: http://ternaris.com/lab/nix-on-windows.html#package-build-and-install-nix |
actually the version that builds under cygwin is nix-1.8 the latest nix from unstable (nix-1.10) doesn't build because of a compilation error |
My company, Obsidian Systems would be interested in helping to support development of a Windows distribution of Nix. If anyone is interested in working on this or helping support it, please send me an email at ryan@obsidian.systems. |
@ryantrinkle: this particular issue will preferably be addressed by #341, IMHO. |
@ryantrinkle "Windows distribution of Nix" meaning natively without cygwin? |
As stated by @chaoflow this is outdated and we're very close to being perl free. |
Add :u command which works like `nix-shell -p`.
The "No such process" error may be related to the base address of the DLL, but changing it using the "--image-base=..." linker flag didn't help. Running "rebaseall" didn't help either (but then it doesn't look in the Nix store so that's not surprising).
The text was updated successfully, but these errors were encountered: