-
Notifications
You must be signed in to change notification settings - Fork 3.4k
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
cannot configure libogg #264
Comments
There should be a |
Here you go: config.log |
This looks like a gcc/clang issue. The failure that makes it abort compiles fine with gcc, but fails with clang. The error is
gcc accepts As a workaround, you can modify the configure script to not use |
btw, I tried it on mac and while the console output looks the same, the config.log is completely different. I've uploaded it here. |
Ah, you're right about the clang issue. Trying directly also shows the error. |
Weirdly, using clang for configuring (on unix) works:
The config.log is here. The command its using still has O20, but also has O2 (??) which seems to make clang happy: |
I've filed a bug with clang here. |
@kripken I've been able to work around the -O20 problem by editing the configure file, as you suggested. :) However, on mac its failing for completely different reasons (see config.log). |
? I see the same |
I think you might be looking at the wrong config.log. Here's a link to it on its [own page](https://raw.github.com/gist/1869963/efbc73cd1c5946df529b5e6e42e054e8845466f8/config.log%20(mac%20os%20x). |
Oh ok, sorry. Linker errors in there, it seems? Do you get them on that machine when you run the command directly too? |
BTW: On my Ubuntu 11.04 32bit, If I replace all occurrences of |
@peterleecomcn GCC technically doesn't support -O4. It instead treats it as -O3. http://stackoverflow.com/questions/3399821/gcc-o4-optimization-flag Clang is less graceful about optimizations above 3, reporting the error mentioned above (error: invalid value '4' in '-O20'). |
If the only issue is clang not liking -O4+, i think we can close this. If there are other open things here please comment. |
I'm getting the second issue @paleozogt mentioned, on os x. During the configure scripts 'checking size of [data type]...' phase, every test fails with the same error: https://gist.github.com/chrismcr/5490366 |
Can you try to configure it with |
That gets me an error about /lib/cpp (which doesn't exist) - https://gist.github.com/chrismcr/5490551 |
If I force CPP=/usr/bin/cpp, I get the same linker errors as before. I am seeing references to conftest.js in certain places though so it appears EMCONFIGURE_JS is being set. |
Ok, can you give me full steps to reproduce and i'll try this locally? |
Sure - it's just a straight emconfigure ./configure => "No 16 bit type found on this platform!" Out of interest, I've checked the config.log after setting EMCONFIGURE_JS again, and the "checking size..." tests are definitely still native, when earlier tests are js. |
It looks like EMCONFIGURE_JS won't help since the specific test does file io (so we need to use a native executable). I don't know enough about configure scripts to debug this. I can see the failing program in config.log, but not sure why it prints out that error message, looks like the variable for 16-bit is not set. Anyone here an autotools person? ;) |
Let me share my experience.
config.log showed an invalid value
thus, I changed it and...
...it worked. |
GCC and clang accept huge -O* values like -O4 and -O20, silently clamping them to a sensible -O3. Some packages rely on this and specify -O20 as a default "REALLY FAST", such as libogg and libvorbis. For compatibility, accept the large values, clamp them to 3, and print a warning instead of throwing and exception and dying. Fixes emscripten-core#1499 Fixes emscripten-core#264
GCC and clang accept huge -O* values like -O4 and -O20, silently clamping them to a sensible -O3. Some packages rely on this and specify -O20 as a default "REALLY FAST", such as libogg and libvorbis. For compatibility, accept the large values, clamp them to 3, and print a warning instead of throwing an exception and dying. Fixes emscripten-core#1499 Fixes emscripten-core#264
GCC and clang accept huge -O* values like -O4 and -O20, silently clamping them to a sensible -O3. Some packages rely on this and specify -O20 as a default "REALLY FAST", such as libogg and libvorbis. For compatibility, accept the large values, clamp them to 3, and print a warning instead of throwing an exception and dying. Test case added. Fixes emscripten-core#1499 Fixes emscripten-core#264
GCC and clang accept huge -O* values like -O4 and -O20, silently clamping them to a sensible -O3. Some packages rely on this and specify -O20 as a default "REALLY FAST", such as libogg and libvorbis. For compatibility, accept the large values, clamp them to 3, and print a warning instead of throwing an exception and dying. Test case added. Fixes emscripten-core#1499 Fixes emscripten-core#264
I'm trying to build libogg. When I run configure it errors with
No 16 bit type found on this platform!
Here's the command and full configure output:
The text was updated successfully, but these errors were encountered: