Closed GoogleCodeExporter closed 8 years ago
We think this is fixed, if not, can you try to add the hash commit you are
trying?
thanks
Original comment by albe...@google.com
on 17 Jan 2013 at 11:32
warnings are fixed, but link error occurs related to threading?
command prompt
cd \on2
git clone http://git.chromium.org/webm/libvpx.git
cd libvpx
git checkout master
#git checkout experimental
cd ..
msys:
mkdir msys32
cd msys32
../libvpx/configure --disable-multithread --target=x86-win32-gcc
--disable-multithread --disable-unit-tests --prefix=/mingw
make -i V=1
Current build
[LD] vpxdec
vpxdec.c.o:vpxdec.c:(.text+0xe0): undefined reference to `vpx_codec_vp9_dx'
vpxdec.c.o:vpxdec.c:(.text+0x930): undefined reference to `vpx_codec_vp9_dx'
vpxdec.c.o:vpxdec.c:(.rdata+0x954): undefined reference to `vpx_codec_vp9_dx'
./libvpx.a(systemdependent.c.o): In function `once':
c:\on2\msys32/../libvpx-v1.1.0/vp8/common/generic/systemdependent.c:91: undefine
d reference to `_imp__pthread_once'
collect2: ld returned 1 exit status
make[1]: [vpxdec] Error 1 (ignored)
[CC] y4minput.c.o
[CC] libmkv/EbmlWriter.c.o
[CC] vpxenc.c.o
[LD] vpxenc
vpxenc.c.o:vpxenc.c:(.text+0x4a0): undefined reference to `vpx_codec_vp9_cx'
vpxenc.c.o:vpxenc.c:(.text+0x955): undefined reference to `vpx_codec_vp9_cx'
vpxenc.c.o:vpxenc.c:(.rdata+0xc14): undefined reference to `vpx_codec_vp9_cx'
vpxenc.c.o:vpxenc.c:(.rdata+0xc18): undefined reference to `vpx_codec_vp9_dx'
./libvpx.a(systemdependent.c.o): In function `once':
c:\on2\msys32/../libvpx-v1.1.0/vp8/common/generic/systemdependent.c:91: undefine
d reference to `_imp__pthread_once'
collect2: ld returned 1 exit status
Original comment by fbarch...@google.com
on 18 Jan 2013 at 2:05
Cross compiling for gprecise. Install mingw32 or mingw-w64. The cross tool is
i586-mingw32- (IIRC) for mingw32 and i686-w64-mingw32- (win32) or
x86_64-w64-mingw32- (win64) for mingw-w64
CROSS=x86_64-w64-mingw32- ../libvpx/configure --target=x86_64-win64-gcc
I haven't managed to reproduce the pthread error on linux though
Original comment by johannkoenig@google.com
on 18 Jan 2013 at 2:33
Just to be clear, the issue I'm asking to be addressed is pthreads.
--disable-multithread should disable threads.
pthreads dont natively come with windows. They can be added somehow, so it
might be nice to have instructions on how. But since vp9 doesnt support
threads, its moot.
Original comment by fbarch...@google.com
on 18 Jan 2013 at 2:37
I'll see if I can find the holdouts.
Original comment by johannkoenig@google.com
on 18 Jan 2013 at 2:43
Does this help:
https://gerrit.chromium.org/gerrit/41653
Original comment by johannkoenig@google.com
on 18 Jan 2013 at 7:31
Issue 525 has been merged into this issue.
Original comment by johannkoenig@google.com
on 18 Jan 2013 at 7:58
Merged. Reopen if it wasn't enough.
Original comment by johannkoenig@google.com
on 19 Jan 2013 at 12:16
Looks like your CL should work. I was unable to build 'master' on Thursday.
Which branch is your CL in?
Original comment by fbarch...@google.com
on 19 Jan 2013 at 9:39
It is in 'master'
Original comment by johannkoenig@google.com
on 20 Jan 2013 at 5:38
Still occurs for msys
c:\on2\msys32/../libvpx-v1.1.0/vp8/common/generic/systemdependent.c:91: undefine
d reference to `_imp__pthread_once'
collect2: ld returned 1 exit status
How to reproduce
windows command prompt
cd \on2
git clone http://git.chromium.org/webm/libvpx.git
cd libvpx
git checkout master
cd ..
msys:
cd /c/on2
mkdir msys32
cd msys32
../libvpx/configure --target=x86-win32-gcc --enable-experimental
--disable-multithread --disable-unit-tests --prefix=/mingw
make -i V=1
Original comment by fbarch...@google.com
on 21 Jan 2013 at 4:41
Re comment #3
Linux cross build works. Steps taken:
sudo apt-get install mingw-w64
sudo apt-get install yasm
cd ~
mkdir on2
git clone http://git.chromium.org/webm/libvpx.git
cd libvpx
git checkout master
cd ..
mkdir win64
cd win64
CROSS=x86_64-w64-mingw32- ../libvpx/configure --target=x86_64-win64-gcc
--enable-experimental --enable-static-msvcrt --disable-install-docs
--disable-unit-tests --disable-docs
make -i V=1
Original comment by fbarch...@google.com
on 21 Jan 2013 at 6:21
Successfully compiled with
CROSS=i686-w64-mingw32- ./configure --target=x86-win32-gcc
but when using
CROSS=x86_64-w64-mingw32- ./configure --target=x86_64-win64-gcc
configure succeeded, while make (with -j8; w/o it the output is similar) got:
[STRIP] libvpx.a < libvpx_g.a
[STRIP] libgtest.a < libgtest_g.a
/bin/sh: /mingw/bin/x86_64-w64-mingw32-strip: Bad file number
make[1]: *** [libgtest.a] Error 126
make[1]: *** Waiting for unfinished jobs....
/bin/sh: /mingw/bin/x86_64-w64-mingw32-strip: Bad file number
make[1]: *** [libvpx.a] Error 126
make: *** [.DEFAULT] Error 2
Original comment by astrat...@gmail.com
on 21 Jan 2013 at 6:38
The problem is due the w32pthreads library that can be optionally provided by
mingw-w64. Sadly it is incomplete, the simplest solution is not just check for
the header presence but also check if the library has the needed symbols.
Original comment by luca.bar...@gmail.com
on 21 Jan 2013 at 11:25
Tried all the solutions in this thread to no avail under Win32 MinGW.
Successfully compiled after following the instructions here:
http://blog.k-tai-douga.com/article/53351775.html
Original comment by leighton...@gmail.com
on 26 Mar 2013 at 6:47
Re #15
Thats a long article with several problems/solutions.
As I work on libyuv, the scale.c compile error concerns me.
Can you clarify which parts of the article are relevant?
Original comment by fbarch...@chromium.org
on 26 Mar 2013 at 7:29
Original issue reported on code.google.com by
fbarch...@google.com
on 8 Jan 2013 at 12:13