* Symbols _fe_dfl_env and _fe_nomask_env not exported on x86_64
@ 2018-07-20 3:03 Houder
2018-07-20 12:03 ` Houder
2018-07-20 12:44 ` Corinna Vinschen
0 siblings, 2 replies; 4+ messages in thread
From: Houder @ 2018-07-20 3:03 UTC (permalink / raw)
To: cygwin
L.S.,
This STC fails to compile on Cygwin for x86_64:
// gcc -Wall -o stc-fenv stc-fenv.c
// Linux: gcc -Wall -o stc-fenv stc-fenv.c -lm
#define _GNU_SOURCE
#include <fenv.h>
int main()
{
fesetenv(FE_DFL_ENV);
fesetenv(FE_NOMASK_ENV);
}
64-@@ gcc -Wall -o stc-fenv stc-fenv.c
/tmp/cchxZMgV.o:stc-fenv.c:(.rdata$.refptr._fe_nomask_env[.refptr._fe_nomask_env]+0x0):
undefined reference to `_fe_nomask_env'
/tmp/cchxZMgV.o:stc-fenv.c:(.rdata$.refptr._fe_dfl_env[.refptr._fe_dfl_env]+0x0):
undefined reference to `_fe_dfl_env'
collect2: error: ld returned 1 exit status
However the STC does compile on x86.
Where has the machinery gone wrong?
Regards,
Henri
-----
File /usr/include/fenv.h contains: (line 124 ff)
extern const fenv_t *_fe_dfl_env;
#define FE_DFL_ENV (_fe_dfl_env)
[snip]
...
#if __GNU_VISIBLE
[snip]
...
extern const fenv_t *_fe_nomask_env;
#define FE_NOMASK_ENV (_fe_nomask_env)
#endif /* __GNU_VISIBLE */
File winsup/cygwin/fenv.cc contains: (line 35 ff)
/* These are writable so we can initialise them at startup. */
static fenv_t fe_dfl_env;
static fenv_t fe_nomask_env;
/* These pointers provide the outside world with read-only access to
them. */
const fenv_t *_fe_dfl_env = &fe_dfl_env;
const fenv_t *_fe_nomask_env = &fe_nomask_env
=====
--
Problem reports: http://cygwin.com/problems.html
FAQ: http://cygwin.com/faq/
Documentation: http://cygwin.com/docs.html
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: Symbols _fe_dfl_env and _fe_nomask_env not exported on x86_64
2018-07-20 3:03 Symbols _fe_dfl_env and _fe_nomask_env not exported on x86_64 Houder
@ 2018-07-20 12:03 ` Houder
2018-07-20 12:44 ` Corinna Vinschen
1 sibling, 0 replies; 4+ messages in thread
From: Houder @ 2018-07-20 12:03 UTC (permalink / raw)
To: cygwin
On 2018-07-20 01:00, Houder wrote:
> L.S.,
>
> This STC fails to compile on Cygwin for x86_64:
>
> // gcc -Wall -o stc-fenv stc-fenv.c
> // Linux: gcc -Wall -o stc-fenv stc-fenv.c -lm
> #define _GNU_SOURCE
> #include <fenv.h>
>
> int main()
> {
> fesetenv(FE_DFL_ENV);
> fesetenv(FE_NOMASK_ENV);
> }
>
> 64-@@ gcc -Wall -o stc-fenv stc-fenv.c
> /tmp/cchxZMgV.o:stc-fenv.c:(.rdata$.refptr._fe_nomask_env[.refptr._fe_nomask_env]+0x0):
> undefined reference to `_fe_nomask_env'
> /tmp/cchxZMgV.o:stc-fenv.c:(.rdata$.refptr._fe_dfl_env[.refptr._fe_dfl_env]+0x0):
> undefined reference to `_fe_dfl_env'
> collect2: error: ld returned 1 exit status
>
> However the STC does compile on x86.
>
> Where has the machinery gone wrong?
File winsup/CVSChangeLogs.old/cygwin/ChangeLog.64 bit contains: (line
761 ff)
2013-02-08 Corinna Vinschen <corinna@vinschen.de>
* cygwin64.din (BASE): Set to 0x180040000.
(_fe_dfl_env): Remove useless symbol.
(_fe_nomask_env): Remove useless symbol.
File cygwin64.din does not exist anymore (as far as I can tell).
Has it been renamed x68_64.din?
Regards,
Henri
--
Problem reports: http://cygwin.com/problems.html
FAQ: http://cygwin.com/faq/
Documentation: http://cygwin.com/docs.html
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: Symbols _fe_dfl_env and _fe_nomask_env not exported on x86_64
2018-07-20 3:03 Symbols _fe_dfl_env and _fe_nomask_env not exported on x86_64 Houder
2018-07-20 12:03 ` Houder
@ 2018-07-20 12:44 ` Corinna Vinschen
2018-07-20 13:36 ` Houder
1 sibling, 1 reply; 4+ messages in thread
From: Corinna Vinschen @ 2018-07-20 12:44 UTC (permalink / raw)
To: cygwin
[-- Attachment #1: Type: text/plain, Size: 1092 bytes --]
On Jul 20 01:00, Houder wrote:
> L.S.,
>
> This STC fails to compile on Cygwin for x86_64:
>
> // gcc -Wall -o stc-fenv stc-fenv.c
> // Linux: gcc -Wall -o stc-fenv stc-fenv.c -lm
> #define _GNU_SOURCE
> #include <fenv.h>
>
> int main()
> {
> fesetenv(FE_DFL_ENV);
> fesetenv(FE_NOMASK_ENV);
> }
>
> 64-@@ gcc -Wall -o stc-fenv stc-fenv.c
> /tmp/cchxZMgV.o:stc-fenv.c:(.rdata$.refptr._fe_nomask_env[.refptr._fe_nomask_env]+0x0):
> undefined reference to `_fe_nomask_env'
> /tmp/cchxZMgV.o:stc-fenv.c:(.rdata$.refptr._fe_dfl_env[.refptr._fe_dfl_env]+0x0):
> undefined reference to `_fe_dfl_env'
> collect2: error: ld returned 1 exit status
>
> However the STC does compile on x86.
>
> Where has the machinery gone wrong?
The symbol export files were not correctly set up back then. I pushed a
patch. New snapshots should be uploaded shortly to
https://cygwin.com/snapshots/
Thanks,
Corinna
--
Corinna Vinschen Please, send mails regarding Cygwin to
Cygwin Maintainer cygwin AT cygwin DOT com
Red Hat
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: Symbols _fe_dfl_env and _fe_nomask_env not exported on x86_64
2018-07-20 12:44 ` Corinna Vinschen
@ 2018-07-20 13:36 ` Houder
0 siblings, 0 replies; 4+ messages in thread
From: Houder @ 2018-07-20 13:36 UTC (permalink / raw)
To: cygwin
On 2018-07-20 14:01, Corinna Vinschen wrote:
> On Jul 20 01:00, Houder wrote:
>> L.S.,
>>
>> This STC fails to compile on Cygwin for x86_64:
>>
>> // gcc -Wall -o stc-fenv stc-fenv.c
>> // Linux: gcc -Wall -o stc-fenv stc-fenv.c -lm
>> #define _GNU_SOURCE
>> #include <fenv.h>
>>
>> int main()
>> {
>> fesetenv(FE_DFL_ENV);
>> fesetenv(FE_NOMASK_ENV);
>> }
>>
>> 64-@@ gcc -Wall -o stc-fenv stc-fenv.c
>> /tmp/cchxZMgV.o:stc-fenv.c:(.rdata$.refptr._fe_nomask_env[.refptr._fe_nomask_env]+0x0):
>> undefined reference to `_fe_nomask_env'
>> /tmp/cchxZMgV.o:stc-fenv.c:(.rdata$.refptr._fe_dfl_env[.refptr._fe_dfl_env]+0x0):
>> undefined reference to `_fe_dfl_env'
>> collect2: error: ld returned 1 exit status
>>
>> However the STC does compile on x86.
>>
>> Where has the machinery gone wrong?
>
> The symbol export files were not correctly set up back then. I pushed
> a
> patch. New snapshots should be uploaded shortly to
> https://cygwin.com/snapshots/
Thank you, Corinna!
https://cygwin.com/git/gitweb.cgi?p=newlib-cygwin.git;a=commit;h=e9f223877f42c31353bd8b522596cb5fe1b87388
(Cygwin: move FP environment exports to common.din)
Agreed!
(have not tested any snapshot yet; will do.)
Henri
--
Problem reports: http://cygwin.com/problems.html
FAQ: http://cygwin.com/faq/
Documentation: http://cygwin.com/docs.html
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2018-07-20 12:37 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-07-20 3:03 Symbols _fe_dfl_env and _fe_nomask_env not exported on x86_64 Houder
2018-07-20 12:03 ` Houder
2018-07-20 12:44 ` Corinna Vinschen
2018-07-20 13:36 ` Houder
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).