CNMAT / CNMAT-Externs

CNMAT Max/MSP externals
Other
96 stars 11 forks source link

Do the build instructions need updating? #122

Closed wagne342 closed 5 years ago

wagne342 commented 5 years ago

Can somebody try to build from scratch. I think the latest version of FFTW breaks the build instructions. Specifically, the file names and locations seem to have changed which leads me to get stuck at step 2 under FFTW.

ramagottfried commented 5 years ago

hey @wagne342, I just built it a couple weeks ago -- IIRC you have to rename the fttw main folder to be called just fftw rather than fftw-version-numer-etc, does that fix it? also i think only x86_64 is supported now on MacOS.

wagne342 commented 5 years ago

Oh, nevermind. My C compiler isn't working for some reason.

equilet commented 5 years ago

Nothing wrong on my end either. If you can be more specific let us know... latest version of FFTW was released 5/27/18, so it's unclear to me why that would be a problem. The renaming of the dir is specified in the instructions.

wagne342 commented 5 years ago

The configuration is failing for me for some reason at:

checking whether the C compiler works... no configure: error: in `/Users/...../CNMAT-Externs/fftw-3.3.8': configure: error: C compiler cannot create executables

OSX: 10.14.6 gcc -arch i386 -arch x86_64 --version >&5 Apple LLVM version 10.0.1 (clang-1001.0.46.4)

Maybe I'm making a mistake somewhere.

wagne342 commented 5 years ago

config.log

equilet commented 5 years ago

Seems that you didn't rename the folder?

wagne342 commented 5 years ago

I got rid of the 32-bit versions in the configuration and it runs as expected. I recently updated xcode (last week). Perhaps that is breaking things for me...

equilet commented 5 years ago

it's clear from your log that you didn't rename the folder. I'm having a hard time understanding whether or not you remedied that issue. You should be building both versions, so that we can verify that everything is working. Please upload a new log if you have remedied the folder issue and we can evaluate further.

wagne342 commented 5 years ago

Sorry. I did rename the folder immediately after you pointed that out and it still doesn't work for me.
config.log

wagne342 commented 5 years ago

@equilet I suspect this has something to do with my xcode update. Elsewhere there are reports that this particular error can result from a permissions issue after updating xcode. I don't think it has anything to do with the build system here, just an issue isolated to my machine. I'll keep you posted with what I find.

equilet commented 5 years ago

what version of xcode are you running? I'm on 10.3 (10G8)

wagne342 commented 5 years ago

10.3 (10G8), too.

wagne342 commented 5 years ago

When I look at my gcc --version, it isn't showing a 32-bit target, only 64. Maybe normal. You?

wagne342 commented 5 years ago

it is only the "gcc -arch i386" that causes me problems. I can leave the rest in without error. Anyway, this isn't urgent. Maybe we can look at it together next week. Bon weekend.

equilet commented 5 years ago

yeah; that's normal, and why we specify it in the configuration phase. I think this discussion is best left to an in-person eval, and or the slack channel. Seems specific to your installation, so I'm closing for now.

ramagottfried commented 5 years ago

i think only x86_64 is supported now on MacOS, so you can just remove the -arch i386 flag

adrianfreed commented 5 years ago

I won’t get to the new MacOS for a year or two (if ever). A lot of other people have to delay too because so many music apps aren’t 64-bit.

It would be helpful (and normal) to publish a statement about when various releases are going to drop support of various features (like 32-bitness). Cycling74 does has done this for every release to clarify which things don’t work when you run it in 64-bit mode.

I have also wanted to see processor feature- specific optimizations enabled for externals but this also requires clarifying documentation for people with old machines. This gives you a sense of that work:

https://stackoverflow.com/questions/28185844/do-all-64-bit-intel-architectures-support-ssse3-sse4-1-sse4-2-instructions

On Sep 20, 2019, at 23:28, rama gottfried notifications@github.com wrote:

i think only x86_64 is supported now on MacOS, so you can just remove the -arch i386 flag

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub, or mute the thread.

ramagottfried commented 5 years ago

hi @adrianfreed! yes, me too, I'm on mojave 10.14.6, and not upgrading anytime soon -- but Xcode updates seem to be already pulling 64 bit support (https://forums.developer.apple.com/thread/108704). My comments above were mainly to help Jeremy get the objects built, I didn't mean to imply changing anything or aggressively dropping support for 32bit.

But, maybe we should add a note about the arch-- flags when trying to build with Xcode 10 command line tools.

That would be great to have more processor feature-specific optimizations for sure.

wagne342 commented 5 years ago

Good to know I'm not crazy. Looks like we need to keep a machine on xcode 9.4 to continue to support 32-bit builds.

ramagottfried commented 5 years ago

I just tested building gsl also, and it seems that it doesn't put the libgsl.a in the main folder, but in the gsl/.libs folder, maybe this has changed since the build instructions where written.

I made a copy in the main gsl folder, to get it building, but probably better eventually would be to update the paths to match the default build location.