PDA

View Full Version : libass cross-compiling



active1
June 4th, 2012, 02:28 PM
hi, how can i cross compile libass for windows on ubuntu ?

Bachstelze
June 4th, 2012, 05:57 PM
You can compile with mingw, but you will also need to compile all the dependencies (since you can't use the Linux versions).

active1
June 5th, 2012, 12:35 AM
You can compile with mingw, but you will also need to compile all the dependencies (since you can't use the Linux versions).

thanx for your reply
yeah i know how can i do it on windows with mingw, i compiled all dependencies but when i tried to build libass.dll i failed :S
i succeeded in "./configure, make, make install" it
and the libass.a, libass.la were created in my lib folder, but libass.dll didn't created

so i wanted to try cross compiling it from ubuntu, and i installed mingw on ubuntu
but i failed with libass again :s
i don't know how to go with the cross compiling mode on it

can you give me some advices ?

Bachstelze
June 5th, 2012, 01:27 AM
To compile with mingw on Ubuntu (using GNU hello as an example, since it doesn't require any dependencies):


firas@itsuki software % apt-get source hello
(...)
firas@itsuki software % cd hello-2.7
firas@itsuki hello-2.7 % ./configure --build=i586-mingw32msvc --host=i586-mingw32msvc
(...)
firas@itsuki hello-2.7 % make
(...)
firas@itsuki hello-2.7 % file src/hello.exe
src/hello.exe: PE32 executable (console) Intel 80386, for MS Windows
firas@itsuki hello-2.7 % wine src/hello.exe
Hello, world!


But just doing that with libass will fail because you don't have the dependencies,so you need to compile them first.

active1
June 5th, 2012, 10:58 PM
i had this problem:


labtop@ubuntu:~/Desktop/libass-0.10.0$ ./configure --build=i586-mingw32msvc --host=i586-mingw32msvc
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking build system type... i586-pc-mingw32msvc
checking host system type... i586-pc-mingw32msvc
checking for style of include used by make... GNU
checking for i586-mingw32msvc-gcc... i586-mingw32msvc-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... configure: error: in `/home/labtop/Desktop/libass-0.10.0':
configure: error: cannot run C compiled programs.
If you meant to cross compile, use `--host'.
See `config.log' for more details.


i searched but didn't find the solution

any idea ?

Bachstelze
June 5th, 2012, 11:55 PM
See 'config.log' for more details.

active1
June 6th, 2012, 03:07 AM
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.

It was created by libass configure 0.10.0, which was
generated by GNU Autoconf 2.65. Invocation command line was

$ ./configure --build=i586-mingw32msvc --host=i586-mingw32msvc

## --------- ##
## Platform. ##
## --------- ##

hostname = ubuntu
uname -m = i686
uname -r = 3.0.0-12-generic
uname -s = Linux
uname -v = #20-Ubuntu SMP Fri Oct 7 14:50:42 UTC 2011

/usr/bin/uname -p = unknown
/bin/uname -X = unknown

/bin/arch = unknown
/usr/bin/arch -k = unknown
/usr/convex/getsysinfo = unknown
/usr/bin/hostinfo = unknown
/bin/machine = unknown
/usr/bin/oslevel = unknown
/bin/universe = unknown

PATH: /usr/lib/lightdm/lightdm
PATH: /usr/local/sbin
PATH: /usr/local/bin
PATH: /usr/sbin
PATH: /usr/bin
PATH: /sbin
PATH: /bin
PATH: /usr/games


## ----------- ##
## Core tests. ##
## ----------- ##

configure:2584: checking for a BSD-compatible install
configure:2652: result: /usr/bin/install -c
configure:2663: checking whether build environment is sane
configure:2713: result: yes
configure:2854: checking for a thread-safe mkdir -p
configure:2893: result: /bin/mkdir -p
configure:2906: checking for gawk
configure:2922: found /usr/bin/gawk
configure:2933: result: gawk
configure:2944: checking whether make sets $(MAKE)
configure:2966: result: yes
configure:3079: checking build system type
configure:3093: result: i586-pc-mingw32msvc
configure:3113: checking host system type
configure:3126: result: i586-pc-mingw32msvc
configure:3158: checking for style of include used by make
configure:3186: result: GNU
configure:3216: checking for i586-mingw32msvc-gcc
configure:3232: found /usr/bin/i586-mingw32msvc-gcc
configure:3243: result: i586-mingw32msvc-gcc
configure:3512: checking for C compiler version
configure:3521: i586-mingw32msvc-gcc --version >&5
i586-mingw32msvc-gcc (GCC) 4.4.4
Copyright (C) 2010 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

configure:3532: $? = 0
configure:3521: i586-mingw32msvc-gcc -v >&5
Using built-in specs.
Target: i586-mingw32msvc
Configured with: /build/buildd/gcc-mingw32-4.4.4/build-tree/gcc-4.4.4/configure --build=i686-linux-gnu --prefix=/usr --includedir='/usr/include' --mandir='/usr/share/man' --infodir='/usr/share/info' --sysconfdir=/etc --localstatedir=/var --libexecdir='/usr/lib/gcc-mingw32' --disable-multilib --enable-threads --enable-sjlj-exceptions --enable-version-specific-runtime-libs --disable-shared --target=i586-mingw32msvc --enable-languages=c,c++,fortran : (reconfigured) /build/buildd/gcc-mingw32-4.4.4/build-tree/gcc-4.4.4/configure --build=i686-linux-gnu --prefix=/usr --includedir='/usr/include' --mandir='/usr/share/man' --infodir='/usr/share/info' --sysconfdir=/etc --localstatedir=/var --libexecdir='/usr/lib/gcc-mingw32' --disable-multilib --enable-threads --enable-sjlj-exceptions --enable-version-specific-runtime-libs --disable-shared --target=i586-mingw32msvc --enable-languages=c,c++,fortran
Thread model: win32
gcc version 4.4.4 (GCC)
configure:3532: $? = 0
configure:3521: i586-mingw32msvc-gcc -V >&5
i586-mingw32msvc-gcc: '-V' option must have argument
configure:3532: $? = 1
configure:3521: i586-mingw32msvc-gcc -qversion >&5
i586-mingw32msvc-gcc: unrecognized option '-qversion'
i586-mingw32msvc-gcc: no input files
configure:3532: $? = 1
configure:3552: checking whether the C compiler works
configure:3574: i586-mingw32msvc-gcc conftest.c >&5
configure:3578: $? = 0
configure:3627: result: yes
configure:3630: checking for C compiler default output file name
configure:3632: result: a.exe
configure:3638: checking for suffix of executables
configure:3645: i586-mingw32msvc-gcc -o conftest.exe conftest.c >&5
configure:3649: $? = 0
configure:3671: result: .exe
configure:3693: checking whether we are cross compiling
configure:3701: i586-mingw32msvc-gcc -o conftest.exe conftest.c >&5
configure:3705: $? = 0
configure:3712: ./conftest.exe
run-detectors: unable to find an interpreter for ./conftest.exe
configure:3716: $? = 2
configure:3723: error: in `/home/labtop/libass-0.10.0':
configure:3727: error: cannot run C compiled programs.
If you meant to cross compile, use `--host'.
See `config.log' for more details.

## ---------------- ##
## Cache variables. ##
## ---------------- ##

ac_cv_build=i586-pc-mingw32msvc
ac_cv_env_CC_set=
ac_cv_env_CC_value=
ac_cv_env_CFLAGS_set=
ac_cv_env_CFLAGS_value=
ac_cv_env_CPPFLAGS_set=
ac_cv_env_CPPFLAGS_value=
ac_cv_env_CPP_set=
ac_cv_env_CPP_value=
ac_cv_env_ENCA_CFLAGS_set=
ac_cv_env_ENCA_CFLAGS_value=
ac_cv_env_ENCA_LIBS_set=
ac_cv_env_ENCA_LIBS_value=
ac_cv_env_FONTCONFIG_CFLAGS_set=
ac_cv_env_FONTCONFIG_CFLAGS_value=
ac_cv_env_FONTCONFIG_LIBS_set=
ac_cv_env_FONTCONFIG_LIBS_value=
ac_cv_env_FREETYPE_CFLAGS_set=
ac_cv_env_FREETYPE_CFLAGS_value=
ac_cv_env_FREETYPE_LIBS_set=
ac_cv_env_FREETYPE_LIBS_value=
ac_cv_env_FRIBIDI_CFLAGS_set=
ac_cv_env_FRIBIDI_CFLAGS_value=
ac_cv_env_FRIBIDI_LIBS_set=
ac_cv_env_FRIBIDI_LIBS_value=
ac_cv_env_HARFBUZZ_CFLAGS_set=
ac_cv_env_HARFBUZZ_CFLAGS_value=
ac_cv_env_HARFBUZZ_LIBS_set=
ac_cv_env_HARFBUZZ_LIBS_value=
ac_cv_env_LDFLAGS_set=
ac_cv_env_LDFLAGS_value=
ac_cv_env_LIBPNG_CFLAGS_set=
ac_cv_env_LIBPNG_CFLAGS_value=
ac_cv_env_LIBPNG_LIBS_set=
ac_cv_env_LIBPNG_LIBS_value=
ac_cv_env_LIBS_set=
ac_cv_env_LIBS_value=
ac_cv_env_PKG_CONFIG_set=
ac_cv_env_PKG_CONFIG_value=
ac_cv_env_build_alias_set=set
ac_cv_env_build_alias_value=i586-mingw32msvc
ac_cv_env_host_alias_set=set
ac_cv_env_host_alias_value=i586-mingw32msvc
ac_cv_env_target_alias_set=
ac_cv_env_target_alias_value=
ac_cv_exeext=.exe
ac_cv_host=i586-pc-mingw32msvc
ac_cv_path_install='/usr/bin/install -c'
ac_cv_path_mkdir=/bin/mkdir
ac_cv_prog_AWK=gawk
ac_cv_prog_CC=i586-mingw32msvc-gcc
ac_cv_prog_make_make_set=yes

## ----------------- ##
## Output variables. ##
## ----------------- ##

ACLOCAL='${SHELL} /home/labtop/libass-0.10.0/missing --run aclocal-1.11'
AMDEPBACKSLASH='\'
AMDEP_FALSE='#'
AMDEP_TRUE=''
AMTAR='${SHELL} /home/labtop/libass-0.10.0/missing --run tar'
AM_BACKSLASH=''
AM_DEFAULT_VERBOSITY=''
AR=''
AUTOCONF='${SHELL} /home/labtop/libass-0.10.0/missing --run autoconf'
AUTOHEADER='${SHELL} /home/labtop/libass-0.10.0/missing --run autoheader'
AUTOMAKE='${SHELL} /home/labtop/libass-0.10.0/missing --run automake-1.11'
AWK='gawk'
CC='i586-mingw32msvc-gcc'
CCDEPMODE=''
CFLAGS=''
CPP=''
CPPFLAGS=''
CYGPATH_W='echo'
DEFS=''
DEPDIR='.deps'
DSYMUTIL=''
DUMPBIN=''
ECHO_C=''
ECHO_N='-n'
ECHO_T=''
EGREP=''
ENCA_CFLAGS=''
ENCA_LIBS=''
EXEEXT='.exe'
FGREP=''
FONTCONFIG_CFLAGS=''
FONTCONFIG_LIBS=''
FREETYPE_CFLAGS=''
FREETYPE_LIBS=''
FRIBIDI_CFLAGS=''
FRIBIDI_LIBS=''
GREP=''
HARFBUZZ_CFLAGS=''
HARFBUZZ_LIBS=''
HAVE_LIBPNG_FALSE=''
HAVE_LIBPNG_TRUE=''
INSTALL_DATA='${INSTALL} -m 644'
INSTALL_PROGRAM='${INSTALL}'
INSTALL_SCRIPT='${INSTALL}'
INSTALL_STRIP_PROGRAM='$(install_sh) -c -s'
LD=''
LDFLAGS=''
LIBOBJS=''
LIBPNG_CFLAGS=''
LIBPNG_LIBS=''
LIBS=''
LIBTOOL=''
LIPO=''
LN_S=''
LTLIBOBJS=''
MAKEINFO='${SHELL} /home/labtop/libass-0.10.0/missing --run makeinfo'
MKDIR_P='/bin/mkdir -p'
NM=''
NMEDIT=''
OBJDUMP=''
OBJEXT=''
OTOOL64=''
OTOOL=''
PACKAGE='libass'
PACKAGE_BUGREPORT=''
PACKAGE_NAME='libass'
PACKAGE_STRING='libass 0.10.0'
PACKAGE_TARNAME='libass'
PACKAGE_URL=''
PACKAGE_VERSION='0.10.0'
PATH_SEPARATOR=':'
PKG_CONFIG=''
PKG_LIBS_DEFAULT=''
PKG_LIBS_PRIVATE=''
PKG_REQUIRES_DEFAULT=''
PKG_REQUIRES_PRIVATE=''
RANLIB=''
SED=''
SET_MAKE=''
SHELL='/bin/bash'
STRIP=''
VERSION='0.10.0'
ac_ct_CC=''
ac_ct_DUMPBIN=''
am__EXEEXT_FALSE=''
am__EXEEXT_TRUE=''
am__fastdepCC_FALSE=''
am__fastdepCC_TRUE=''
am__include='include'
am__isrc=''
am__leading_dot='.'
am__quote=''
am__tar='${AMTAR} chof - "$$tardir"'
am__untar='${AMTAR} xf -'
bindir='${exec_prefix}/bin'
build='i586-pc-mingw32msvc'
build_alias='i586-mingw32msvc'
build_cpu='i586'
build_os='mingw32msvc'
build_vendor='pc'
datadir='${datarootdir}'
datarootdir='${prefix}/share'
docdir='${datarootdir}/doc/${PACKAGE_TARNAME}'
dvidir='${docdir}'
exec_prefix='NONE'
host='i586-pc-mingw32msvc'
host_alias='i586-mingw32msvc'
host_cpu='i586'
host_os='mingw32msvc'
host_vendor='pc'
htmldir='${docdir}'
includedir='${prefix}/include'
infodir='${datarootdir}/info'
install_sh='${SHELL} /home/labtop/libass-0.10.0/install-sh'
libdir='${exec_prefix}/lib'
libexecdir='${exec_prefix}/libexec'
localedir='${datarootdir}/locale'
localstatedir='${prefix}/var'
lt_ECHO='echo'
mandir='${datarootdir}/man'
mkdir_p='/bin/mkdir -p'
oldincludedir='/usr/include'
pdfdir='${docdir}'
prefix='NONE'
program_transform_name='s,x,x,'
psdir='${docdir}'
sbindir='${exec_prefix}/sbin'
sharedstatedir='${prefix}/com'
sysconfdir='${prefix}/etc'
target_alias=''

## ----------- ##
## confdefs.h. ##
## ----------- ##

/* confdefs.h */
#define PACKAGE_NAME "libass"
#define PACKAGE_TARNAME "libass"
#define PACKAGE_VERSION "0.10.0"
#define PACKAGE_STRING "libass 0.10.0"
#define PACKAGE_BUGREPORT ""
#define PACKAGE_URL ""
#define PACKAGE "libass"
#define VERSION "0.10.0"

configure: exit 1

Bachstelze
June 6th, 2012, 03:22 AM
Oh, it tries to execute the .exe. I don't have this problem here because I have WINE installed, so executing the .exe works. Try with just --host (i.e. without --build).

active1
June 7th, 2012, 05:39 PM
ok, the configure went successfully, but i have a problem now with "make"


labtop@ubuntu:~/libass-0.10.0$ make
make all-recursive
make[1]: Entering directory `/home/labtop/libass-0.10.0'
Making all in libass
make[2]: Entering directory `/home/labtop/libass-0.10.0/libass'
CC ***.lo
CC ***_cache.lo
***_cache.c:23:22: error: ft2build.h: No such file or directory
***_cache.c:24:10: error: #include expects "FILENAME" or <FILENAME>
In file included from ***_cache.c:28:
***_font.h:24:10: error: #include expects "FILENAME" or <FILENAME>
***_font.h:25:10: error: #include expects "FILENAME" or <FILENAME>
In file included from ***_cache.c:28:
***_font.h:49: error: expected specifier-qualifier-list before ‘FT_Library’
In file included from ***_cache.h:25,
from ***_font.h:58,
from ***_cache.c:28:
***_bitmap.h:23:10: error: #include expects "FILENAME" or <FILENAME>
In file included from ***_cache.h:25,
from ***_font.h:58,
from ***_cache.c:28:
***_bitmap.h:39: error: expected declaration specifiers or ‘...’ before ‘FT_Library’
***_bitmap.h:40: error: expected declaration specifiers or ‘...’ before ‘FT_Outline’
***_bitmap.h:51: error: expected declaration specifiers or ‘...’ before ‘FT_Library’
***_bitmap.h:51: error: expected declaration specifiers or ‘...’ before ‘FT_Outline’
***_bitmap.h:51: error: expected declaration specifiers or ‘...’ before ‘FT_Outline’
***_bitmap.h:53: error: expected declaration specifiers or ‘...’ before ‘FT_Vector’
In file included from ***_font.h:58,
from ***_cache.c:28:
***_cache.h:43: error: expected specifier-qualifier-list before ‘FT_Library’
***_cache.h:52: error: expected specifier-qualifier-list before ‘FT_Glyph_Metrics’
In file included from ***_cache.h:57,
from ***_font.h:58,
from ***_cache.c:28:
***_cache_template.h:77: error: expected specifier-qualifier-list before ‘FT_Vector’
***_cache_template.h:96: error: expected specifier-qualifier-list before ‘FT_Vector’
***_cache_template.h:115: error: expected specifier-qualifier-list before ‘FT_Vector’
In file included from ***_cache.c:28:
***_font.h:61: error: expected declaration specifiers or ‘...’ before ‘FT_Library’
***_font.h:64: error: expected declaration specifiers or ‘...’ before ‘FT_Vector’
***_font.h:65: error: expected ‘)’ before ‘face’
***_font.h:71: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘ass_font_get_glyph’
***_font.h:74: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘ass_font_get_kerning’
***_font.h:76: error: expected ‘)’ before ‘*’ token
***_font.h:77: error: expected ‘)’ before ‘lib’
***_font.h:78: error: expected ‘)’ before ‘lib’
In file included from ***_cache.c:34:
***_cache_template.h: In function ‘outline_bitmap_hash’:
***_cache_template.h:77: error: ‘struct outline_bitmap_hash_key’ has no member named ‘advance’
***_cache_template.h:77: error: ‘struct outline_bitmap_hash_key’ has no member named ‘advance’
***_cache_template.h:77: error: ‘struct outline_bitmap_hash_key’ has no member named ‘advance’
***_cache_template.h:77: error: ‘struct outline_bitmap_hash_key’ has no member named ‘advance’
***_cache_template.h:78: error: ‘struct outline_bitmap_hash_key’ has no member named ‘shadow_offset’
***_cache_template.h:78: error: ‘struct outline_bitmap_hash_key’ has no member named ‘shadow_offset’
***_cache_template.h:78: error: ‘struct outline_bitmap_hash_key’ has no member named ‘shadow_offset’
***_cache_template.h:78: error: ‘struct outline_bitmap_hash_key’ has no member named ‘shadow_offset’
***_cache_template.h: In function ‘glyph_hash’:
***_cache_template.h:96: error: ‘struct glyph_hash_key’ has no member named ‘outline’
***_cache_template.h:96: error: ‘struct glyph_hash_key’ has no member named ‘outline’
***_cache_template.h:96: error: ‘struct glyph_hash_key’ has no member named ‘outline’
***_cache_template.h:96: error: ‘struct glyph_hash_key’ has no member named ‘outline’
***_cache_template.h:97: error: ‘struct glyph_hash_key’ has no member named ‘flags’
***_cache_template.h:97: error: ‘struct glyph_hash_key’ has no member named ‘flags’
***_cache_template.h:98: error: ‘struct glyph_hash_key’ has no member named ‘border_style’
***_cache_template.h:98: error: ‘struct glyph_hash_key’ has no member named ‘border_style’
***_cache_template.h: In function ‘drawing_hash’:
***_cache_template.h:115: error: ‘struct drawing_hash_key’ has no member named ‘outline’
***_cache_template.h:115: error: ‘struct drawing_hash_key’ has no member named ‘outline’
***_cache_template.h:115: error: ‘struct drawing_hash_key’ has no member named ‘outline’
***_cache_template.h:115: error: ‘struct drawing_hash_key’ has no member named ‘outline’
***_cache_template.h:116: error: ‘struct drawing_hash_key’ has no member named ‘border_style’
***_cache_template.h:116: error: ‘struct drawing_hash_key’ has no member named ‘border_style’
***_cache_template.h:117: error: ‘struct drawing_hash_key’ has no member named ‘scale’
***_cache_template.h:117: error: ‘struct drawing_hash_key’ has no member named ‘scale’
***_cache_template.h:118: error: ‘struct drawing_hash_key’ has no member named ‘hash’
***_cache_template.h:118: error: ‘struct drawing_hash_key’ has no member named ‘hash’
***_cache_template.h:119: error: ‘struct drawing_hash_key’ has no member named ‘text’
In file included from ***_cache.c:36:
***_cache_template.h: In function ‘outline_bitmap_compare’:
***_cache_template.h:77: error: ‘struct outline_bitmap_hash_key’ has no member named ‘advance’
***_cache_template.h:77: error: ‘struct outline_bitmap_hash_key’ has no member named ‘advance’
***_cache_template.h:77: error: ‘struct outline_bitmap_hash_key’ has no member named ‘advance’
***_cache_template.h:77: error: ‘struct outline_bitmap_hash_key’ has no member named ‘advance’
***_cache_template.h:78: error: ‘struct outline_bitmap_hash_key’ has no member named ‘shadow_offset’
***_cache_template.h:78: error: ‘struct outline_bitmap_hash_key’ has no member named ‘shadow_offset’
***_cache_template.h:78: error: ‘struct outline_bitmap_hash_key’ has no member named ‘shadow_offset’
***_cache_template.h:78: error: ‘struct outline_bitmap_hash_key’ has no member named ‘shadow_offset’
***_cache_template.h: In function ‘glyph_compare’:
***_cache_template.h:96: error: ‘struct glyph_hash_key’ has no member named ‘outline’
***_cache_template.h:96: error: ‘struct glyph_hash_key’ has no member named ‘outline’
***_cache_template.h:96: error: ‘struct glyph_hash_key’ has no member named ‘outline’
***_cache_template.h:96: error: ‘struct glyph_hash_key’ has no member named ‘outline’
***_cache_template.h:97: error: ‘struct glyph_hash_key’ has no member named ‘flags’
***_cache_template.h:97: error: ‘struct glyph_hash_key’ has no member named ‘flags’
***_cache_template.h:98: error: ‘struct glyph_hash_key’ has no member named ‘border_style’
***_cache_template.h:98: error: ‘struct glyph_hash_key’ has no member named ‘border_style’
***_cache_template.h: In function ‘drawing_compare’:
***_cache_template.h:115: error: ‘struct drawing_hash_key’ has no member named ‘outline’
***_cache_template.h:115: error: ‘struct drawing_hash_key’ has no member named ‘outline’
***_cache_template.h:115: error: ‘struct drawing_hash_key’ has no member named ‘outline’
***_cache_template.h:115: error: ‘struct drawing_hash_key’ has no member named ‘outline’
***_cache_template.h:116: error: ‘struct drawing_hash_key’ has no member named ‘border_style’
***_cache_template.h:116: error: ‘struct drawing_hash_key’ has no member named ‘border_style’
***_cache_template.h:117: error: ‘struct drawing_hash_key’ has no member named ‘scale’
***_cache_template.h:117: error: ‘struct drawing_hash_key’ has no member named ‘scale’
***_cache_template.h:118: error: ‘struct drawing_hash_key’ has no member named ‘hash’
***_cache_template.h:118: error: ‘struct drawing_hash_key’ has no member named ‘hash’
***_cache_template.h:119: error: ‘struct drawing_hash_key’ has no member named ‘text’
***_cache_template.h:119: error: ‘struct drawing_hash_key’ has no member named ‘text’
***_cache.c: In function ‘outline_destruct’:
***_cache.c:162: error: ‘OutlineHashValue’ has no member named ‘outline’
***_cache.c:163: warning: implicit declaration of function ‘outline_free’
***_cache.c:163: error: ‘OutlineHashValue’ has no member named ‘lib’
***_cache.c:163: error: ‘OutlineHashValue’ has no member named ‘outline’
***_cache.c:164: error: ‘OutlineHashValue’ has no member named ‘border’
***_cache.c:165: error: ‘OutlineHashValue’ has no member named ‘lib’
***_cache.c:165: error: ‘OutlineHashValue’ has no member named ‘border’
***_cache.c:167: error: ‘DrawingHashKey’ has no member named ‘text’
make[2]: *** [***_cache.lo] Error 1
make[2]: Leaving directory `/home/labtop/libass-0.10.0/libass'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/labtop/libass-0.10.0'
make: *** [all] Error 2
hmm i think that there is something must be edited in the sourcecode (i did something like that with pkg-config)

any idea ?

active1
June 7th, 2012, 06:19 PM
i solved the last problem by compiling freetype2 and fribidi
it looks like i forgot compiling them and installed them from a .deb package, sorry

anyway, i think that i compiled libass successfully now:

make

labtop@ubuntu:~/libass-0.10.0$ make
make all-recursive
make[1]: Entering directory `/home/labtop/libass-0.10.0'
Making all in libass
make[2]: Entering directory `/home/labtop/libass-0.10.0/libass'
CC ***.lo
CC ***_cache.lo
CC ***_font.lo
CC ***_fontconfig.lo
CC ***_render.lo
CC ***_utils.lo
CC ***_bitmap.lo
CC ***_library.lo
CC ***_drawing.lo
CC ***_parse.lo
CC ***_render_api.lo
CC ***_shaper.lo
CC ***_strtod.lo
CCLD libass.la
libtool: link: warning: undefined symbols not allowed in i586-pc-mingw32msvc shared libraries
make[2]: Leaving directory `/home/labtop/libass-0.10.0/libass'
make[2]: Entering directory `/home/labtop/libass-0.10.0'
make[2]: Leaving directory `/home/labtop/libass-0.10.0'
make[1]: Leaving directory `/home/labtop/libass-0.10.0'make install

labtop@ubuntu:~/libass-0.10.0$ sudo make install
Making install in libass
make[1]: Entering directory `/home/labtop/libass-0.10.0/libass'
make[2]: Entering directory `/home/labtop/libass-0.10.0/libass'
test -z "/usr/local/lib" || /bin/mkdir -p "/usr/local/lib"
/bin/bash ../libtool --mode=install /usr/bin/install -c libass.la '/usr/local/lib'
libtool: install: /usr/bin/install -c .libs/libass.lai /usr/local/lib/libass.la
libtool: install: /usr/bin/install -c .libs/libass.a /usr/local/lib/libass.a
libtool: install: chmod 644 /usr/local/lib/libass.a
libtool: install: i586-mingw32msvc-ranlib /usr/local/lib/libass.a
----------------------------------------------------------------------
Libraries have been installed in:
/usr/local/lib

If you ever happen to want to link against installed libraries
in a given directory, LIBDIR, you must either use libtool, and
specify the full pathname of the library, or use the `-LLIBDIR'
flag during linking and do at least one of the following:
- add LIBDIR to the `PATH' environment variable
during execution
- add LIBDIR to the `LD_RUN_PATH' environment variable
during linking
- use the `-LLIBDIR' linker flag
- have your system administrator add LIBDIR to `/etc/ld.so.conf'

