Skip to content
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

Fixing issues I had when trying to build on Windows #207

Open
wants to merge 2 commits into
base: main
Choose a base branch
from

Conversation

alice
Copy link
Collaborator

@alice alice commented Apr 11, 2024

  • The WIN_OUTPUT_DIRECTORY change is because some thing were ending up in build/bin and some things were ending up in build/bin/Release, but they all need to be in the same directory. This ensures that the VS Code generator doesn't get creative with adding /Release on the end of things.
  • The OUTFILE_DIR for the Python SWIG target is just because it was weird seeing acacia_ia2PYTHON_wrap.cxx end up in build/bin - I came across that while trying to fix the above actual problem
  • Splitting the cmake copy command out into its own step is because it wasn't running when it was part of the acacia_ia2.node custom command, and I couldn't figure out why, but this worked.
  • The change in binding.gyp.in is a temporary fix for a related problem - iaccessible2.lib ends up in build/third_party/ia2/lib/Release for a Release build, because Visual Studio just tacks Release on the end. Obviously this fix won't work for a Debug build, but we're assuming Release elsewhere already, so we can fix them all at the same time whenever we fix Add a Debug build configuration #178.

@alice alice requested a review from elima April 11, 2024 07:59
@spectranaut
Copy link
Collaborator

Hmmm Alice I can't build with these changes, I get the following error:

[build] LINK : fatal error LNK1181: cannot open input file 'C:\Users\spectranaut\repos\AXAccess\build\third_party\ia2\lib\Release\iaccessible2.lib' [C:\Users\spectranaut\repos\AXAccess\build\lib\ia2\build\acacia_ia2.vcxproj]

Before I dig into it -- are you using ninja, by any chance, when on Windows? Or are you just using the msbuild compiler? I switch to ninja at some point and wrote about it in the README, see the "important" here: https://github.com/Igalia/acacia?tab=readme-ov-file#dependencies-1

It's a pain to get the cmake to support both multi configuration generators and single configuration generators, thus the switch to ninja.

@alice
Copy link
Collaborator Author

alice commented Apr 17, 2024

Ohhh yeah I missed that :( Sorry for the noise. Geez, Windows is touchy.

@spectranaut
Copy link
Collaborator

Just want to confirm you can build with windows and ninja's before abandoning this PR?

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.

Add a Debug build configuration
2 participants