tinycc-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Tinycc-devel] Proper use of libm / math.h in Win32 builds


From: avih
Subject: Re: [Tinycc-devel] Proper use of libm / math.h in Win32 builds
Date: Wed, 15 Mar 2017 10:20:33 +0000 (UTC)

First, there's no "current development on github". The main tcc repo is the mob
branch available at this repo: http://repo.or.cz/w/tinycc.git  . tcc repos/forks/mirrors
on github could be outdated (unless you know otherwise).

Second, 0.9.26 indeed had issues with the "t" constraint and math.h (taken from
mingw) dependency on it. The "t" constraint is still not supported with more recent
tcc, but the issues themselves should be mostly solved since tcc switched to a
different implementations (inlined from math.h).

Your options are one of:
1. Build the latest mob branch which includes the fixes, and should just work.
2. Replace your math.h with the one from latest git (at win32/include/math.h) and
   add "tcc" dir to your include dir and in it put tcc_libm.h (from the repo at
   win32/include/tcc/tcc_libm.h)
3. For your convenience, I'm attaching those two files. Just extract it to your include
   folder and it should work (it will overwrite math.h and add tcc/tcc_libm.h).


On Wednesday, March 15, 2017 9:48 AM, Charles Lohr <address@hidden> wrote:


I've found only small bits and pieces of information about how to do this strewn across the internet.  Hopefully this message will have enough keywords in it that others will find it... and hopefully someone on the list will be able to help.

I've tried pulling some files from the current development github, to no avail.

After downloading TinyCC 0.9.26, and compiling, I randomly get the following error:

    c:/tcc/include/math.h:217: error: unknown constraint 't'
    __asm__ ("fabs;" : "=t" (res) : "0" (x));

Whenever I try to use fabsf(...)

That aside, if I only make my program #include <math.h>

I will run into a slew of :

tcc: error: undefined symbol 'strtof'
tcc: error: undefined symbol 'sqrtf'
tcc: error: undefined symbol 'acosf'
tcc: error: undefined symbol 'cosf'
tcc: error: undefined symbol 'sinf'
tcc: error: undefined symbol 'atan2f'
tcc: error: undefined symbol 'asinf'
tcc: error: undefined symbol 'fabsf'

I can't seem to find any objects distributed with tcc that provide this functionality.  What are we to do for the Windows port of tcc?  No libm.dll, libm.a, libm.c, nothing?

What is the recommended compile line for something that uses these features?

Charles
_______________________________________________
Tinycc-devel mailing list
address@hidden
https://lists.nongnu.org/mailman/listinfo/tinycc-devel


Attachment: tcc-win32-math-include.zip
Description: Zip archive


reply via email to

[Prev in Thread] Current Thread [Next in Thread]