Error while cross compiling poppler package - c

I am getting the following error while cross compiling Poppler package on Ubuntu
After configuring I gave command make
then while making the following error has come
GlobalParams.cc:81:35: fatal error: fontconfig/fontconfig.h: No such file or directory
compilation terminated.
make[3]: * [libpoppler_la-GlobalParams.lo] Error 1
make[3]: Leaving directory /media/COMMON/WorkSpace/Packages/poppler-0.41.0/poppler'
make[2]: *** [all] Error 2
make[2]: Leaving directory/media/COMMON/WorkSpace/Packages/poppler-0.41.0/poppler'
make[1]: * [all-recursive] Error 1
make[1]: Leaving directory `/media/COMMON/WorkSpace/Packages/poppler-0.41.0'
make: *** [all] Error 2
I even check the includes which I had given while configuring it has the fontconfig/fontconfig.h but den still the error is coming.

It looks like you should cross-compile the fontconfig library,then include the headers and libs into Popper.
Download the latest fontconfig and excute the conmmand below:
PKG_CONFIG_PATH=/opt/poppLib/lib/pkgconfig ./configureCC=arm-linux-gcc --host=arm-linux --build=i386-linux --prefix=/opt/poppLib--with-arch=arm --enable-libxml2 --disable-docs
make && make install
then add the include and lib in your Popper ,try compile it again.

Related

Errors in building INET in omnet++ 5.5.1

I have installed OMNeT++ 5.5.1 in ubuntu 18.04 successfully and it is working.
However, I am getting the following errors while building the latest version of INET. I followed the instructions ( using the IDE) given in the document. Can anyone please help me to get ride of it? Thank you.
/tmp/cc4FhpSO.s: Assembler messages:
/tmp/cc4FhpSO.s: Fatal error: can't close ../out/gcc-debug/src/inet/visualizer/base/MediumVisualizerBase.o: No space left on device
Makefile:1754: recipe for target '../out/gcc-debug/src/inet/visualizer/base/MediumVisualizerBase.o' failed
make[1]: *** [../out/gcc-debug/src/inet/visualizer/base/MediumVisualizerBase.o] Error 1
make[1]: *** Waiting for unfinished jobs....
make[1]: Leaving directory '/home/tech/Downloads/inet4/src'
make: *** [all] Error 2
Makefile:7: recipe for target 'all' failed
"make MODE=debug -j2 all" terminated with exit code 2. Build might be incomplete.
20:48:19 Build Failed. 5 errors, 0 warnings. (took 11m:39s.915ms)
It seems that you don't have free space in the disk:
/tmp/cc4FhpSO.s: Fatal error: can't close ../out/gcc-debug/src/inet/visualizer/base/MediumVisualizerBase.o: No space left on device

Linking static lib (potracelib) with another lib, what to write in Makefile.am?

I need to link libpotrace and compile it into libgerbv. What should I write in Makefile.am? I tried various things like LDADD, LIBDIR, LDFLAGS etc., but I was not successful.
How my structure look like:
gerbv/gerbv-test -> files from git, master brach
gerbv/libs/potrace/potrace-test -> potrace -> files from sourceforge.com, latest release
I use Debian Jessie, I can compile both programs separately, both I did not figured out, how can I link potrace to gerbv and compile it. The header file (.h) is included properly, but I haven't had any success with linking .so or .a/la lib. Even no success with installed potrace in /usr/local/lib or /usr/lib.
Can anyone direct me? The best will be if you can download both programs, compile it without error and then write what you put into the gerbv/src/makefile.Am.
UPDATED
I dowloaded clean releases and did this ONLY this modifies:
/root/NBP/gerbv/gerbv-test/src/Makefile.am
added
libgerbv_la_LIBADD = libpotrace.la # src/Makefile.am:84: error: use 'libgerbv_la_LIBADD', not 'libgerbv_la_LDADD'
libgerbv_la_LIBDIR = /root/NBP/gerbv/libs/potrace/potrace-old/src/.libs
#libgerbv_la_DEPENDENCIES = libpotrace.la
/root/NBP/gerbv/gerbv-test/src/exportimage.c
added at the top
#include "../../libs/potrace/potrace-test/src/potracelib.h"
added into void exportimage_render_to_surface_and_destroy(...), this will test, if the shared lib is properly linked. exportimage.c is part of libgerbv where I need to include libpotrace.
char *v = potrace_version();
After doing this modifications I build it via:
libpotrace
root:~/NBP/gerbv/libs/potrace/potrace-test# autoreconf && ./configure --with-libpotrace && make
runs without a problem...
gerbv/libgerbv
root:~/NBP/gerbv/gerbv-test# autoreconf && ./configure && make
This results with:
...
make[3]: Entering directory '/root/NBP/gerbv/gerbv-test/src'
make[3]: *** No rule to make target 'libpotrace.la', needed by 'libgerbv.la'. Stop.
make[3]: Leaving directory '/root/NBP/gerbv/gerbv-test/src'
Makefile:498: recipe for target 'all' failed
make[2]: *** [all] Error 2
make[2]: Leaving directory '/root/NBP/gerbv/gerbv-test/src'
Makefile:472: recipe for target 'all-recursive' failed
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory '/root/NBP/gerbv/gerbv-test'
Makefile:401: recipe for target 'all' failed
make: *** [all] Error 2
Solved with this Makefile.am addition:
libgerbv_la_LIBADD = ../../libs/potrace/potrace/src/libpotrace.la
libgerbv_la_DEPENDENCIES = ../../libs/potrace/potrace/src/libpotrace.la

Make error for stellarisware

I got a stellaris board to explore the power of arm. I'm using arch linux. I want to setup a toolchain based on eclipse, but if I donwload the SW-LM3S-9453.exe, unzip it, and try to make it I got the following errors:
[root#vaio stellaris]# make
make[1]: Entering directory '/home/erbal/src/stellaris/driverlib'
make[2]: Entering directory '/home/erbal/src/stellaris/driverlib'
CC adc.c
as: unrecognized option '-mcpu=cortex-m3'
../makedefs:186: recipe for target 'gcc-cm3/adc.o' failed
make[2]: *** [gcc-cm3/adc.o] Error 1
make[2]: Leaving directory '/home/erbal/src/stellaris/driverlib'
Makefile:41: recipe for target 'all' failed
make[1]: *** [all] Error 2
make[1]: Leaving directory '/home/erbal/src/stellaris/driverlib'
Makefile:46: recipe for target 'all' failed
make: *** [all] Error 2
What am I missing?
Have you verified which toolchain is being used? That error would be appropriate if you are trying to use the host toolchain rather than a toolchain built for ARM.

glibc not properly compiling

While compiling glibc 2.11, I get the following error. Any idea how to solve this.
In file included from ../sysdeps/unix/sysv/linux/syslog.c:10:
../misc/syslog.c: In function ‘__vsyslog_chk’:
../misc/syslog.c:123: sorry, unimplemented: inlining failed in call to ‘syslog’: function body not available
../misc/syslog.c:155: sorry, unimplemented: called from here
make[2]: *** [/home/alice/Desktop/glib-build/misc/syslog.o] Error 1
make[2]: Leaving directory `/home/alice/Desktop/glibc-2.11/misc'
make[1]: *** [misc/subdir_lib] Error 2
make[1]: Leaving directory `/home/alice/Desktop/glibc-2.11'
make: *** [all] Error 2
Apparently, this is a known problem with building glibc on Ubuntu. In essence:
glibc does not build with _FORTIFY_SOURCE enabled, and Ubuntu compiles stuff with -D_FORTIFY_SOURCE=2.
You need to disable this by undefining _FORTIFY_SOURCE. i.e. append -U_FORTIFY_SOURCE to your CFLAGS.

Error Building Clang

I am trying to build Clang on Linux (Amazon's EC2). I am running the make as per the guide at:
http://clang.llvm.org/get_started.html
I am getting the following link error messages:
llvm[2]: Linking Debug+Asserts executable opt
/home/ec2-user/benchmark/build/tools/opt/Debug+Asserts/opt.o: In function `llvm::ParseIR(llvm::MemoryBuffer*, llvm::SMDiagnostic&, llvm::LLVMContext&)':
opt.cpp:(.text._ZN4llvm7ParseIREPNS_12MemoryBufferERNS_12SMDiagnosticERNS_11LLVMContextE[llvm::Pars eIR(llvm::MemoryBuffer*, llvm::SMDiagnostic&, llvm::LLVMContext&)]+0x5f): undefined reference to `llvm::ParseBitcodeFile(llvm::MemoryBuffer*, llvm::LLVMContext&, std::basic_string<char, std::char_traits<char>, std::allocator<char> >*)'
collect2: ld returned 1 exit status
make[2]: *** [/home/ec2-user/benchmark/build/Debug+Asserts/bin/opt] Error 1
make[2]: Leaving directory `/home/ec2-user/benchmark/build/tools/opt'
make[1]: *** [opt/.makeall] Error 2
make[1]: Leaving directory `/home/ec2-user/benchmark/build/tools'
make: *** [all] Error 1
Does anyone know what this means?
Edit: I rebuilt the entire project from svn and now I am getting the following error:
COMPILE: clang_linux/asan-i386/i386: /home/ec2-user/benchmark/llvm/projects/compiler-rt/lib/asan/asan_rtl.cc
/home/ec2-user/benchmark/llvm/projects/compiler-rt/lib/asan/asan_rtl.cc:28:10: fatal error: 'new' file not found
#include <new>
^
1 error generated.
make[5]: *** [/home/ec2-user/benchmark/build/tools/clang/runtime/compiler-rt/clang_linux/asan-i386/i386/SubDir.lib__asan/asan_rtl.o] Error 1
make[5]: Leaving directory `/home/ec2-user/benchmark/llvm/projects/compiler-rt'
make[4]: *** [BuildRuntimeLibraries] Error 2
make[4]: Leaving directory `/home/ec2-user/benchmark/build/tools/clang/runtime/compiler-rt'
make[3]: *** [compiler-rt/.makeall] Error 2
make[3]: Leaving directory `/home/ec2-user/benchmark/build/tools/clang/runtime'
make[2]: *** [all] Error 1
make[2]: Leaving directory `/home/ec2-user/benchmark/build/tools/clang'
make[1]: *** [clang/.makeall] Error 2
make[1]: Leaving directory `/home/ec2-user/benchmark/build/tools'
make: *** [all] Error 1
I followed this and I was able to build it successfully in the first shot itself.
I guess, you are hitting issues with your C++ standard library headers. So you need to follow the Step #6 in the above mentioned link!
Start a fresh build and please ensure that you satisfy this prerequisite.

Resources