Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
scons install fails
07-10-2006, 11:37 AM,
#16
 
Where is the spec file for autopackage? I tried making one with the gui tool, got ugly. Is it auto generated? Or is it in the scons scrips some where. I found some isues on fourms with 64 bit arch, but they were all dated a year ago or so.

I found somthing similar to this problem, but it was an old ver of autopackage, I have since lost the link. I tried to build the CVS version (of autopackage) and get:

Code:
./setup
autopackage 1.1.4 CVS setup script, (c) 2002-2005 the autopackage developers

--------------------------------------------------------------------------------  autopackage - the distribution neutral packaging framework for Linux systems
--------------------------------------------------------------------------------
This script will:
* Check for required version of getopt
* Create directory for packages as /var/packages (if root)
* Create symlinks from /usr/bin to the executables
     in /home/clytle374/autopackage/main
* Create symlink from /usr/share/autopackage
     to /home/clytle374/autopackage/main/share
* Create symlink from /usr/libexec/autopackage
     to /home/clytle374/autopackage/main/libexec
* Create configuration file as /etc/autopackage/config
     - By default, autopackage will update the linker cache if installed to
       a non-standard prefix. This can be turned off in the config file.
* Install CVS module apbuild for the apgcc executable

      Press Enter to INSTALL autopackage tools or Ctrl-C to CANCEL.


Installing CVS directory apbuild's apgcc executable...

Need to install CVS directory apbuild's apgcc executable...
mkdir -p /usr/local/bin
cp apgcc apg++ relaytool scandeps make-icons /usr/local/bin
chmod +x /usr/local/bin/apgcc /usr/local/bin/apg++ /usr/local/bin/scandeps /usr/local/bin/make-icons /usr/local/bin/relaytool
mkdir -p /usr/local/share/apbuild/Apbuild
cp Apbuild/*.pm /usr/local/share/apbuild/Apbuild/
mkdir -p /usr/local/include/apbuild
cp ctype.h apsymbols.h /usr/local/include/apbuild
mkdir -p /usr/local/share/aclocal
cp relaytool.m4 /usr/local/share/aclocal
echo >> /usr/local/include/apbuild/apsymbols.h
echo "/* apbuild version" 2.0.0 "*/" >> /usr/local/include/apbuild/apsymbols.h
--------------
Installation complete. Please read README for usage.

