Discussion:
x64 build for windows
(too old to reply)
Scott Pecot
2018-04-04 18:55:36 UTC
Permalink
I am struggling to build the PortAudio library for Windows, which I must do
because I need to have WASAPI support and apparently that is not included
in the binary distributions.

When I follow the instructions in "Creating MSVC Build Files via CMake",
all seems to go well until I open the .sln file in Visual Studio 2017 and
try to build.

It builds the Win32 target just fine, but the x64 target is missing.

I see that x64 is probably intended to be supported by looking at the old
sln file in build/msvc/portaudio.sln (in the source directory).

Maybe Visual Studio 2017 is not supported? If so, kindly tell me what I am
supposed to use and/or do in order to build your library on Windows 64-bit.

Thanks.
Ross Bencina
2018-04-05 02:08:01 UTC
Permalink
Hi Scott,

This sounds like a limitation in the PA CMake support -- certainly
there's no problem bulding PortAudio for x64. Perhaps someone else can
suggest a fix, but I think your best bet is to research how to modify
the CMakelists.txt file to generate an x64 target in the .sln.

As a workaround, you could just manually add an x64 target to the
solution (you should be able to google for an explanation of how to do
that). Of course the target will be blown away if you regenerate the
solution file with cmake.

Good luck,

Ross.
Post by Scott Pecot
I am struggling to build the PortAudio library for Windows, which I must
do because I need to have WASAPI support and apparently that is not
included in the binary distributions.
When I follow the instructions in "Creating MSVC Build Files via CMake",
all seems to go well until I open the .sln file in Visual Studio 2017
and try to build.
It builds the Win32 target just fine, but the x64 target is missing.
I see that x64 is probably intended to be supported by looking at the
old sln file in build/msvc/portaudio.sln (in the source directory).
Maybe Visual Studio 2017 is not supported? If so, kindly tell me what I
am supposed to use and/or do in order to build your library on Windows
64-bit.
Thanks.
_______________________________________________
Portaudio mailing list
https://lists.columbia.edu/mailman/listinfo/portaudio
Nick Appleton
2018-04-05 02:28:43 UTC
Permalink
Hi Scott, Ross,

The PortAudio CMake support should have no problems generating 64-bit library builds. I am doing this as part of some of my own projects.

CMake requires you to specify whether you want a 64-bit or 32-bit build at project file generation time. You cannot get the option of building a 64-bit or 32-bit build in Visual Studio from CMake generated project files. From the command line, the difference would be something like

cmake (portaudio top-level directory) -G "Visual Studio 14 2015"

for 32-bit vs:

cmake (portaudio top-level directory) -G "Visual Studio 14 2015 Win64"

for 64-bit.

This should be accessible from the CMake GUI if you are using it, but I am unfamiliar with it.

Nick
Post by Ross Bencina
Hi Scott,
This sounds like a limitation in the PA CMake support -- certainly there's no problem bulding PortAudio for x64. Perhaps someone else can suggest a fix, but I think your best bet is to research how to modify the CMakelists.txt file to generate an x64 target in the .sln.
As a workaround, you could just manually add an x64 target to the solution (you should be able to google for an explanation of how to do that). Of course the target will be blown away if you regenerate the solution file with cmake.
Good luck,
Ross.
Post by Scott Pecot
I am struggling to build the PortAudio library for Windows, which I must
do because I need to have WASAPI support and apparently that is not
included in the binary distributions.
When I follow the instructions in "Creating MSVC Build Files via CMake",
all seems to go well until I open the .sln file in Visual Studio 2017
and try to build.
It builds the Win32 target just fine, but the x64 target is missing.
I see that x64 is probably intended to be supported by looking at the
old sln file in build/msvc/portaudio.sln (in the source directory).
Maybe Visual Studio 2017 is not supported? If so, kindly tell me what I
am supposed to use and/or do in order to build your library on Windows
64-bit.
Thanks.
_______________________________________________
Portaudio mailing list
https://lists.columbia.edu/mailman/listinfo/portaudio
_______________________________________________
Portaudio mailing list
https://lists.columbia.edu/mailman/listinfo/portaudio
Scott Pecot
2018-04-05 12:19:50 UTC
Permalink
Thanks, I was able to get it to work the the kind suggestion of a
respondent. It turns out that I just didn't understand the worldview of
CMake adequately. Apparently, one must choose the 64-bit back end or the
32-bit back end for the .sln generator. The resulting .sln files cannot
specify both at the same time.

Once I knew that was required, I was unable to find any hint in the
cmake-gui utility that let me specify the back end, but after investigating
I discovered I could use cmake with -G to specify "Visual Studio 15 2017
Win64", which generated the build directory. From there I could use
cmake-gui to specify the things I needed, and the resulting msvc build
worked just fine.

Thanks.
Post by Ross Bencina
Hi Scott,
This sounds like a limitation in the PA CMake support -- certainly there's
no problem bulding PortAudio for x64. Perhaps someone else can suggest a
fix, but I think your best bet is to research how to modify the
CMakelists.txt file to generate an x64 target in the .sln.
As a workaround, you could just manually add an x64 target to the solution
(you should be able to google for an explanation of how to do that). Of
course the target will be blown away if you regenerate the solution file
with cmake.
Good luck,
Ross.
Post by Scott Pecot
I am struggling to build the PortAudio library for Windows, which I must
do because I need to have WASAPI support and apparently that is not
included in the binary distributions.
When I follow the instructions in "Creating MSVC Build Files via CMake",
all seems to go well until I open the .sln file in Visual Studio 2017
and try to build.
It builds the Win32 target just fine, but the x64 target is missing.
I see that x64 is probably intended to be supported by looking at the
old sln file in build/msvc/portaudio.sln (in the source directory).
Maybe Visual Studio 2017 is not supported? If so, kindly tell me what I
am supposed to use and/or do in order to build your library on Windows
64-bit.
Thanks.
_______________________________________________
Portaudio mailing list
https://lists.columbia.edu/mailman/listinfo/portaudio
_______________________________________________
Portaudio mailing list
https://lists.columbia.edu/mailman/listinfo/portaudio
Phil Burk
2018-04-15 18:02:29 UTC
Permalink
Hello Scott,

I have not done much Windows development lately so I cannot offer much
guidance.
But is there any info here that helps?

http://portaudio.com/docs/v19-doxydocs/compile_windows.html

Phil Burk
Post by Scott Pecot
I am struggling to build the PortAudio library for Windows, which I must
do because I need to have WASAPI support and apparently that is not
included in the binary distributions.
When I follow the instructions in "Creating MSVC Build Files via CMake",
all seems to go well until I open the .sln file in Visual Studio 2017 and
try to build.
It builds the Win32 target just fine, but the x64 target is missing.
I see that x64 is probably intended to be supported by looking at the old
sln file in build/msvc/portaudio.sln (in the source directory).
Maybe Visual Studio 2017 is not supported? If so, kindly tell me what I
am supposed to use and/or do in order to build your library on Windows
64-bit.
Thanks.
_______________________________________________
Portaudio mailing list
https://lists.columbia.edu/mailman/listinfo/portaudio
Loading...