See any operating system documentation about shared libraries for
more information, such as the ld(1) and ld.so(8) manual pages.
----------------------------------------------------------------------
test -z "/usr/local/include/***" || /bin/mkdir -p "/usr/local/include/***"
/usr/bin/install -c -m 644 ***.h ***_types.h '/usr/local/include/***'
make[2]: Leaving directory `/home/labtop/libass-0.10.0/libass'
make[1]: Leaving directory `/home/labtop/libass-0.10.0/libass'
make[1]: Entering directory `/home/labtop/libass-0.10.0'
make[2]: Entering directory `/home/labtop/libass-0.10.0'
make[2]: Nothing to be done for `install-exec-am'.
test -z "/usr/local/lib/pkgconfig" || /bin/mkdir -p "/usr/local/lib/pkgconfig"
/usr/bin/install -c -m 644 libass.pc '/usr/local/lib/pkgconfig'
make[2]: Leaving directory `/home/labtop/libass-0.10.0'
make[1]: Leaving directory `/home/labtop/libass-0.10.0'

but i can't find the .dll
i don't think that i have a problem now, do i ?

Bachstelze
June 7th, 2012, 11:07 PM
Like I said, you have to take care of the dependencies!


***_cache.c:23:22: error: ft2build.h: No such file or directory

ft2build.h is part of FreeType, you must compile a mingw version of libfreetype, and install it.

Bachstelze
June 7th, 2012, 11:48 PM
Meh, I got it to build but it still only builds a .a, not the .dll. Then I don't know, ask the mingw guys.

active1
June 10th, 2012, 12:07 AM
ok, thank you "so much!" Bachstelze :)