<html>
<head>
<base href="https://bugs.freedesktop.org/" />
</head>
<body><table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Bug ID</th>
<td><a class="bz_bug_link
bz_status_NEW "
title="NEW - osmesa build with msys2 on Windows7 64 fails"
href="https://bugs.freedesktop.org/show_bug.cgi?id=88488">88488</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>osmesa build with msys2 on Windows7 64 fails
</td>
</tr>
<tr>
<th>Product</th>
<td>Mesa
</td>
</tr>
<tr>
<th>Version</th>
<td>10.4
</td>
</tr>
<tr>
<th>Hardware</th>
<td>x86-64 (AMD64)
</td>
</tr>
<tr>
<th>OS</th>
<td>Windows (All)
</td>
</tr>
<tr>
<th>Status</th>
<td>NEW
</td>
</tr>
<tr>
<th>Severity</th>
<td>normal
</td>
</tr>
<tr>
<th>Priority</th>
<td>medium
</td>
</tr>
<tr>
<th>Component</th>
<td>Mesa core
</td>
</tr>
<tr>
<th>Assignee</th>
<td>mesa-dev@lists.freedesktop.org
</td>
</tr>
<tr>
<th>Reporter</th>
<td>stefan.hanson@gns-mbh.com
</td>
</tr></table>
<p>
<div>
<pre>I cannot build a osmesa lib on Msys2 for later use with MSVC 2012.
1. Installed Msys2 64 bit on Windows7 64 as described in
<a href="http://sourceforge.net/p/msys2/wiki/MSYS2%20installation/">http://sourceforge.net/p/msys2/wiki/MSYS2%20installation/</a>
2. Added compiler toolchain in msys2:
pacman -S base-devel
pacman -S mingw-w64-x86_64-toolchain
$ gcc -v
Using built-in specs.
COLLECT_GCC=C:\msys64\mingw64\bin\gcc.exe
COLLECT_LTO_WRAPPER=C:/msys64/mingw64/lib/gcc/x86_64-w64-mingw32/4.9.2/lto-wrapper.exe
Target: x86_64-w64-mingw32
Configured with: ../gcc-4.9.2/configure --prefix=/mingw64
--with-local-prefix=/mingw64/local --build=x86_64-w64-mingw32
--host=x86_64-w64-mingw32 --target=x86_64-w64-mingw32
--with-native-system-header-dir=/mingw64/x86_64-w64-mingw32/include
--libexecdir=/mingw64/lib --with-gxx-include-dir=/mingw64/include/c++/4.9.2
--enable-bootstrap --with-arch=x86-64 --with-tune=generic
--enable-languages=c,lto,c++,objc,obj-c++,fortran,ada --enable-shared
--enable-static --enable-libatomic --enable-threads=posix --enable-graphite
--enable-fully-dynamic-string --enable-libstdcxx-time=yes
--disable-libstdcxx-pch --disable-libstdcxx-debug --enable-cloog-backend=isl
--enable-version-specific-runtime-libs --disable-cloog-version-check
--disable-isl-version-check --enable-lto --enable-libgomp --disable-multilib
--enable-checking=release --disable-rpath --disable-win32-registry
--disable-nls --disable-werror --disable-symvers --with-libiconv
--with-system-zlib --with-gmp=/mingw64 --with-mpfr=/mingw64 --with-mpc=/mingw64
--with-isl=/mingw64 --with-cloog=/mingw64 --with-pkgversion='Rev2, Built by
MSYS2 project' --with-bugurl=<a href="http://sourceforge.net/projects/msys2">http://sourceforge.net/projects/msys2</a>
--with-gnu-as --with-gnu-ld
Thread model: posix
gcc version 4.9.2 (Rev2, Built by MSYS2 project)
3. configure Mesa (10.3.7 or 10.4.2)
./autogen.sh --disable-xvmc --disable-glx --disable-dri --with-dri-drivers=""
--with-gallium-drivers="" --enable-texture-float --enable-shared-glapi
--disable-egl --with-egl-platforms="" --enable-osmesa --enable-shared
....
prefix: /usr/local
exec_prefix: ${prefix}
libdir: ${exec_prefix}/lib
includedir: ${prefix}/include
OpenGL: yes (ES1: no ES2: no)
OpenVG: no
OSMesa: libOSMesa
GLX: no
EGL: no
llvm: no
Gallium: no
Shared libs: yes
Static libs: no
Shared-glapi: yes
CFLAGS: -g -O2 -Wall -std=c99
-Werror=implicit-function-declaration -Werror=missing-prototypes
-fno-strict-aliasing -fno-builtin-memcmp
CXXFLAGS: -g -O2 -Wall -fno-strict-aliasing -fno-builtin-memcmp
Macros: -DUSE_EXTERNAL_DXTN_LIB=1 -DUSE_SSE41
-DTEXTURE_FLOAT_ENABLED -DMESA_EGL_NO_X11_HEADERS
PYTHON2: python2
Run 'make' to build Mesa
4. Run make
$ make
Making all in src
make[1]: Verzeichnis „/home/animator/mesa/Mesa-10.3.7/src“ wird betreten
Making all in gtest
make[2]: Verzeichnis „/home/animator/mesa/Mesa-10.3.7/src/gtest“ wird betreten
make[2]: Für das Ziel „all“ ist nichts zu tun.
make[2]: Verzeichnis „/home/animator/mesa/Mesa-10.3.7/src/gtest“ wird verlassen
Making all in util
make[2]: Verzeichnis „/home/animator/mesa/Mesa-10.3.7/src/util“ wird betreten
GEN format_srgb.c
make all-recursive
make[3]: Verzeichnis „/home/animator/mesa/Mesa-10.3.7/src/util“ wird betreten
Making all in .
make[4]: Verzeichnis „/home/animator/mesa/Mesa-10.3.7/src/util“ wird betreten
CC libmesautil_la-hash_table.lo
CC libmesautil_la-ralloc.lo
CC libmesautil_la-format_srgb.lo
CCLD libmesautil.la
make[4]: Verzeichnis „/home/animator/mesa/Mesa-10.3.7/src/util“ wird verlassen
Making all in tests/hash_table
make[4]: Verzeichnis
„/home/animator/mesa/Mesa-10.3.7/src/util/tests/hash_table“ wird betreten
make[4]: Für das Ziel „all“ ist nichts zu tun.
make[4]: Verzeichnis
„/home/animator/mesa/Mesa-10.3.7/src/util/tests/hash_table“ wird verlassen
make[3]: Verzeichnis „/home/animator/mesa/Mesa-10.3.7/src/util“ wird verlassen
make[2]: Verzeichnis „/home/animator/mesa/Mesa-10.3.7/src/util“ wird verlassen
Making all in mapi
make[2]: Verzeichnis „/home/animator/mesa/Mesa-10.3.7/src/mapi“ wird betreten
GEN shared-glapi/glapi_mapi_tmp.h
make all-recursive
make[3]: Verzeichnis „/home/animator/mesa/Mesa-10.3.7/src/mapi“ wird betreten
Making all in glapi/gen
make[4]: Verzeichnis „/home/animator/mesa/Mesa-10.3.7/src/mapi/glapi/gen“ wird
betreten
make all-am
make[5]: Verzeichnis „/home/animator/mesa/Mesa-10.3.7/src/mapi/glapi/gen“ wird
betreten
make[5]: Für das Ziel „all-am“ ist nichts zu tun.
make[5]: Verzeichnis „/home/animator/mesa/Mesa-10.3.7/src/mapi/glapi/gen“ wird
verlassen
make[4]: Verzeichnis „/home/animator/mesa/Mesa-10.3.7/src/mapi/glapi/gen“ wird
verlassen
Making all in .
make[4]: Verzeichnis „/home/animator/mesa/Mesa-10.3.7/src/mapi“ wird betreten
CC shared_glapi_libglapi_la-entry.lo
In file included from ../../src/mapi/entry.c:29:0:
../../src/mapi/u_current.h:20:38: warning: '_glapi_get_dispatch' redeclared
without dllimport attribute: previous dllimport ignored [-Wattributes]
#define u_current_get_table_internal _glapi_get_dispatch
^
../../src/mapi/u_current.h:58:1: note: in expansion of macro
'u_current_get_table_internal'
u_current_get_table_internal(void);
^
../../src/mapi/u_current.h:21:40: warning: '_glapi_get_context' redeclared
without dllimport attribute: previous dllimport ignored [-Wattributes]
#define u_current_get_context_internal _glapi_get_context
^
../../src/mapi/u_current.h:64:1: note: in expansion of macro
'u_current_get_context_internal'
u_current_get_context_internal(void);
^
CC shared_glapi_libglapi_la-mapi_glapi.lo
In file included from ../../src/mapi/mapi_glapi.c:31:0:
../../src/mapi/u_current.h:20:38: warning: '_glapi_get_dispatch' redeclared
without dllimport attribute: previous dllimport ignored [-Wattributes]
#define u_current_get_table_internal _glapi_get_dispatch
^
../../src/mapi/u_current.h:58:1: note: in expansion of macro
'u_current_get_table_internal'
u_current_get_table_internal(void);
^
../../src/mapi/u_current.h:21:40: warning: '_glapi_get_context' redeclared
without dllimport attribute: previous dllimport ignored [-Wattributes]
#define u_current_get_context_internal _glapi_get_context
^
../../src/mapi/u_current.h:64:1: note: in expansion of macro
'u_current_get_context_internal'
u_current_get_context_internal(void);
^
../../src/mapi/mapi_glapi.c:53:1: warning: '_glapi_check_multithread'
redeclared without dllimport attribute: previous dllimport ignored
[-Wattributes]
_glapi_check_multithread(void)
^
../../src/mapi/mapi_glapi.c:59:1: warning: '_glapi_set_context' redeclared
without dllimport attribute: previous dllimport ignored [-Wattributes]
_glapi_set_context(void *context)
^
../../src/mapi/mapi_glapi.c:65:1: warning: '_glapi_set_dispatch' redeclared
without dllimport attribute: previous dllimport ignored [-Wattributes]
_glapi_set_dispatch(struct _glapi_table *dispatch)
^
../../src/mapi/mapi_glapi.c:75:1: warning: '_glapi_get_dispatch_table_size'
redeclared without dllimport attribute: previous dllimport ignored
[-Wattributes]
_glapi_get_dispatch_table_size(void)
^
../../src/mapi/mapi_glapi.c:116:1: warning: '_glapi_add_dispatch' redeclared
without dllimport attribute: previous dllimport ignored [-Wattributes]
_glapi_add_dispatch( const char * const * function_names,
^
../../src/mapi/mapi_glapi.c:196:1: warning: '_glapi_get_proc_offset' redeclared
without dllimport attribute: previous dllimport ignored [-Wattributes]
_glapi_get_proc_offset(const char *funcName)
^
../../src/mapi/mapi_glapi.c:208:1: warning: '_glapi_get_proc_address'
redeclared without dllimport attribute: previous dllimport ignored
[-Wattributes]
_glapi_get_proc_address(const char *funcName)
^
../../src/mapi/mapi_glapi.c:219:1: warning: '_glapi_get_proc_name' redeclared
without dllimport attribute: previous dllimport ignored [-Wattributes]
_glapi_get_proc_name(unsigned int offset)
^
../../src/mapi/mapi_glapi.c:230:1: warning: '_glthread_GetID' redeclared
without dllimport attribute: previous dllimport ignored [-Wattributes]
_glthread_GetID(void)
^
../../src/mapi/mapi_glapi.c:236:1: warning: '_glapi_noop_enable_warnings'
redeclared without dllimport attribute: previous dllimport ignored
[-Wattributes]
_glapi_noop_enable_warnings(unsigned char enable)
^
../../src/mapi/mapi_glapi.c:241:1: warning: '_glapi_set_warning_func'
redeclared without dllimport attribute: previous dllimport ignored
[-Wattributes]
_glapi_set_warning_func(_glapi_proc func)
^
CC shared_glapi_libglapi_la-stub.lo
In file included from ../../src/mapi/stub.c:32:0:
../../src/mapi/u_current.h:20:38: warning: '_glapi_get_dispatch' redeclared
without dllimport attribute: previous dllimport ignored [-Wattributes]
#define u_current_get_table_internal _glapi_get_dispatch
^
../../src/mapi/u_current.h:58:1: note: in expansion of macro
'u_current_get_table_internal'
u_current_get_table_internal(void);
^
../../src/mapi/u_current.h:21:40: warning: '_glapi_get_context' redeclared
without dllimport attribute: previous dllimport ignored [-Wattributes]
#define u_current_get_context_internal _glapi_get_context
^
../../src/mapi/u_current.h:64:1: note: in expansion of macro
'u_current_get_context_internal'
u_current_get_context_internal(void);
^
../../src/mapi/stub.c: In function 'stub_compare':
../../src/mapi/stub.c:76:36: warning: cast from pointer to integer of different
size [-Wpointer-to-int-cast]
stub_name = &public_string_pool[(unsigned long) stub->name];
^
../../src/mapi/stub.c: In function 'stub_get_name':
../../src/mapi/stub.c:204:34: warning: cast from pointer to integer of
different size [-Wpointer-to-int-cast]
name = &public_string_pool[(unsigned long) stub->name];
^
CC shared_glapi_libglapi_la-table.lo
CC shared_glapi_libglapi_la-u_current.lo
In file included from ../../src/mapi/u_current.c:51:0:
../../src/mapi/u_current.h:20:38: warning: '_glapi_get_dispatch' redeclared
without dllimport attribute: previous dllimport ignored [-Wattributes]
#define u_current_get_table_internal _glapi_get_dispatch
^
../../src/mapi/u_current.h:58:1: note: in expansion of macro
'u_current_get_table_internal'
u_current_get_table_internal(void);
^
../../src/mapi/u_current.h:21:40: warning: '_glapi_get_context' redeclared
without dllimport attribute: previous dllimport ignored [-Wattributes]
#define u_current_get_context_internal _glapi_get_context
^
../../src/mapi/u_current.h:64:1: note: in expansion of macro
'u_current_get_context_internal'
u_current_get_context_internal(void);
^
../../src/mapi/u_current.h:16:25: warning: '_glapi_Dispatch' redeclared without
dllimport attribute after being referenced with dll linkage
#define u_current_table _glapi_Dispatch
^
../../src/mapi/u_current.c:111:20: note: in expansion of macro
'u_current_table'
struct mapi_table *u_current_table =
^
../../src/mapi/u_current.h:17:27: warning: '_glapi_Context' redeclared without
dllimport attribute after being referenced with dll linkage
#define u_current_context _glapi_Context
^
../../src/mapi/u_current.c:113:7: note: in expansion of macro
'u_current_context'
void *u_current_context;
^
CC shared_glapi_libglapi_la-u_execmem.lo
CCLD shared-glapi/libglapi.la
.libs/shared_glapi_libglapi_la-entry.o: In function `u_current_get_table':
C:\msys64\home\animator\mesa\Mesa-10.3.7\src\mapi/../../src/mapi/u_current.h:72:
undefined reference to `__imp__glapi_Dispatch'
C:\msys64\home\animator\mesa\Mesa-10.3.7\src\mapi/../../src/mapi/u_current.h:72:
undefined reference to `__imp__glapi_Dispatch'
C:\msys64\home\animator\mesa\Mesa-10.3.7\src\mapi/../../src/mapi/u_current.h:72:
undefined reference to `__imp__glapi_Dispatch'
C:\msys64\home\animator\mesa\Mesa-10.3.7\src\mapi/../../src/mapi/u_current.h:72:
undefined reference to `__imp__glapi_Dispatch'
C:\msys64\home\animator\mesa\Mesa-10.3.7\src\mapi/../../src/mapi/u_current.h:72:
undefined reference to `__imp__glapi_Dispatch'
.libs/shared_glapi_libglapi_la-entry.o:C:\msys64\home\animator\mesa\Mesa-10.3.7\src\mapi/../../src/mapi/u_current.h:72:
more undefined references to `__imp__glapi_Dispatch' follow
collect2.exe: error: ld returned 1 exit status
Makefile:1208: die Regel für Ziel „shared-glapi/libglapi.la“ scheiterte
make[4]: *** [shared-glapi/libglapi.la] Fehler 1
make[4]: Verzeichnis „/home/animator/mesa/Mesa-10.3.7/src/mapi“ wird verlassen
Makefile:1588: die Regel für Ziel „all-recursive“ scheiterte
make[3]: *** [all-recursive] Fehler 1
make[3]: Verzeichnis „/home/animator/mesa/Mesa-10.3.7/src/mapi“ wird verlassen
Makefile:1104: die Regel für Ziel „all“ scheiterte
make[2]: *** [all] Fehler 2
make[2]: Verzeichnis „/home/animator/mesa/Mesa-10.3.7/src/mapi“ wird verlassen
Makefile:517: die Regel für Ziel „all-recursive“ scheiterte
make[1]: *** [all-recursive] Fehler 1
make[1]: Verzeichnis „/home/animator/mesa/Mesa-10.3.7/src“ wird verlassen
Makefile:586: die Regel für Ziel „all-recursive“ scheiterte
make: *** [all-recursive] Fehler 1</pre>
</div>
</p>
<hr>
<span>You are receiving this mail because:</span>
<ul>
<li>You are the assignee for the bug.</li>
</ul>
</body>
</html>