Tag Info

Hot answers tagged

5

Use ld -soname: $ mkdir dir1 dir2 $ gcc -shared -fPIC -o dir1/func.so func1.c -Wl,-soname,func.so $ gcc -shared -fPIC -o dir2/func.so func2.c -Wl,-soname,func.so $ gcc test.c dir1/func.so $ ldd a.out linux-vdso.so.1 => (0x00007ffda80d7000) func.so => not found libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f639079e000) ...


5

According to your log file, you are missing the libmfhdf.a and libdf.a static libraries. Here is the interesting part of the log: gcc: error: /usr/lib/libmfhdf.a: No such file or directory gcc: error: /usr/lib/libdf.a: No such file or directory configure:3124: $? = 0 configure:3113: /usr/bin/h4cc -v >&5 gcc: error: /usr/lib/libmfhdf.a: No such file ...


3

The kernel version has no bearing on compiling code for another system. Unfortunately without being able to install any software on the host system you're going to be out of luck. You need a compiler suite that will generate code for your target platform (ARM in this case) and by default such a compiler suite isn't installed on most systems - if they have a ...


3

There is a GNU standard naming scheme for compilers and other parts of the toolchain: <target triplet>-<tool name> The target triplet is of the form <machine>-<vendor>-<operatingsystem> And the tool name is gcc for the compiler, or another tool name like ld or strip or ar, etc... The default compiler, the one that ...


2

It tends to get a little messy. You get folders like bin/, etc/, include, lib/ and source/ in your home folder. By choice, yes. If that seems untidy, you can use ./configure --prefix=$HOME/mytools Instead. You will then need to add that to your $PATH, or, if $HOME/bin is already part of it, you could move everything currently there into ...


2

Sure, with the standard /usr/src installed it might run something like # cat /etc/src.conf CFLAGS=-pipe DEBUG_FLAGS=-g # cd /usr/src/usr.bin/vi # make clean && make obj && make depend && make && make install # gdb -d /usr/src/contrib/nvi/ex -d /usr/src/contrib/nvi/common -tui ex


2

I think there is a problem with the paths you are supplying to the configure command: ./configure --prefix=/home/black/test/ltib/rootfs \ BLUEZ_CFLAGS=-I~/home/black/test/bluetooth/bluez-libs-3.36/include \ BLUEZ_LIBS="-L~/home/black/test/bluetooth/bluez-libs-3.36/src/.libs -lbluetooth" When the ~ character has not preceding whitespace, it doesn't expand ...


1

Downgrades are a lot more dangerous than upgrades. You would probably have to switch repository to older version, remove some packages and run dist-upgrade. However, from my limited experience of downgrading on Debian, I'd say it's a lot easier to just backup your data, and then install your programs again - especially if you don't know how to fix things. ...


1

It looks like you're missing a few dependencies. That would be a bug in the configure script. You might want to file a bugreport to the screen maintainers.


1

The host is the machine that you are cross compiling on. Your development machine. The target is the ARM926EJ-S machine. A couple of things to watch out for: ARM926EJ-S is an ARMv5 make sure your cross tool chain compiles for the correct version of arm processor. The install directory called for in the make file: INSTALL = /usr/bin/install -c I think this ...


1

More than a cross-compiler, what you need is a toolchain, since there are more steps involving the process of getting an executable out of source code. These steps are Compile (source code to assembler) Assemble (assembler code to machine code) Link (routines and libraries in machine code linked together) The naming standard in GNU toolchains is ...


1

Ok, i finally found it on this site.


1

Mark's comment above is correct: Your CFLAGS addition should use -I, not -L. The -L flag to the compiler tells it where to find libraries, but you're failing to find a header file instead. (Yes, the header file is called libiberty.h, but that doesn't make it a library.) Generally you use -L flags in makefiles in LDFLAGS and related variables. (I've ...


1

Do not use your $PATH variable in the compile line options !!! Try to use this command line in place: $ g++ -O myprob.o -o myprob -Wl,-rpath ./lib -L./lib -lprob7_cpp -lprob7



Only top voted, non community-wiki answers of a minimum length are eligible