Compiling libgdiplus-2.10.9 on Centos5 for Mono - compilation

Fresh install of Centos5 32 & 64 on vmware vps...
yum install gcc glib2-devel bison libX11-devel freetype-devel fontconfig-devel gcc-c++ libpng-devel
wget http://download.mono-project.com/sources/libgdiplus/libgdiplus-2.10.9.tar.bz2
tar jxfv libgdiplus-2.10.9.tar.bz2
cd libgdiplus-2.10.9
./configure --prefix=/opt/mono
make && make install
Here is the output:
[root#localhost libgdiplus-2.10.9]# make
make all-recursive
make[1]: Entering directory `/usr/local/src/libgdiplus-2.10.9'
Making all in pixman
make[2]: Entering directory `/usr/local/src/libgdiplus-2.10.9/pixman'
make all-recursive
make[3]: Entering directory `/usr/local/src/libgdiplus-2.10.9/pixman'
Making all in pixman
make[4]: Entering directory `/usr/local/src/libgdiplus-2.10.9/pixman/pixman'
source='pixman-access.c' object='pixman-access.lo' libtool=yes \
DEPDIR=.deps depmode=none /bin/sh ../depcomp \
/bin/sh ../libtool --tag=CC --mode=compile gcc -DHAVE_CONFIG_H -I. -I.. -g -O2 -Wall -fvisibility=hidden -c -o pixman-access.lo pixman-access.c
../libtool: line 852: X--tag=CC: command not found
../libtool: line 885: libtool: ignoring unknown tag : command not found
../libtool: line 852: X--mode=compile: command not found
../libtool: line 1018: *** Warning: inferring the mode of operation is deprecated.: command not found
../libtool: line 1019: *** Future versions of Libtool will require --mode=MODE be specified.: command not found
../libtool: line 1162: Xgcc: command not found
../libtool: line 1162: X-DHAVE_CONFIG_H: command not found
../libtool: line 1162: X-I.: command not found
../libtool: line 1162: X-I..: command not found
../libtool: line 1162: X-g: command not found
../libtool: line 1162: X-O2: command not found
../libtool: line 1162: X-Wall: command not found
../libtool: line 1162: X-fvisibility=hidden: command not found
../libtool: line 1162: X-c: command not found
../libtool: line 1214: Xpixman-access.lo: command not found
../libtool: line 1219: libtool: compile: cannot determine name of library object from `': command not found
make[4]: *** [pixman-access.lo] Error 1
make[4]: Leaving directory `/usr/local/src/libgdiplus-2.10.9/pixman/pixman'
make[3]: *** [all-recursive] Error 1
make[3]: Leaving directory `/usr/local/src/libgdiplus-2.10.9/pixman'
make[2]: *** [all] Error 2
make[2]: Leaving directory `/usr/local/src/libgdiplus-2.10.9/pixman'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/usr/local/src/libgdiplus-2.10.9'
make: *** [all] Error 2
[root#localhost libgdiplus-2.10.9]#

export echo=echo
From this nabble:
For some reason the libtool script being generated by autogen contains lines referring to "$echo message" instead of "echo message".
exporting echo=echo worked, despite being totally wierd.

This is my solution:
[root#oscar libgdiplus-2.10.9]# pwd
/root/libgdi/libgdiplus-2.10.9
[root#oscar libgdiplus-2.10.9]# ls -la libtool
-rwxr-xr-x 1 root root 292559 Jul 8 14:12 libtool
[root#oscar libgdiplus-2.10.9]# ls -la pixman/libtool
-rwxr-xr-x 1 root root 211592 Jul 8 14:12 pixman/libtool
You can see that the two files "libtool" are different:
mv pixman/libtool pixman/libtool.old
cp libtool pixman/libtool
It works!!!

Try install autoconf >= 2.68 and use
yum install autoconf-2.68 gcc glib2-devel bison libX11-devel freetype-devel fontconfig-devel gcc-c++ libpng-devel
wget http://download.mono-project.com/sources/libgdiplus/libgdiplus-2.10.9.tar.bz2
tar jxfv libgdiplus-2.10.9.tar.bz2
cd libgdiplus-2.10.9
autoreconf -fiv
./configure --prefix=/opt/mono
make && make install

I just compiled libgdiplus-2.10.9 on RHEL 4 !!! Used both fixes:
export echo=echo
and
mv pixman/libtool pixman/libtool.old
cp libtool pixman/libtool
Thanks guys for all this. You saved me some days:)

I ran into the same problem and found a solution in a forum. Please try to run autoconfig fi from the shell in the source directory (for example '/usr/local/src/libgdiplus-2.10.9').
As far as i understand this is an issue with 'libtool', libgdiplus should compile after running this command.

I have succeeded compiling libgdiplus-2.10.9 on CentOS 5 (x86-64) after installing required packages. It was essential to have autoconf, automake and libtool in order to update configure scripts.
yum install autoconf.noarch automake libtool.x86_64
yum install fontconfig-devel.x86_64 freetype-devel.x86_64 glib2-devel.x86_64
autoreconf -fiv
./configure --prefix=/usr/local/mono
make
make install

Related

Problems packaging on buster

I'm trying to build some packages from source, and I'm facing trouble that I don't understand despite lots of googling. This happens with some packages, while others compile and get packed normally. One of the softwares that fail to package is libva.
When I use;
export DH_VERBOSE=1 && dpkg-buildpackage -uc -us -j4 -d --build=full --host-arch=amd64 --target-arch=amd64
I get this error;
checking build system type... Invalid configuration `./autogen.sh': machine `./autogen.sh' not recognized
configure: error: /bin/bash ./config.sub ./autogen.sh failed
find ! -ipath "./debian/*" -a ! \( -path '*/.git/*' -o -path '*/.hg/*' -o -path '*/.bzr/*' -o -path '*/.svn/*' -o -path '*/CVS/*' \) -a -type f -exec md5sum {} + -o -type l -printf "symlink %p
" > debian/autoreconf.after
dh_autoreconf: ./autogen.sh ./autogen.sh returned exit code 1
make[1]: *** [debian/rules:12: override_dh_autoreconf] Error 2
make[1]: Leaving directory '/media/deyaa/BBuffer/buildfolder/intel/libva/libva-2.14.0'
make: *** [debian/rules:9: binary] Error 2
dpkg-buildpackage: error: fakeroot debian/rules binary subprocess returned exit status 2
I also have the architecture set up in the control file.
However when I run;
autogen.sh --prefix=/usr --libdir=/usr/lib/x86_64-linux-gnu --enable-drm --enable-x11 --enable-glx --enable-wayland --enable-va-messaging
it compiles normally, but I face another problem trying to install it to the same folder under fakeroot.
$ fakeroot make install
Making install in va
make[1]: Entering directory '/media/deyaa/BBuffer/buildfolder/intel/libva/build/va'
Making install in drm
make[2]: Entering directory '/media/deyaa/BBuffer/buildfolder/intel/libva/build/va/drm'
make[3]: Entering directory '/media/deyaa/BBuffer/buildfolder/intel/libva/build/va/drm'
make[3]: Nothing to be done for 'install-exec-am'.
/usr/bin/mkdir -p '/usr/include/va'
/usr/bin/install -c -m 644 ../../../libva/va/drm/va_drm.h '/usr/include/va'
/usr/bin/install: cannot remove '/usr/include/va/va_drm.h': Permission denied
make[3]: *** [Makefile:502: install-libva_drmincludeHEADERS] Error 1
make[3]: Leaving directory '/media/deyaa/BBuffer/buildfolder/intel/libva/build/va/drm'
make[2]: *** [Makefile:620: install-am] Error 2
make[2]: Leaving directory '/media/deyaa/BBuffer/buildfolder/intel/libva/build/va/drm'
make[1]: *** [Makefile:755: install-recursive] Error 1
make[1]: Leaving directory '/media/deyaa/BBuffer/buildfolder/intel/libva/build/va'
make: *** [Makefile:459: install-recursive] Error 1
I get similar errors while building other packages, like aria2, and intel-media.
I compile on debian buster, with stock gcc, glibc, and libtool.
Could you offer any help or pointers?

LibPNG building issue on Windows 10

Im trying to build libpng on Windows 10 to get win32 binaries but having an issue related, i supposed, to awk parsing files with CRLF line endings. I've tried to convert files with dos2unix command, but without success, result the same - on the make command I've getting next output:
sh-3.1$ make
rm -f pnglibconf.c pnglibconf.tf[45]
gawk -f ./scripts/options.awk out=pnglibconf.tf4 version=search\
./pngconf.h ./scripts/pnglibconf.dfa\
./pngusr.dfa 1>&2
gawk -f ./scripts/options.awk out=pnglibconf.tf5 pnglibconf.tf4 1>&2
options.awk: bad line (10): com
make: *** [pnglibconf.c] Error 1
Compiler is MinGW with MSYS v1.0 on WIndows 10 x86, libpng version is 1637. How to solve this issue?
Update: solved by downloading tar.gz archive, but having new issue
sh-3.1$ make make all-am make[1]: Entering directory `/c/Users/user/Downloads/libpng-1.6.37.tar/libpng-1.6.37' depbase=`echo contrib/tools/pngfix.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\ gcc -DHAVE_CONFIG_H -I. -g -O2 -MT contrib/tools/pngfix.o -MD -MP -MF $depbase.Tpo -c -o contrib/tools/pngfix.o contrib/tools/pngfix.c &&\ mv -f $depbase.Tpo $depbase.Po In file included from contrib/tools/../../png.h:330,
from contrib/tools/pngfix.c:44:
contrib/tools/../../pnglibconf.h:206:54: error: expected identifier or '(' before '-' token
#define PNG_TEXT_Z_DEFAULT_STRATEGY 0
^
In file included from contrib/tools/../../png.h:335,
from contrib/tools/pngfix.c:44:
contrib/tools/../../pngconf.h:524:9: error: unknown type name 'ptrdiff_t'
typedef ptrdiff_t png_ptrdiff_t;
^~~~~~~~~
make[1]: *** [contrib/tools/pngfix.o] Error 1 make[1]: Leaving directory `/c/Users/user/Downloads/libpng-1.6.37.tar/libpng-1.6.37' make: *** [all] Error 2
It has been experimentally verified that this problem does not occur on Linux.
The solution for me was to change the line breaks on scripts/pnglibconf.dfa from CRLF to LF.
Solved. Summary: use tar.gz or xz archive with unix LF, and edit pnglibconf.h generated during compilation so there is no line breaks.

cgywin64: make -f Makefile

I'm trying to use mpi-ikl-simplemkl-1.0 (http://www.mloss.org/software/view/174/)
I'm using Windows 8.1 and I've installed cgywin64. When I type (on cgywin bash screen):
make -f Makefile
The result is:
gcc-4.2 -03 -ffast-math -fomit-frame-pointer -fPIC -c -o svm.o svm.cpp
gcc-4.2: error: spawn: No such file or directory
makefile:32: recipe for target 'svm.o' failed
make: *** [svm.o] Error 1
What should I do?
The internet wisdom seems to be that you should do one of:
Remove /bin from PATH
Remove /usr/bin from PATH
Reinstall gcc (possibly remove all versions of gcc first)

Installing ECL on OSX

I need to try embeddable common lisp on my OSX. Unfortunately I think a ran into problems installing and have no idea why. I installed ecl-13.5.1 and followed the instructions on http://ecls.sourceforge.net/new-manual/pr01s06.html but ran into problems during the make command. Here's some of the messages:
haukurs-mbp:ecl-13.5.1 Haukur$ make
cd build; /Applications/Xcode.app/Contents/Developer/usr/bin/make
if (echo c gmp gc libffi atomic | grep gmp); then \
cd gmp && /Applications/Xcode.app/Contents/Developer/usr/bin/make install && \
cd .. && mv include/gmp.h ecl/ && rmdir include && \
mv ./libgmp.a ./libeclgmp.a; \
fi
c gmp gc libffi atomic
gcc -fPIC -fno-common `test -f 'gen-fac_ui_.c' || echo '/Users/Haukur/ecl-13.5.1/src/gmp/'`gen-fac_ui_.c -o gen-fac_ui
Undefined symbols for architecture x86_64:
"_main", referenced from:
implicit entry/start for main executable
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make[2]: *** [gen-fac_ui] Error 1
make[1]: *** [libeclgmp.a] Error 2
make: *** [all] Error 2
and the make install message:
haukurs-mbp:ecl-13.5.1 Haukur$ make install
cd build; /Applications/Xcode.app/Contents/Developer/usr/bin/make install
# Here we would use the option -s but the install program in sourceforge-solaris
# is broken.
/bin/sh /Users/Haukur/ecl-13.5.1/src/gc/mkinstalldirs /usr/local/bin/ /usr/local/lib/ \
/usr/local/lib/ecl-13.5.1/ /usr/local/include/ /usr/local/include//ecl
mkdir -p -- /usr/local/lib/ecl-13.5.1/ /usr/local/include/ /usr/local/include//ecl
I just don't understand the errorcodes so I don't know what went wrong. Now the website says to use OS X Tiger but I have Maverick 10.9.3. Maybe this is the error and ecl won't build with this operating system. If not,can I fix it? Unfortunately my searches have come up empty so any help greatly appreciated.

Compilation failed for Lighttpd 1.4.26 on Lenny AMD64

yesterday I tried to compile Lighttpd 1.4.26 + mod_h264 on Debian Lenny ( AMD64 ) but it failed. I got those errors :
mail:/usr/src/lighttpd/lighttpd-1.4.26# make
make all-recursive
make[1]: Entering directory `/usr/src/lighttpd/lighttpd-1.4.26'
Making all in src
make[2]: Entering directory `/usr/src/lighttpd/lighttpd-1.4.26/src'
gcc -DHAVE_CONFIG_H -DHAVE_VERSION_H -DLIBRARY_DIR="\"/usr/local/lib\"" -DSBIN_DIR="\"/usr/local/sbin\"" -I. -I.. -D_REENTRANT -D__EXTENSIONS__ -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGE_FILES -g -O2 -Wall -W -Wshadow -pedantic -std=gnu99 -MT lemon.o -MD -MP -MF .deps/lemon.Tpo -c -o lemon.o lemon.c
mv -f .deps/lemon.Tpo .deps/lemon.Po
/bin/sh ../libtool --tag=CC --mode=link gcc -g -O2 -Wall -W -Wshadow -pedantic -std=gnu99 -o lemon lemon.o
../libtool: line 827: X--tag=CC: command not found
../libtool: line 860: libtool: ignoring unknown tag : command not found
../libtool: line 827: X--mode=link: command not found
../libtool: line 994: *** Warning: inferring the mode of operation is deprecated.: command not found
../libtool: line 995: *** Future versions of Libtool will require --mode=MODE be specified.: command not found
../libtool: line 2239: X-g: command not found
../libtool: line 2239: X-O2: command not found
../libtool: line 2239: X-Wall: command not found
../libtool: line 2239: X-W: command not found
../libtool: line 2239: X-Wshadow: command not found
../libtool: line 2239: X-pedantic: command not found
../libtool: line 2239: X-std=gnu99: command not found
../libtool: line 2408: Xlemon: command not found
../libtool: line 2413: X: command not found
../libtool: line 2420: Xlemon: command not found
../libtool: line 5193: Xgcc "" "" "" "" "" "" "" -o #OUTPUT# lemon.o : command not found
../libtool: line 5194: Xgcc "" "" "" "" "" "" "" -o #OUTPUT# lemon.o : command not found
../libtool: line 5199: X: command not found
../libtool: line 5203: : command not found
rm -f configparser.h
../src/lemon -q ./configparser.y ./lempar.c
make[2]: ../src/lemon: Command not found
make[2]: *** [configparser.c] Error 127
make[2]: Leaving directory `/usr/src/lighttpd/lighttpd-1.4.26/src'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/usr/src/lighttpd/lighttpd-1.4.26'
make: *** [all] Error 2
After lot of researches on IRC, Google and Mailing list Libtools seems not really up to date for compiling this. Libtootl 2.2+ is not in the backports for AMD64 on Lenny...
Anyone have an idea about the issue, or a solution ?
Thanks !
In my experience, these types of errors mean that your libtool script was generated using a different version of libtool than currently installed. Try this:
make maintainer-clean
./autogen.sh
./configure
make
In any case, the problem is not that you don't have libtool 2.2, because the autogen.sh script claims only to work with 1.5, and configure.ac uses 1.5-style libtool calls.
If you've already done the "autogen.sh" thing (which is the most likely fix) then post the parameters you are giving to "./configure" as it's possible one of those is causing the problems you are seeing (e.g. an attempt to add a feature that requires a dependency that the lighttpd build system doesn't handle correctly on your system).
I had the exact same problem while trying to install lighttpd with the H264 Streaming Module. The solution that ended up working for me was changing the ./configure line to remove --prefix.
make maintainer-clean
./autogen.sh
./configure --enable-maintainer-mode
make
make install

Resources