When I have LDFLAGS set to "-m64" I get this message,
ld: unrecognised emulation mode: 64
Supported emulations: elf32ppclinux elf32ppc elf32ppcsim elf64alpha alpha
armelf_linux armelf hppalinux elf_i386 i386linux elf64_ia64 m68kelf
m68klinux elf64ppc elf_s390 elf64_s390 elf32_sparc sparclinux elf64_sparc
sun4 elf_x86_64 ppcmacos
make[3]: *** [/home/trip3/pvfs-2.6.0/src/kernel/linux-2.6/pvfs2.o] Error 1
make[2]: *** [_module_/home/trip3/pvfs-2.6.0/src/kernel/linux-2.6] Error 2
make[1]: *** [default] Error 2
make: *** [just_kmod] Error 2

I did not have any 'lib/libpvfs2-threaded.*' files created after the
compilation so I guess the configure script somehow was set not to build
threaded libraries but ' pvfs2-client-core-threaded' has dependencies for
those libraries.

After a make distclean I searched for any residual *.a or *.so files in the
build tree but none existed.

Here are the steps I took to get it to compile and link but I have not
attempted to insmod the module until the threaded libraries issue is
resolved.

# make distclean
# find . -name "*.a" --no results
# ./configure --with-kernel=/usr/src/linux-2.6.16.21-0.25 --without-openssl
--disable-server
# make kmod
..
/usr/bin/ld: cannot find -lpvfs2-threaded
collect2: ld returned 1 exit status
make: *** [src/apps/kernel/linux/pvfs2-client-core-threaded] Error 1
# make kmod V=1
..
gcc -m64 -o src/apps/kernel/linux/pvfs2-client-core-threaded -L
/home/trip3/pvfs-2.6.0/lib -rdynamic
src/apps/kernel/linux/pvfs2-client-core.o -lpvfs2-threaded  -lpthread
/usr/bin/ld: cannot find -lpvfs2-threaded
collect2: ld returned 1 exit status
make: *** [src/apps/kernel/linux/pvfs2-client-core-threaded] Error 1

At this point I replaced '-lpvfs2-threaded' with '-lpvfs2' and reissued the
gcc command,
# gcc -m64 -o src/apps/kernel/linux/pvfs2-client-core-threaded -L
/home/trip3/pvfs-2.6.0/lib -rdynamic
src/apps/kernel/linux/pvfs2-client-core.o -lpvfs2 -lpthread
#make kmod
Building modules, stage 2.
  MODPOST

Thoughts?


On 12/4/06 4:31 PM, "Robert Latham" <[EMAIL PROTECTED]> wrote:

> On Mon, Dec 04, 2006 at 03:25:32PM -0600, Kirby Cliff wrote:
>> I did not have the 64bit binutils installed.  Unfortunately installing that
>> did not fix my problem.  I have been able to get a bit farther by unsetting
>> the LDFLAGS and setting CC to "gcc -m64" but this is the error I get,
> 
> You needed to remove -m64 from LDFLAGS?
> 
>> suse-fs3:/home/trip3/pvfs-2.6.0 # make kmod V=1
>> for i in pvfs2-utils.c devpvfs2-req.c pvfs2-cache.c dcache.c file.c inode.c
>> dir.c namei.c super.c pvfs2-mod.c pvfs2-bufmap.c symlink.c xattr.c acl.c
>> xattr-trusted.c xattr-default.c waitqueue.c pvfs2-proc.c pvfs2-kernel.h
>> pvfs2-dev-proto.h pvfs2-bufmap.h upcall.h downcall.h pvfs2-proc.h; do \
>>     if [ ! -f $i  -a  ! -L $i ] ; then \
>>         ln -s ../../.././src/kernel/linux-2.6/$i ;\
>>     fi ;\
>> done
>> make -C /usr/src/linux-2.6.16.21-0.25
>> SUBDIRS=/home/trip3/pvfs-2.6.0/src/kernel/linux-2.6 modules
>> rm -rf /home/trip3/pvfs-2.6.0/src/kernel/linux-2.6/.tmp_versions
>> mkdir -p /home/trip3/pvfs-2.6.0/src/kernel/linux-2.6/.tmp_versions
>> make -f scripts/Makefile.build
>> obj=/home/trip3/pvfs-2.6.0/src/kernel/linux-2.6
>>   Building modules, stage 2.
>> make -rR -f /usr/src/linux-2.6.16.21-0.25/scripts/Makefile.modpost
>>   scripts/mod/modpost -m -a -i /usr/src/linux-2.6.16.21-0.25/Module.symvers
>> -I /home/trip3/pvfs-2.6.0/src/kernel/linux-2.6/Modules.symvers -o
>> /home/trip3/pvfs-2.6.0/src/kernel/linux-2.6/Modules.symvers -s /dev/null
>> vmlinux /home/trip3/pvfs-2.6.0/src/kernel/linux-2.6/pvfs2.o
> 
> this all looks ok
> 
>> gcc -m64 -o src/apps/kernel/linux/pvfs2-client-core-threaded -L
>> /home/trip3/pvfs-2.6.0/lib -rdynamic
>> src/apps/kernel/linux/pvfs2-client-core.o -lpvfs2-threaded  -lpthread
>> /usr/bin/ld: cannot find -lpvfs2-threaded
>> collect2: ld returned 1 exit status
>> make: *** [src/apps/kernel/linux/pvfs2-client-core-threaded] Error 1
> 
> What might have happened here is that the libpvfs2-threaded.a (or
> libpvfs2-threaded.so, if you built with shared libraries) was built in
> 32 bit mode, but a 'make clean' didn't get rid of it.  We've fixed
> this in CVS, but in the meantime, remove 'lib/libpvfs2-threaded.*' and
> anything that looks like '*-threaded.o' left behind after a 'make
> clean'.  Rebuild and you should get back on track.
> 
> ==rob


_______________________________________________
Pvfs2-users mailing list
[email protected]
http://www.beowulf-underground.org/mailman/listinfo/pvfs2-users

Reply via email to