简体   繁体   中英

stdint.h and inttypes.h missing

I am calling for any GCC/MinGW master out there. I try to install a library in Windows 8.1 using MinGW, and configure says stdint.h and inttypes.h are missing :

$ ./configure
checking for gcc... gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.exe
checking for suffix of executables... .exe
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking for ranlib... ranlib
checking how to run the C preprocessor... gcc -E
checking for grep that handles long lines and -e... /bin/grep
checking for egrep... /bin/grep -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... no
checking for stdint.h... no

This is my MinGW setup after downloading the current version from http://www.mingw.org/category/wiki/download :

MINGWBASEDIR=C:\MinGW
gcc version 4.9.3 (GCC)
gcc version 4.8.1 (GCC)
GNU gdb (GDB) 7.6.1
GNU ld (GNU Binutils) 2.25.1
GNU windres (GNU Binutils) 2.25.1
GNU dlltool (GNU Binutils) 2.25.1
libtool (GNU libtool) 2.4
PExports 0.47; Originally written 1998, Anders Norlander
GNU Make 3.82.90
#define __MINGW32_VERSION           3.20
#define __W32API_VERSION 3.17

$ echo $MSYSTEM
MINGW32

$  locate stdint.h
reports nothing (updatedb is up to date)

How I can get those headers in my box?

I just ran into a similar problem when trying to build libx264. I found the solution on the Msys wiki , though it was not explicitly stated that it was tied to this problem. The solution for me was to mount C:/MinGW inside of the Msys shell. The Msys shell being started from C:/MinGW/msys/1.0/msys.bat, then running:

mount c:/MinGW /mingw

As best I can tell, this exposes both the Msys and MinGW include directories when building. Since stdint.h and inttypes.h were only present in the MinGW include and could not be simply copied over, this was the only way to compile. Afterwards, libx264 compiled without error. Hope this fix will also help you with your issue.

MinGW version: mingw-get version 0.6.2-beta-20131004-1

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM