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

how to compile UniversalSpeech.dll 64 bits #3

Open
AlexanderPanshin opened this issue Jan 12, 2023 · 5 comments
Open

how to compile UniversalSpeech.dll 64 bits #3

AlexanderPanshin opened this issue Jan 12, 2023 · 5 comments

Comments

@AlexanderPanshin
Copy link

Greetings. Tell me how to compile UniversalSpeech.dll 64 bits The make utility gives an error
mingw32-make: *** [makefile:50: objd/src/windows/screenReaderAPICompat.o] Error 2

@TheQuinbox
Copy link

Yup, I get the same thing, no matter what configuration I try to compile in.

@qtnc
Copy link
Owner

qtnc commented May 20, 2023

@AlexanderPanshin and @TheQuinbox:
Sorry, but I can't do anything only with that. It looks like your error message is incomplete. It doesn't tell me at all why compilation of that file failed.
Could you try to post the entire output ?
Thank you.

@TheQuinbox
Copy link

@qtnc, here's my full shell session:
Microsoft Windows [Version 10.0.19045.2965]
(c) Microsoft Corporation. All rights reserved.

C:\Users\Quin>cd C:\Users\Quin\git\c

C:\Users\Quin\git\c>git clone https://www.github.com/qtnc/universalSpeech
Cloning into 'universalSpeech'...
warning: redirecting to https://github.com/qtnc/universalSpeech.git/
remote: Enumerating objects: 424, done.
remote: Counting objects: 100% (104/104), done.
remote: Compressing objects: 100% (65/65), done.
Receiving objects: 100% (424/424), 1.16 MiB | 3.06 MiB/s, done. 320

Resolving deltas: 100% (209/209), done.

C:\Users\Quin\git\c>cd universalSpeech

C:\Users\Quin\git\c\universalSpeech>mingw32-make
process_begin: CreateProcess(NULL, mkdir.exe -p objd/src/windows/, ...) failed.
make (e=2): The system cannot find the file specified.
mingw32-make: *** [makefile:50: objd/src/windows/screenReaderAPICompat.o] Error 2

C:\Users\Quin\git\c\universalSpeech>

@qtnc
Copy link
Owner

qtnc commented May 22, 2023

Thank you. Now I can explain what's going on.
You have two solutions:

  • Put mkdir.exe in the path. That mkdir.exe can be found in several distributions. You can find it in git, OpenSSH, MSYS, GNU for windows, to name a few.
  • Remove the ".exe" suffix in the makefile, but you still need one of the mkdir program just mentioned. Normally, that ".exe" suffix shouldn't be there as it prevent compilation from mac or linux for example (it doesn't make sense here, but still).

The standard mkdir windows command don't support the -p option, which allow creating directories recursively, and just don't nothing instead of returning an error if the given directory already exists.
This option works on all UNIX/linux distributions I know about.

I have two machines. If I remove the .exe suffix, it continues working on one, but not on the other. I have never understood why.
ON the machine where it doesn't work, the default mkdir windows command takes the priority, and then obviously it returns an error about the unsupported -p switch.

If you have an idea how I can fix this problem so that it works everywhere without the .exe suffix, you are welcome.

@TheQuinbox
Copy link

Adding %USERPROFILE%\scoop\apps\git\current\usr\bin to path fixed the issue. Now it compiles (all be it with some warnings). Thanks a ton!

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

No branches or pull requests

3 participants