Installing Autopackage ...
Linking from /home/clytle374/autopackage/main/makeinstaller to /usr/bin/makeinstaller
Linking from /home/clytle374/autopackage/main/package to /usr/bin/package
Linking from /home/clytle374/autopackage/main/share to /usr/share/autopackage
Copying files to /etc/autopackage
Linking from /home/clytle374/autopackage/main/libexec to /usr/libexec/autopackage
make: Nothing to be done for `all'.

Making libexec executables...
rm -f *.o readlink freespace autosu-gtk autosu-tui autosu-helper sudo-helper dirisempty dumpverdefs32 dumpverdefs64 vfolder-magic unlzma bspatch bsdiff dump-elf-metadata readfifo checksym specparse
APBUILD_INCLUDE="/usr/local/gtk-headers/2.2" apgcc -Wall -Os -s -pipe -DGETTEXT_PACKAGE=\"autopackage\" -DENABLE_BINRELOC -o readlink readlink.c
/tmp/ccCtAr6E.o: In function `main':
readlink.c:(.text+0xba): undefined reference to `realpath@GLIBC_2.0'
collect2: ld returned 1 exit status
make: *** [readlink] Error 1
Couldn't complete the setup.  Please execute './unsetup' to clean up.
Thought this might give up a clue, If your still willing to help.

I just noticed you live in the same corner of the world. I tried adding my location to my profile but it detects union, wv as spam and deletes it

Thanks
Cory
Reply
07-10-2006, 11:33 PM,
#17
 
OK This is what i think is happening.
I was able to extract the files from the package and they seem good, some how the installer is looking at the 32 bit version and not the 64 bit. They have the same number( according to yum), so how it could tell them apart, I DON"T KNOW. makeinstaller is readable but i didn't have time to find the installer code.

I could be all wrong, as i am in over my head.
learn to swim.

Thanks
Cory
Reply
07-11-2006, 05:54 AM,
#18
 
installer script is in tools/autopackage/vdrift.apspec
Reply
07-11-2006, 10:08 PM,
#19
 
update,
I have been reading thru the auto package scripts, I can't find where it is checking GLIBC. It displays that it is checking for the highest GLIBC symbol when it builds the package, but i can't find that in the scripts (makeinstaller). Nor can i find where it is checked in the install scripts, I've been looking in the packagage using the -d debug or -x extract switches. If any one could point me in the direction, on how to track where the code is going.



Cory
Reply
07-13-2006, 08:59 PM,
#20
 
I think i have it, There is some kind of issue, I believe, with glibcrequire used by autopackage that thinks that glibc 2.4 is 2.2.4. So this should work on most systems..

Where do i put the package?, it is minimal as a test.

CORY
Reply
07-17-2006, 01:16 PM,
#21
 
That is indeed a strange issue...could you upload your package somewhere? If so I can mirror it on my web site, and we can see if some other x86_64 users can test it successfully. If it works, then I'll upload it to SourceForge.
Reply
07-17-2006, 01:30 PM,
#22
 
Hey were back up!!!
I can install this. I'm not up to snuff on programming (I'm good at assembly), but here is the offending piece, I comented (see below)the return 1 out of autopackage script-utils so it won't halt on glibc fail. Of course this is only a local fix, but I don't think many machines will have this problem.

Code:
function requireLibC() {
    pushOptE; set +e;
    if [[ "$@" == "" ]]; then return 0; fi; # we may be called with no arguments from backend.template, if no binaries are in the package
    outputTest "$intl_CHECKING_FOR_GLIBC_SYMBOL_VERSIONS"
    trace looking for $@
    local r
    r=`_checkForGlibcVersions $@` # can't use locals here due to bug in bash?
    if [[ $? != 0 ]]; then
    trace failed
    outputTestFail
    local msg=$( out "$intl_NEED_SYMBOLS" "`echo $r`" )
    outputFail "$msg"

    popOptE;
#    return 1
    else
    trace passed
    outputTestPass

    popOptE;
    return 0
    fi
}

Where do i upload package? I'm on a SAT so it'll take a bit. My email is public if you want to send it there
THanks
Cory
Reply
07-17-2006, 01:33 PM,
#23
 
Do you have any public web space where you can upload it? An account on a server somewhere perhaps?

If not you can just email it to me, and I'll post it on my server. I'll PM you my email address.
Reply
07-18-2006, 01:23 AM,
#24
 
Alright clytle374 got the file to me and now it's up on my server: http://sqrville.org/vdrift_minimal_x86_64_test.package

We need someone running x86-64 linux to test it, preferably with a different setup than his to make sure it works everywhere Smile
Reply
07-18-2006, 03:03 PM,
#25
 
Can we put it somewhere people will find it?
Sorry but i want to know if it works, if so i'll build a full version.
I'll set up a ftp for you to get it, rember i'm @ 128Kb UP. little "b" darnit

Clytle
Reply
07-26-2006, 06:59 PM,
#26
 
I got a reply on my autopackage forum post, and it seems perhaps we should try building on AMD64 without using apbuild. clytle374, would you like to try this on your system (if you haven't already) and see how the resulting .package file then works for you?
Reply
07-27-2006, 06:40 PM,
#27
 
I all ready did,no good I really think the issue is the checking script( listed above). I've learned alot but can't quite read it yet. It seems to test the package with objdump whice returns 2.2.5 then tests the target system with the above script, I think is is looking at the file name (??) which is libc-2.4.so since there is no trailing .0 it reads as 2.2.4, and fails. Or I have no clue.


Can you read this script.?

Code:
function requireLibC() {
    pushOptE; set +e;
    if [[ "$@" == "" ]]; then return 0; fi; # we may be called with no arguments from backend.template, if no binaries are in the package
    outputTest "$intl_CHECKING_FOR_GLIBC_SYMBOL_VERSIONS"
    trace looking for $@
    local r
    r=`_checkForGlibcVersions $@` # can't use locals here due to bug in bash?
    if [[ $? != 0 ]]; then
   trace failed
   outputTestFail
   local msg=$( out "$intl_NEED_SYMBOLS" "`echo $r`" )
   outputFail "$msg"

   popOptE;
#   return 1
    else
   trace passed
   outputTestPass

   popOptE;
   return 0
    fi
}

emacs /usr/share/autopackage/apkg-script-utils

I was trying to register at the auto package site and the spam filer ate my confirm mail, could you relay the above?

ALSO; Has anyone tried it?
People willing to fight 64 bit will probably build it anyway.
Reply
08-30-2006, 02:23 PM,
#28
 
One line in the scons-script has the wrong syntax:
change

Code:
env.Distribute (bin_dir, 'track_list.txt.full', 'track_list.txt.minimal')

to

Code:
env.Distribute (bin_dir, ['track_list.txt.full', 'track_list.txt.minimal'])

The brackets were missing

Cheers
Jan
Reply
08-30-2006, 03:27 PM,
#29
 
I thought i'd check this out, I just ran SVN and reinstalled, works ok. The tracklist files is gone now, but doesn't seem to matter. I also couldn't find the above lines, what file are they in?
Cory
Reply
08-30-2006, 03:29 PM,
#30
 
In current SVN the track_list and car_list text files have been removed. Lists of cars and tracks are now made automatically based on which tracks and cars are found by looking in the directories.
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)