ProgrammingThis forum is for all programming questions.
The question does not have to be directly related to Linux and any language is fair game.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
What to do if I get the following stuff in a cross-compiled armbe-linux
executable?
What is the quick solution? What is the scipt meaning? Pls forgive me
for this dumb question. I read thru it, but don't understand. I need
quick solution. Thanks
J
# excxx_example_database_load - temporary wrapper script for
.libs/excxx_example_database_load
# Generated by ltmain.sh - GNU libtool 1.5.20 (1.1220.2.287 2005/08/31
18:54:15)
#
# The excxx_example_database_load program cannot be directly executed
until all the libtool
# libraries that it depends on are installed.
#
# This wrapper script should never be moved out of the build directory.
# If it is, it will not operate correctly.
# Sed substitution that helps us do robust quoting. It backslashifies
# metacharacters that are still active within double-quoted strings.
Xsed='/bin/sed -e 1s/^X//'
sed_quote_subst='s/\([\\`\\"$\\\\]\)/\\\1/g'
# The HP-UX ksh and POSIX shell print the target directory to stdout
# if CDPATH is set.
(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
# This environment variable determines our operation mode.
if test "$libtool_install_magic" = "%%%MAGIC variable%%%"; then
# install mode needs the following variable:
notinst_deplibs=' libdb_cxx-4.4.la'
else
# When we are sourced in execute mode, $file and $echo are already
set.
if test "$libtool_execute_magic" != "%%%MAGIC variable%%%"; then
echo="echo"
file="$0"
# Make sure echo works.
if test "X$1" = X--no-reexec; then
# Discard the --no-reexec flag, and continue.
shift
elif test "X`($echo '\t') 2>/dev/null`" = 'X\t'; then
# Yippee, $echo works!
:
else
# Restart under the correct shell, and then maybe $echo will
work.
exec /bin/sh "$0" --no-reexec ${1+"$@"}
fi
fi
# Find the directory that this script lives in.
thisdir=`$echo "X$file" | $Xsed -e 's%/[^/]*$%%'`
test "x$thisdir" = "x$file" && thisdir=.
# Follow symbolic links until we get to the real thisdir.
file=`ls -ld "$file" | /bin/sed -n 's/.*-> //p'`
while test -n "$file"; do
destdir=`$echo "X$file" | $Xsed -e 's%/[^/]*$%%'`
# If there was a directory component, then change thisdir.
if test "x$destdir" != "x$file"; then
case "$destdir" in
[\\/]* | [A-Za-z]:[\\/]*) thisdir="$destdir" ;;
*) thisdir="$thisdir/$destdir" ;;
esac
fi
if test ! -f "$progdir/$program" || \
{ file=`ls -1dt "$progdir/$program" "$progdir/../$program"
2>/dev/null | /bin/sed 1q`; \
test "X$file" != "X$progdir/$program"; }; then
file="$$-$program"
if test ! -d "$progdir"; then
mkdir "$progdir"
else
rm -f "$progdir/$file"
fi
# relink executable if necessary
if test -n "$relink_command"; then
if relink_command_output=`eval $relink_command 2>&1`; then :
else
echo "$relink_command_output" >&2
rm -f "$progdir/$file"
exit 1
fi
fi
if test -f "$progdir/$program"; then
if test "$libtool_execute_magic" != "%%%MAGIC variable%%%"; then
# Run the actual program with our arguments.
exec "$progdir/$program" ${1+"$@"}
$echo "$0: cannot exec $program ${1+"$@"}"
exit 1
fi
else
# The program doesn't exist.
$echo "$0: error: \`$progdir/$program' does not exist" 1>&2
$echo "This script is just a wrapper for $program." 1>&2
echo "See the libtool documentation for more information." 1>&2
exit 1
fi
fi
your questions are little more than gibberish.. what do you actually want to know? that script is a wrapper of some sort, so just sets up an environment within which to run a specific program, passing through user defined options and adding it's own etc...
It looks like you have a program which is compiled by libtool, and you're running the "executable" from where it sits inside the source tree.
libtool does this funny wrapper business because sometimes it happens that you have to compile (or rather link, I suppose) the paths to shared libraries into an executable, but before the program is installed those shared libraries won't be at those paths. e.g. you want the program to look for libs in /usr/lib/myprog/ after it's installed, but right now those libs are sitting in the source tree at /home/youruser/stuff/myprog/src/libs/blah/ . The wrapper deals with all this mess so that when you run the program in the source tree, it finds the right libs, but the installed version will also find the right libs.
There might be a little more to it than that, I'm not sure.
I beg your pardon. I start to build up my mind.
It said it was a wrapper script. If I downloaded both lt-exx_example_database_load and this script to the
correct dir, I would get a chance to make it run?
Thanks
Jack
root@vulcan build_unix# ./excxx_example_database_load
./excxx_example_database_load: line 1: cd: /root/Desktop/db_cross_compile/db-4.y
./excxx_example_database_load: line 1: armbe-linux-g++: command not found
root@vulcan build_unix#
Note that I have mkdir a path called
/root/Desktop/db_cross_compile/build_unix and put the app there
where the original program lives in my PC, and remade libtool but I still got the above error
Thanks
Jack
Forgot what rubbish I have stated.
I finally could compile it, but
example_database_load [-b <path to data files>] [-h <database home directory>]
Note: If -b -h is specified, then the path must end with your system's path delimiter )
So what the heck is "your system's path delimiter"?
Thanks
Jack
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.