I'm hoping to use MPIR for the Windows build of a theorem prover I'm
working on, and to that end trying to compile it from the command
line. My setup is pretty bog standard, Windows Vista 32-bit, Visual
C++ 2010 express edition, and I'm just going for a completely vanilla
32-bit static library build, not trying to use the IDE. The
information I could find with a Google search says:
1. Install the appropriate version of yasm.
2. Go into build.vc10
3. Configure.bat
4. Make.bat
I managed to get as far as step 3 seeming to work, and past the first
obstacle in step 4, but now it's tripping up on this line in make.bat:
%MS_BUILD% gen-mpir\gen-mpir.vcxproj /p:Platform=Win32;Configuration=Release
As far as the searches I've run can determine, there is no gen-mpir
anywhere in the entire directory tree, nor any other reference to
such. What am I missing?
> --
> You received this message because you are subscribed to the Google Groups "mpir-devel" group.
> To post to this group, send email to mpir-...@googlegroups.com.
> To unsubscribe from this group, send email to mpir-devel+...@googlegroups.com.
> For more options, visit this group at http://groups.google.com/group/mpir-devel?hl=en.
>
>
It doesn't seem to have successfully built the library, though. Output
below; it looks like it's attaching a spurious " (x86)" to the name of
the Program Files directory. Any idea where it's doing that?
C:\mpir\build.vc10>make
Microsoft (R) Build Engine Version 4.0.30319.1
[Microsoft .NET Framework, Version 4.0.30319.1]
Copyright (C) Microsoft Corporation 2007. All rights reserved.
Build started 21/01/2011 15:33:57.
Project "C:\mpir\build.vc10\lib_mpir_p3\lib_mpir_p3.vcxproj" on node 1
(default targets).
PrepareForBuild:
Creating directory "Win32\Release\".
InitializeBuildStatus:
Creating "Win32\Release\lib_mpir_p3.unsuccessfulbuild" because
"AlwaysCreate" was specified.
PreBuildEvent:
cd ..\
prebuild p3 win32
:VCEnd
building MPIR for p3
creating mpir.h for win32
copying tmp.h to ..\\mpir.h
copying tmp.h to ..\\config.h
copying ..\mpn\x86w\p3\gmp-mparam.h to ..\\gmp-mparam.h
ComputeYASMOutput:
Creating directory "C:\mpir\build.vc10\lib_mpir_p3\Win32\Release\mpn\".
_YASM:
Assembling aors_n.asm
Assembling aorsmul_1.asm
Assembling copyd.asm
Assembling copyi.asm
Assembling divexact_1.asm
Assembling divexact_by3c.asm
Assembling divrem_1.asm
Assembling lshift.asm
Assembling mod_1.asm
Assembling mod_34lsub1.asm
Assembling modexact_1c_odd.asm
Assembling mul_1.asm
Assembling mul_basecase.asm
Assembling rshift.asm
Assembling sqr_basecase.asm
Assembling udiv.asm
Assembling umul.asm
Assembling popham.asm
cmd.exe /C "C:\Users\a\AppData\Local\Temp\c638ce3a91ef457593ce9f199f5b4220.cmd"
"C:\Program Files (x86)\Microsoft Visual Studio
10.0\VC\bin\"vsyasm.exe -Xvc -f Win32 -g cv8 -i "..\..\mpn\x86w\\" -o
"Win32\Release\mpn\\" -rnasm -pnasm ..\..\mpn\x86w\aors_n.asm
..\..\mpn\x86w
\p6\aorsmul_1.asm ..\..\mpn\x86w\p6\copyd.asm
..\..\mpn\x86w\copyi.asm ..\..\mpn\x86w\p6\divexact_1.asm
..\..\mpn\x86w\p6\divexact_by3c.asm ..\..\mpn\x86w\p6\mod_1.asm
..\..\mpn\x86w\mod_34ls
ub1.asm ..\..\mpn\x86w\p6\modexact_1c_odd.asm
..\..\mpn\x86w\mul_1.asm ..\..\mpn\x86w\mul_basecase.asm
..\..\mpn\x86w\p6\sqr_basecase.asm ..\..\mpn\x86w\udiv.asm
..\..\mpn\x86w\umul.asm ..\.
.\mpn\x86w\p6\mmx\divrem_1.asm ..\..\mpn\x86w\p6\mmx\lshift.asm
..\..\mpn\x86w\p6\p3mmx\popham.asm ..\..\mpn\x86w\p6\mmx\rshift.asm
The system cannot find the path specified.
C:\mpir\build.vc10\vsyasm.targets(45,5): error MSB3721: The command
""C:\Program Files (x86)\Microsoft Visual Studio
10.0\VC\bin\"vsyasm.exe -Xvc -f Win32 -g cv8 -i "..\..\mpn\x86w\\" -o
"Win32\Relea
se\mpn\\" -rnasm -pnasm ..\..\mpn\x86w\aors_n.asm
..\..\mpn\x86w\p6\aorsmul_1.asm ..\..\mpn\x86w\p6\copyd.asm
..\..\mpn\x86w\copyi.asm ..\..\mpn\x86w\p6\divexact_1.asm
..\..\mpn\x86w\p6\divexa
ct_by3c.asm ..\..\mpn\x86w\p6\mod_1.asm
..\..\mpn\x86w\mod_34lsub1.asm ..\..\mpn\x86w\p6\modexact_1c_odd.asm
..\..\mpn\x86w\mul_1.asm ..\..\mpn\x86w\mul_basecase.asm
..\..\mpn\x86w\p6\sqr_basec
ase.asm ..\..\mpn\x86w\udiv.asm ..\..\mpn\x86w\umul.asm
..\..\mpn\x86w\p6\mmx\divrem_1.asm ..\..\mpn\x86w\p6\mmx\lshift.asm
..\..\mpn\x86w\p6\p3mmx\popham.asm ..\..\mpn\x86w\p6\mmx\rshift.asm"
exited with code 1. [C:\mpir\build.vc10\lib_mpir_p3\lib_mpir_p3.vcxproj]
Done Building Project
"C:\mpir\build.vc10\lib_mpir_p3\lib_mpir_p3.vcxproj" (default targets)
-- FAILED.
Build FAILED.
"C:\mpir\build.vc10\lib_mpir_p3\lib_mpir_p3.vcxproj" (default target) (1) ->
(_YASM target) ->
C:\mpir\build.vc10\vsyasm.targets(45,5): error MSB3721: The command
""C:\Program Files (x86)\Microsoft Visual Studio
10.0\VC\bin\"vsyasm.exe -Xvc -f Win32 -g cv8 -i "..\..\mpn\x86w\\" -o
"Win32\Rel
ease\mpn\\" -rnasm -pnasm ..\..\mpn\x86w\aors_n.asm
..\..\mpn\x86w\p6\aorsmul_1.asm ..\..\mpn\x86w\p6\copyd.asm
..\..\mpn\x86w\copyi.asm ..\..\mpn\x86w\p6\divexact_1.asm
..\..\mpn\x86w\p6\dive
xact_by3c.asm ..\..\mpn\x86w\p6\mod_1.asm
..\..\mpn\x86w\mod_34lsub1.asm ..\..\mpn\x86w\p6\modexact_1c_odd.asm
..\..\mpn\x86w\mul_1.asm ..\..\mpn\x86w\mul_basecase.asm
..\..\mpn\x86w\p6\sqr_bas
ecase.asm ..\..\mpn\x86w\udiv.asm ..\..\mpn\x86w\umul.asm
..\..\mpn\x86w\p6\mmx\divrem_1.asm ..\..\mpn\x86w\p6\mmx\lshift.asm
..\..\mpn\x86w\p6\p3mmx\popham.asm ..\..\mpn\x86w\p6\mmx\rshift.asm
" exited with code 1. [C:\mpir\build.vc10\lib_mpir_p3\lib_mpir_p3.vcxproj]
0 Warning(s)
1 Error(s)
Time Elapsed 00:00:04.65
"ERROR BUILDING"
C:\mpir\build.vc10>
Are you sure it was yasm that failed? The call to it failed,
certainly, but it looked to me like that was because it was trying to
use the wrong path (wrong name for the Program Files directory)?
That sounds very interesting. I'd certainly like to hear about that if
you have the time.
Bill.
"C:\Program Files\Microsoft Visual Studio 10.0\VC\bin\vsyasm.exe"
*scratches head* Erm no, there is no Program Files (x86) directory on
this machine, never has been. -- wait, is that something that happens
on 64-bit Windows? As I said earlier, I'm on a 32-bit setup (I know, I
know, I really ought to upgrade :)).