-
Notifications
You must be signed in to change notification settings - Fork 69
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
Building with cmake/make on macOS and Linux #66
Comments
Thanks for the report. I haven't got a linux machine to test with, but I'll get the Mac target up again. PS, I have tested the make generator on Mac, I've been using the Xcode generator. You mention you are running cmake at the root, however, I wrote the cmake with an out-of-source build in mind. eg, make a build directory as a sister to the LabSound directory, and cmake ../LabSound from within it. In any case, the clangdefaults file is as you say, missing.... |
I pushed cmake fixes that correct the erroneous MSVC flag settings you encountered, as well as the libvorbis issue. I didn't encounter the libogg issue on Mac, however, the CoreAudio framework isn't linked yet, so there's a bit more to do. The Linux target hasn't been completed, although the RtAudio backend for Windows could be used as a first step in that direction. |
The mac build succeeds now using cmake with the xcode generator. |
To get past the error you encountered, you'll need to replace the chunk that reads #include <ogg/config_types.h> with #include <inttypes.h> @ddiakopoulos, this issue is at the libnyquist end. Shall we add a UNIX chunk to ogg/os_types.h with the above patch? |
FWIW the way I fixed this error was including libogg source and ran |
With this morning's pull, I'm able to get 100% through compiling on Darwin using cmake/make, but did hit a linker error.
|
I think the glob needed to be more generic: https://github.com/modulesio/LabSound/blob/586a4d7510ecbbd5671ce40b87c2f4d0b74847d7/labsound/cmake/libnyquist.cmake#L8 |
@modulesio, I feel the glob, thanks for the suggestion :) I've copied your patch in. 5427ebf Since your directory structure has changed, I couldn't spot a way to cherrypick the fix without adopting the modified directory structure... @jkoutavas, I did add those files to the cmake script, perhaps your cmake cache didn't get regenerated? Perhaps clean out your cmake build directory, and regenerate the cache using the latest patch from modulesio. |
@meshula, I see you merged-in @modulesio's latest changes. This morning, I updated to that, wiped-out my build directory and ran
|
I'd like to humbly suggest that the CI test for passing a Mac build should include a cmake/make build too (not just a cmake/xcodebuild) And of course, when things are working, add a linux cmake/make build to the CI too. |
@jkoutavas Good suggestion on testing with cmake/make. the 'register' issue you're running into tells me that you are running an up to date tool chain on mac, which I don't have here, and can't upgrade quickly. Would you mind attempting a fix? I believe that if you add the following
to
you'll get past the issue you have reported. If this works, we can patch it in. |
Alas, it did not make a difference. I wonder if the solution is to have it build specifically for C++11? |
That would be fine, I think, if it works. |
I'll take a stab at that, and hopefully open a PR for it. |
Okay, I lowered the bar to C++11, see 26144eb that helped. It's a commit on my open PR #71. The
is not needed now. Now we're at 61%...:
|
Yay! With the latest commit, 49e0d79, macOS cmake/make builds to 100%. Nice work! |
Linux build, with latest commit is at 13%:
|
Earlier, @modulesio reported this fix, but I haven't had time to look into it further:
Maybe this needs to be an additional step in the cmake script. |
Closing this, as cmake works now for macos reliably via xcode or make, CI is showing green. Feel free to open a new issue to add a cmake/make build for CI. |
Hi. I'm trying to fire-off a cmake on macOS and run immediately into cmake errors. Same goes when I try to fire-off cmake on Debian 9 or CentOS 7. I fire-off the cmake by issuing "cmake ." at the clone's root.
The problems I am seeing are:
On macOS:
Seems to me that the cmake didn't set things up fully for the third_party dependencies. What should I be doing differently here? Invoke cmake with some special arguments?
A similar set of problems when building on Linux occur:
Again, it seems like I'm missing something here using cmake. Or.. is it possible no one has recently done 'make' builds recently on this repository? Please advise, and, THANK YOU for your help.
/Jay
The text was updated successfully, but these errors were encountered: