Eliot, note that I can provide you access to this
box if you have the time to take a look.
I get the sqLowLevelMFence()...
[hidden email]
[~/public_html/squeakelib/Cog/unixbuild/bld]# gcc -m32 -g -O2 -msse2
-D_GNU_SOURCE -DNDEBUG -DITIMER_HEARTBEAT=1 -DNO_VM_PROFILE=1 -DCOGMTVM=0 -msse
-DLSB_FIRST=1 -DHAVE_CONFIG_H -DSQUEAK_BUILTIN_PLUGIN
-I/home1/vawhigso/public_html/squeakelib/Cog/unixbuild/bld
-I/home1/vawhigso/public_html/squeakelib/Cog/unixbuild/bld
-I/home1/vawhigso/public_html/squeakelib/Cog/platforms/unix/vm
-I/home1/vawhigso/public_html/squeakelib/Cog/platforms/Cross/vm
-I/home1/vawhigso/public_html/squeakelib/Cog/src/vm
-I/home1/vawhigso/public_html/squeakelib/Cog/platforms/Cross/vm
-I/home1/vawhigso/public_html/squeakelib/Cog/platforms/unix/vm
-I/home1/vawhigso/public_html/squeakelib/Cog/src/vm
-I/home1/vawhigso/public_html/squeakelib/Cog/platforms/Cross/plugins/FilePlugin
-I/home1/vawhigso/public_html/squeakelib/Cog/platforms/unix/plugins/B3DAcceleratorPlugin
-I/home1/vawhigso/public_html/squeakelib/Cog/unixbuild/bld
-I/home1/vawhigso/public_html/squeakelib/Cog/unixbuild/bld
-I/home1/vawhigso/public_html/squeakelib/Cog/platforms/unix/vm
-I/home1/vawhigso/public_html/squeakelib/Cog/platforms/Cross/vm
-I/home1/vawhigso/public_html/squeakelib/Cog/src/vm -E -dM
/home1/vawhigso/public_html/squeakelib/Cog/platforms/Cross/vm/sqExternalSemaphores.c
| egrep "86|GLIBC|Fence"
#define M_SQRT1_2 0.70710678118654752440 #define VM_HOST_CPU "x86_64" #define __GLIBC_PREREQ(maj,min) ((__GLIBC__ << 16) + __GLIBC_MINOR__ >= ((maj) << 16) + (min)) #define __GLIBC__ 2 #define __GLIBC_HAVE_LONG_LONG 1 #define __DBL_MAX__ 1.7976931348623157e+308 #define M_SQRT1_2l 0.7071067811865475244008443621048490L #define __i386 1 #define VM_HOST "x86_64-linux-gnu" #define i386 1 #define __i386__ 1 #define M_1_PIl 0.3183098861837906715377675267450287L #define __GLIBC_MINOR__ 5 #define M_1_PI 0.31830988618379067154 #define sqLowLevelMFence() asm volatile ("mfence") and
[hidden email]
[~/public_html/squeakelib/Cog/unixbuild/bld]# gcc -m32 -g -O2 -msse2
-D_GNU_SOURCE -DNDEBUG -DITIMER_HEARTBEAT=1 -DNO_VM_PROFILE=1 -DCOGMTVM=0 -msse
-DLSB_FIRST=1 -DHAVE_CONFIG_H -DSQUEAK_BUILTIN_PLUGIN
-I/home1/vawhigso/public_html/squeakelib/Cog/unixbuild/bld
-I/home1/vawhigso/public_html/squeakelib/Cog/unixbuild/bld
-I/home1/vawhigso/public_html/squeakelib/Cog/platforms/unix/vm
-I/home1/vawhigso/public_html/squeakelib/Cog/platforms/Cross/vm
-I/home1/vawhigso/public_html/squeakelib/Cog/src/vm
-I/home1/vawhigso/public_html/squeakelib/Cog/platforms/Cross/vm
-I/home1/vawhigso/public_html/squeakelib/Cog/platforms/unix/vm
-I/home1/vawhigso/public_html/squeakelib/Cog/src/vm
-I/home1/vawhigso/public_html/squeakelib/Cog/platforms/Cross/plugins/FilePlugin
-I/home1/vawhigso/public_html/squeakelib/Cog/platforms/unix/plugins/B3DAcceleratorPlugin
-I/home1/vawhigso/public_html/squeakelib/Cog/unixbuild/bld
-I/home1/vawhigso/public_html/squeakelib/Cog/unixbuild/bld
-I/home1/vawhigso/public_html/squeakelib/Cog/platforms/unix/vm
-I/home1/vawhigso/public_html/squeakelib/Cog/platforms/Cross/vm
-I/home1/vawhigso/public_html/squeakelib/Cog/src/vm -E -dM
/home1/vawhigso/public_html/squeakelib/Cog/platforms/Cross/vm/sqTicker.c | egrep
"86|GLIBC|Fence"
#define M_SQRT1_2 0.70710678118654752440 #define VM_HOST_CPU "x86_64" #define __GLIBC_PREREQ(maj,min) ((__GLIBC__ << 16) + __GLIBC_MINOR__ >= ((maj) << 16) + (min)) #define __GLIBC__ 2 #define __GLIBC_HAVE_LONG_LONG 1 #define __DBL_MAX__ 1.7976931348623157e+308 #define M_SQRT1_2l 0.7071067811865475244008443621048490L #define __i386 1 #define VM_HOST "x86_64-linux-gnu" #define i386 1 #define __i386__ 1 #define M_1_PIl 0.3183098861837906715377675267450287L #define __GLIBC_MINOR__ 5 #define M_1_PI 0.31830988618379067154 #define sqLowLevelMFence() asm volatile ("mfence") Now I am getting a different error and this
error like the last one is when building squeak itself, the last
step.
gcc -m32 -g -O2 -msse2 -D_GNU_SOURCE -DNDEBUG
-DITIMER_HEARTBEAT=1 -DNO_VM_PROFILE=1 -DCOGMTVM=0 -msse -DLSB_FIRST=1 -o squeak
disabledPlugins.o version.o -Wl,--export-dynamic vm/vm.a
ADPCMCodecPlugin/ADPCMCodecPlugin.a AsynchFilePlugin/AsynchFilePlugin.a
B2DPlugin/B2DPlugin.a BitBltPlugin/BitBltPlugin.a
BMPReadWriterPlugin/BMPReadWriterPlugin.a CroquetPlugin/CroquetPlugin.a
ZipPlugin/ZipPlugin.a DropPlugin/DropPlugin.a DSAPrims/DSAPrims.a
FFTPlugin/FFTPlugin.a FileCopyPlugin/FileCopyPlugin.a FilePlugin/FilePlugin.a
FloatArrayPlugin/FloatArrayPlugin.a FloatMathPlugin/FloatMathPlugin.a
IA32ABI/IA32ABI.a JoystickTabletPlugin/JoystickTabletPlugin.a
JPEGReaderPlugin/JPEGReaderPlugin.a
JPEGReadWriter2Plugin/JPEGReadWriter2Plugin.a Klatt/Klatt.a
LargeIntegers/LargeIntegers.a Matrix2x3Plugin/Matrix2x3Plugin.a
MIDIPlugin/MIDIPlugin.a MiscPrimitivePlugin/MiscPrimitivePlugin.a
Mpeg3Plugin/Mpeg3Plugin.a RePlugin/RePlugin.a SecurityPlugin/SecurityPlugin.a
SerialPlugin/SerialPlugin.a SocketPlugin/SocketPlugin.a
SoundCodecPrims/SoundCodecPrims.a SoundGenerationPlugin/SoundGenerationPlugin.a
SoundPlugin/SoundPlugin.a StarSqueakPlugin/StarSqueakPlugin.a
SurfacePlugin/SurfacePlugin.a -lutil -ldl -lpthread -lm -lnsl -lpthread vm/vm.a
-Wl,--rpath -Wl,/usr/local/lib
/usr/bin/ld: warning: i386:x86-64 architecture of input file `vm/vm.a(gcc3x-cointerp.o)' is incompatible with i386 output /usr/bin/ld: warning: i386:x86-64 architecture of input file `vm/vm.a(cogit.o)' is incompatible with i386 output /usr/bin/ld: warning: i386:x86-64 architecture of input file `vm/vm.a(sqNamedPrims.o)' is incompatible with i386 output /usr/bin/ld: warning: i386:x86-64 architecture of input file `vm/vm.a(sqVirtualMachine.o)' is incompatible with i386 output /usr/bin/ld: warning: i386:x86-64 architecture of input file `vm/vm.a(sqHeapMap.o)' is incompatible with i386 output /usr/bin/ld: warning: i386:x86-64 architecture of input file `vm/vm.a(aio.o)' is incompatible with i386 output /usr/bin/ld: warning: i386:x86-64 architecture of input file `vm/vm.a(debug.o)' is incompatible with i386 output /usr/bin/ld: warning: i386:x86-64 architecture of input file `vm/vm.a(osExports.o)' is incompatible with i386 output /usr/bin/ld: warning: i386:x86-64 architecture of input file `vm/vm.a(sqUnixMemory.o)' is incompatible with i386 output /usr/bin/ld: warning: i386:x86-64 architecture of input file `vm/vm.a(sqUnixCharConv.o)' is incompatible with i386 output /usr/bin/ld: warning: i386:x86-64 architecture of input file `vm/vm.a(sqUnixVMProfile.o)' is incompatible with i386 output /usr/bin/ld: warning: i386:x86-64 architecture of input file `FloatMathPlugin/FloatMathPlugin.a(FloatMathPlugin.o)' is incompatible with i386 output /usr/bin/ld: warning: i386:x86-64 architecture of input file `FloatMathPlugin/FloatMathPlugin.a(acos.o)' is incompatible with i386 output /usr/bin/ld: warning: i386:x86-64 architecture of input file `FloatMathPlugin/FloatMathPlugin.a(acosh.o)' is incompatible with i386 output /usr/bin/ld: warning: i386:x86-64 architecture of input file `FloatMathPlugin/FloatMathPlugin.a(asin.o)' is incompatible with i386 output /usr/bin/ld: warning: i386:x86-64 architecture of input file `FloatMathPlugin/FloatMathPlugin.a(asinh.o)' is incompatible with i386 output /usr/bin/ld: warning: i386:x86-64 architecture of input file `FloatMathPlugin/FloatMathPlugin.a(atan.o)' is incompatible with i386 output /usr/bin/ld: warning: i386:x86-64 architecture of input file `FloatMathPlugin/FloatMathPlugin.a(atan2.o)' is incompatible with i386 output /usr/bin/ld: warning: i386:x86-64 architecture of input file `FloatMathPlugin/FloatMathPlugin.a(atanh.o)' is incompatible with i386 output /usr/bin/ld: warning: i386:x86-64 architecture of input file `FloatMathPlugin/FloatMathPlugin.a(cos.o)' is incompatible with i386 output /usr/bin/ld: warning: i386:x86-64 architecture of input file `FloatMathPlugin/FloatMathPlugin.a(cosh.o)' is incompatible with i386 output /usr/bin/ld: warning: i386:x86-64 architecture of input file `FloatMathPlugin/FloatMathPlugin.a(exp.o)' is incompatible with i386 output /usr/bin/ld: warning: i386:x86-64 architecture of input file `FloatMathPlugin/FloatMathPlugin.a(expm1.o)' is incompatible with i386 output /usr/bin/ld: warning: i386:x86-64 architecture of input file `FloatMathPlugin/FloatMathPlugin.a(fmod.o)' is incompatible with i386 output /usr/bin/ld: warning: i386:x86-64 architecture of input file `FloatMathPlugin/FloatMathPlugin.a(hypot.o)' is incompatible with i386 output /usr/bin/ld: warning: i386:x86-64 architecture of input file `FloatMathPlugin/FloatMathPlugin.a(k_cos.o)' is incompatible with i386 output /usr/bin/ld: warning: i386:x86-64 architecture of input file `FloatMathPlugin/FloatMathPlugin.a(k_sin.o)' is incompatible with i386 output /usr/bin/ld: warning: i386:x86-64 architecture of input file `FloatMathPlugin/FloatMathPlugin.a(ldexp.o)' is incompatible with i386 output /usr/bin/ld: warning: i386:x86-64 architecture of input file `FloatMathPlugin/FloatMathPlugin.a(log.o)' is incompatible with i386 output /usr/bin/ld: warning: i386:x86-64 architecture of input file `FloatMathPlugin/FloatMathPlugin.a(log10.o)' is incompatible with i386 output /usr/bin/ld: warning: i386:x86-64 architecture of input file `FloatMathPlugin/FloatMathPlugin.a(log1p.o)' is incompatible with i386 output /usr/bin/ld: warning: i386:x86-64 architecture of input file `FloatMathPlugin/FloatMathPlugin.a(modf.o)' is incompatible with i386 output /usr/bin/ld: warning: i386:x86-64 architecture of input file `FloatMathPlugin/FloatMathPlugin.a(pow.o)' is incompatible with i386 output /usr/bin/ld: warning: i386:x86-64 architecture of input file `FloatMathPlugin/FloatMathPlugin.a(rem_pio2.o)' is incompatible with i386 output /usr/bin/ld: warning: i386:x86-64 architecture of input file `FloatMathPlugin/FloatMathPlugin.a(scalbn.o)' is incompatible with i386 output /usr/bin/ld: warning: i386:x86-64 architecture of input file `FloatMathPlugin/FloatMathPlugin.a(sin.o)' is incompatible with i386 output /usr/bin/ld: warning: i386:x86-64 architecture of input file `FloatMathPlugin/FloatMathPlugin.a(sinh.o)' is incompatible with i386 output /usr/bin/ld: warning: i386:x86-64 architecture of input file `FloatMathPlugin/FloatMathPlugin.a(sqrt.o)' is incompatible with i386 output /usr/bin/ld: warning: i386:x86-64 architecture of input file `FloatMathPlugin/FloatMathPlugin.a(tan.o)' is incompatible with i386 output /usr/bin/ld: warning: i386:x86-64 architecture of input file `FloatMathPlugin/FloatMathPlugin.a(tanh.o)' is incompatible with i386 output /usr/bin/ld: warning: i386:x86-64 architecture of input file `FloatMathPlugin/FloatMathPlugin.a(finite.o)' is incompatible with i386 output /usr/bin/ld: warning: i386:x86-64 architecture of input file `FloatMathPlugin/FloatMathPlugin.a(k_rem_pio2.o)' is incompatible with i386 output /usr/bin/ld: warning: i386:x86-64 architecture of input file `FloatMathPlugin/FloatMathPlugin.a(k_tan.o)' is incompatible with i386 output text
data bss
dec hex filename
952169 44560 297284 1294013 13bebd squeak make: *** [squeak] Segmentation fault
make: *** Deleting file `squeak' Rob
From: [hidden email]
Sent: Thursday, July 15, 2010 9:04 PM
To: [hidden email]
Subject: Re: [Vm-dev] Cog on linux
On Thu, Jul 15, 2010 at 4:49 PM, Rob Withers <[hidden email]> wrote:
You need to figure out why, when sqMemoryFence.h is included by
sqExternalSemaphores.c and sqTicker.c, the following macro in
sqMemoryFence.h is not being defined or not being expanded:
#if defined(__GNUC__) && (defined(i386) || defined(__i386) ||
defined(__i386__) || defined(_X86_))
# if defined(__MINGW32__) && !__SSE2__
/* Andreas is fond of the gcc 2.95 MINGW but it lacks
sse2 support */
# define sqLowLevelMFence() asm volatile (".byte 0x0f;.byte
0xae;.byte 0xf0")
# else
# define sqLowLevelMFence() asm volatile ("mfence")
# endif
#else
# if !defined(sqLowLevelMFence)
extern void sqLowLevelMFence(void);
# endif
#endif i.e. from the above
# define sqLowLevelMFence() asm volatile ("mfence") should be live and hence in sqExternalSemaphores.c and
sqTicker.c sqLowLevelMFence() should expand to asm volatile
("mfence").
gcc -E or gcc -P will run the preprocessor, so run the make capturing the
compile commands for these two and retry the command deleting -c thefile and
adding -E. Then look at the output and see what files are included (is
sqMemoryFence.h being included?) and then if it is find out why, if as the -dM
output above indicates, the macro isn't being defined given the above tests for
both __GNUC__ and __i386__.
HTH
Eliot
|
Hi Rob, Am 16.07.2010 um 11:20 schrieb Rob Withers: For me this looks like you are still mixing 32 and 64 Bit. When I do my compilations I have a separate build folder (IIRC that is recommended in the one of the readme's) that I can clean easily. So maybe your problem is due to partly old compiled code (without -m32 flag). Regards Andreas |
That's possible. Unfortunately there is no
'clean' target for make. I'll remove the .o files for vm.a by hand and
retry it.
Thanks,
Rob From: [hidden email]
Sent: Friday, July 16, 2010 5:58 AM
To: [hidden email]
Subject: Re: [Vm-dev] Cog on linux For me this looks like you are still mixing 32 and 64 Bit. When I do my compilations I have a separate build folder (IIRC that is recommended in the one of the readme's) that I can clean easily. So maybe your problem is due to partly old compiled code (without -m32 flag). Regards
Andreas |
Am 16.07.2010 um 12:00 schrieb Rob Withers: I don't have many experiences with the Cog branch but the "old" VM build system allows for a separate build folder and thus cleaning is very easily done by removing all files and subfolders. I haven't seen this for the Cog VM yet but I only compiled it once for my Mac and it went flawlessly. Regards, Andreas |
I deleted all the *.o and *.a files from the build
tree.
I received LOTS of errors, of the 'undefined
reference' variety.
Ultimately failed with "
sqUnixX11.lo:(.data.rel+0x110): undefined reference
to `shortImageName'
collect2: ld returned 1 exit status ". Rob
From: [hidden email]
Sent: Friday, July 16, 2010 6:06 AM
To: [hidden email]
Subject: Re: [Vm-dev] Cog on linux
Am 16.07.2010 um 12:00 schrieb Rob Withers: I don't have many experiences with the Cog branch but the "old" VM build system allows for a separate build folder and thus cleaning is very easily done by removing all files and subfolders. I haven't seen this for the Cog VM yet but I only compiled it once for my Mac and it went flawlessly. Regards,
Andreas |
Am 16.07.2010 um 12:34 schrieb Rob Withers: I can't follow what you are doing because I don't have a Linux installation. From what I can see, the HowToBuild in the unixbuild folder asks you to go to the bld folder and issue a configure. After the initial svn co there are only two files in the bld folder: plugins.ext and plugins.int. So you can remove every file and folder under bld despite of these two files. Did you do that or where there some other remnants from a former build? Andreas |
In reply to this post by Rob Withers
On Fri, 16 Jul 2010, Rob Withers wrote: (Pine still can't quote your mail...) Now I remember why I used the nasty trick to define CC as "gcc -m32" when I compiled the 32-bit SqueakVM on 64-bit OS. The problem is that there are places where CC is used without the CFLAGS. For example FloatMathPlugin uses LIBM_CFLAGS, which doesn't include CFLAGS. I still wonder why it has to be compiled with -O, but that's another story. This trick solves it, so add CC="gcc -m32" to the arguments of configure and see if it works for you. Levente |
-------------------------------------------------- From: "Levente Uzonyi" <[hidden email]> Sent: Friday, July 16, 2010 8:17 AM To: "Squeak Virtual Machine Development Discussion" <[hidden email]> Subject: Re: [Vm-dev] Cog on linux > > On Fri, 16 Jul 2010, Rob Withers wrote: > > (Pine still can't quote your mail...) > (Is this better? Hopefully) > Now I remember why I used the nasty trick to define CC as "gcc -m32" when > I compiled the 32-bit SqueakVM on 64-bit OS. The problem is that there are > places where CC is used without the CFLAGS. For example FloatMathPlugin > uses LIBM_CFLAGS, which doesn't include CFLAGS. I still wonder why it has > to be compiled with -O, but that's another story. > This trick solves it, so add CC="gcc -m32" to the arguments of configure > and see if it works for you. > Where do you define CC? Is it in make.cfg? Rob > > Levente |
On Fri, 16 Jul 2010, Rob Withers wrote: > > > > -------------------------------------------------- > From: "Levente Uzonyi" <[hidden email]> > Sent: Friday, July 16, 2010 8:17 AM > To: "Squeak Virtual Machine Development Discussion" > <[hidden email]> > Subject: Re: [Vm-dev] Cog on linux > >> >> On Fri, 16 Jul 2010, Rob Withers wrote: >> >> (Pine still can't quote your mail...) >> > > (Is this better? Hopefully) > >> Now I remember why I used the nasty trick to define CC as "gcc -m32" when I >> compiled the 32-bit SqueakVM on 64-bit OS. The problem is that there are >> places where CC is used without the CFLAGS. For example FloatMathPlugin >> uses LIBM_CFLAGS, which doesn't include CFLAGS. I still wonder why it has >> to be compiled with -O, but that's another story. >> This trick solves it, so add CC="gcc -m32" to the arguments of configure >> and see if it works for you. >> > > Where do you define CC? Is it in make.cfg? The same place where CFLAGS is defined: ../../platforms/unix/config/configure CC="gcc -m32" CFLAGS="-g -O2 -msse2 -D_GNU_SOURCE -DNDEBUG -DITIMER_HEARTBEAT=1 -DNO_VM_PROFILE=1 -DCOGMTVM=0" LIBS=-lpthread Levente > > Rob > >> >> Levente > > |
-------------------------------------------------- From: "Levente Uzonyi" <[hidden email]> Sent: Friday, July 16, 2010 3:57 PM To: "Squeak Virtual Machine Development Discussion" <[hidden email]> Subject: Re: [Vm-dev] Cog on linux > > On Fri, 16 Jul 2010, Rob Withers wrote: > >> >> >> >> -------------------------------------------------- >> From: "Levente Uzonyi" <[hidden email]> >> Sent: Friday, July 16, 2010 8:17 AM >> To: "Squeak Virtual Machine Development Discussion" >> <[hidden email]> >> Subject: Re: [Vm-dev] Cog on linux >> >>> >>> On Fri, 16 Jul 2010, Rob Withers wrote: >>> >>> (Pine still can't quote your mail...) >>> >> >> (Is this better? Hopefully) >> >>> Now I remember why I used the nasty trick to define CC as "gcc -m32" >>> when I compiled the 32-bit SqueakVM on 64-bit OS. The problem is that >>> there are places where CC is used without the CFLAGS. For example >>> FloatMathPlugin uses LIBM_CFLAGS, which doesn't include CFLAGS. I still >>> wonder why it has to be compiled with -O, but that's another story. >>> This trick solves it, so add CC="gcc -m32" to the arguments of configure >>> and see if it works for you. >>> >> >> Where do you define CC? Is it in make.cfg? > > The same place where CFLAGS is defined: > ../../platforms/unix/config/configure CC="gcc -m32" > CFLAGS="-g -O2 -msse2 -D_GNU_SOURCE -DNDEBUG -DITIMER_HEARTBEAT=1 -DNO_VM_PROFILE=1 > -DCOGMTVM=0" LIBS=-lpthread > Woohoo! I made progress. Thanks! Now it is crashing on sound: /bin/sh /home1/vawhigso/public_html/squeakelib/Cog/unixbuild/bld/libtool --mode=compile gcc -m32 -g -O2 -msse2 -D_GNU_SOURCE -DNDEBUG -DITIMER_HEARTBEAT=1 -DNO_VM_PROFILE=1 -DCOGMTVM=0 -msse -DLSB_FIRST=1 -DHAVE_CONFIG_H -I/home1/vawhigso/public_html/squeakelib/Cog/unixbuild/bld -I/home1/vawhigso/public_html/squeakelib/Cog/unixbuild/bld -I/home1/vawhigso/public_html/squeakelib/Cog/platforms/unix/vm -I/home1/vawhigso/public_html/squeakelib/Cog/platforms/Cross/vm -I/home1/vawhigso/public_html/squeakelib/Cog/src/vm -c -o sqUnixSoundALSA.lo /home1/vawhigso/public_html/squeakelib/Cog/platforms/unix/vm-sound-ALSA/sqUnixSoundALSA.c gcc -m32 -g -O2 -msse2 -D_GNU_SOURCE -DNDEBUG -DITIMER_HEARTBEAT=1 -DNO_VM_PROFILE=1 -DCOGMTVM=0 -msse -DLSB_FIRST=1 -DHAVE_CONFIG_H -I/home1/vawhigso/public_html/squeakelib/Cog/unixbuild/bld -I/home1/vawhigso/public_html/squeakelib/Cog/unixbuild/bld -I/home1/vawhigso/public_html/squeakelib/Cog/platforms/unix/vm -I/home1/vawhigso/public_html/squeakelib/Cog/platforms/Cross/vm -I/home1/vawhigso/public_html/squeakelib/Cog/src/vm -c /home1/vawhigso/public_html/squeakelib/Cog/platforms/unix/vm-sound-ALSA/sqUnixSoundALSA.c -fPIC -DPIC -DPIC -o sqUnixSoundALSA.o mv -f sqUnixSoundALSA.o sqUnixSoundALSA.lo /bin/sh /home1/vawhigso/public_html/squeakelib/Cog/unixbuild/bld/libtool --mode=link gcc -m32 -g -O2 -msse2 -D_GNU_SOURCE -DNDEBUG -DITIMER_HEARTBEAT=1 -DNO_VM_PROFILE=1 -DCOGMTVM=0 -msse -DLSB_FIRST=1 -avoid-version -module -rpath /home1/vawhigso/public_html/squeakelib/Cog/Cog/lib/squeak/3.9-7 -o vm-sound-ALSA.la sqUnixSoundALSA.lo -lasound mkdir .libs rm -fr .libs/vm-sound-ALSA.la .libs/vm-sound-ALSA.* .libs/vm-sound-ALSA.* (cd . && ln -s sqUnixSoundALSA.lo sqUnixSoundALSA.o) gcc -m32 -shared sqUnixSoundALSA.lo -lasound -Wl,-soname -Wl,vm-sound-ALSA -o .libs/vm-sound-ALSA /usr/bin/ld: skipping incompatible /usr/lib64/libasound.so when searching for -lasound /usr/bin/ld: skipping incompatible /usr/lib64/libasound.a when searching for -lasound /usr/bin/ld: cannot find -lasound collect2: ld returned 1 exit status make[1]: *** [vm-sound-ALSA.la] Error 1 make: *** [vm-sound-ALSA.la] Error 2 > > Levente > >> >> Rob >> >>> >>> Levente >> >> |
Am 16.07.2010 um 22:25 schrieb Rob Withers:
This looks like a missing library (Iibasound). You should try to find something like libasound and/or libasound-dev for your distribution. And of course It must be 32 bits. Andreas |
In reply to this post by Rob Withers
I think you just need libasound On Jul 16, 2010, at 1:25 PM, "Rob Withers" <[hidden email]> wrote: > > > -------------------------------------------------- > From: "Levente Uzonyi" <[hidden email]> > Sent: Friday, July 16, 2010 3:57 PM > To: "Squeak Virtual Machine Development Discussion" <[hidden email]> > Subject: Re: [Vm-dev] Cog on linux > >> >> On Fri, 16 Jul 2010, Rob Withers wrote: >> >>> >>> >>> >>> -------------------------------------------------- >>> From: "Levente Uzonyi" <[hidden email]> >>> Sent: Friday, July 16, 2010 8:17 AM >>> To: "Squeak Virtual Machine Development Discussion" <[hidden email]> >>> Subject: Re: [Vm-dev] Cog on linux >>> >>>> >>>> On Fri, 16 Jul 2010, Rob Withers wrote: >>>> >>>> (Pine still can't quote your mail...) >>>> >>> >>> (Is this better? Hopefully) >>> >>>> Now I remember why I used the nasty trick to define CC as "gcc -m32" when I compiled the 32-bit SqueakVM on 64-bit OS. The problem is that there are places where CC is used without the CFLAGS. For example FloatMathPlugin uses LIBM_CFLAGS, which doesn't include CFLAGS. I still wonder why it has to be compiled with -O, but that's another story. >>>> This trick solves it, so add CC="gcc -m32" to the arguments of configure and see if it works for you. >>>> >>> >>> Where do you define CC? Is it in make.cfg? >> >> The same place where CFLAGS is defined: >> ../../platforms/unix/config/configure CC="gcc -m32" CFLAGS="-g -O2 -msse2 -D_GNU_SOURCE -DNDEBUG -DITIMER_HEARTBEAT=1 -DNO_VM_PROFILE=1 -DCOGMTVM=0" LIBS=-lpthread >> > > Woohoo! I made progress. Thanks! Now it is crashing on sound: > > /bin/sh /home1/vawhigso/public_html/squeakelib/Cog/unixbuild/bld/libtool --mode=compile gcc -m32 -g -O2 -msse2 -D_GNU_SOURCE -DNDEBUG -DITIMER_HEARTBEAT=1 -DNO_VM_PROFILE=1 -DCOGMTVM=0 -msse -DLSB_FIRST=1 -DHAVE_CONFIG_H -I/home1/vawhigso/public_html/squeakelib/Cog/unixbuild/bld -I/home1/vawhigso/public_html/squeakelib/Cog/unixbuild/bld -I/home1/vawhigso/public_html/squeakelib/Cog/platforms/unix/vm -I/home1/vawhigso/public_html/squeakelib/Cog/platforms/Cross/vm -I/home1/vawhigso/public_html/squeakelib/Cog/src/vm -c -o sqUnixSoundALSA.lo /home1/vawhigso/public_html/squeakelib/Cog/platforms/unix/vm-sound-ALSA/sqUnixSoundALSA.c > gcc -m32 -g -O2 -msse2 -D_GNU_SOURCE -DNDEBUG -DITIMER_HEARTBEAT=1 -DNO_VM_PROFILE=1 -DCOGMTVM=0 -msse -DLSB_FIRST=1 -DHAVE_CONFIG_H -I/home1/vawhigso/public_html/squeakelib/Cog/unixbuild/bld -I/home1/vawhigso/public_html/squeakelib/Cog/unixbuild/bld -I/home1/vawhigso/public_html/squeakelib/Cog/platforms/unix/vm -I/home1/vawhigso/public_html/squeakelib/Cog/platforms/Cross/vm -I/home1/vawhigso/public_html/squeakelib/Cog/src/vm -c /home1/vawhigso/public_html/squeakelib/Cog/platforms/unix/vm-sound-ALSA/sqUnixSoundALSA.c -fPIC -DPIC -DPIC -o sqUnixSoundALSA.o > mv -f sqUnixSoundALSA.o sqUnixSoundALSA.lo > /bin/sh /home1/vawhigso/public_html/squeakelib/Cog/unixbuild/bld/libtool --mode=link gcc -m32 -g -O2 -msse2 -D_GNU_SOURCE -DNDEBUG -DITIMER_HEARTBEAT=1 -DNO_VM_PROFILE=1 -DCOGMTVM=0 -msse -DLSB_FIRST=1 -avoid-version -module -rpath /home1/vawhigso/public_html/squeakelib/Cog/Cog/lib/squeak/3.9-7 -o vm-sound-ALSA.la sqUnixSoundALSA.lo -lasound > mkdir .libs > rm -fr .libs/vm-sound-ALSA.la .libs/vm-sound-ALSA.* .libs/vm-sound-ALSA.* > (cd . && ln -s sqUnixSoundALSA.lo sqUnixSoundALSA.o) > gcc -m32 -shared sqUnixSoundALSA.lo -lasound -Wl,-soname -Wl,vm-sound-ALSA -o .libs/vm-sound-ALSA > /usr/bin/ld: skipping incompatible /usr/lib64/libasound.so when searching for -lasound > /usr/bin/ld: skipping incompatible /usr/lib64/libasound.a when searching for -lasound > /usr/bin/ld: cannot find -lasound > collect2: ld returned 1 exit status > make[1]: *** [vm-sound-ALSA.la] Error 1 > make: *** [vm-sound-ALSA.la] Error 2 > >> >> Levente >> >>> >>> Rob >>> >>>> >>>> Levente >>> |
-------------------------------------------------- From: "Casey Ransberger" <[hidden email]> Sent: Friday, July 16, 2010 5:10 PM To: "Squeak Virtual Machine Development Discussion" <[hidden email]> Subject: Re: [Vm-dev] Cog on linux > > I think you just need libasound > Ok guys, I am working on it with my webhost. I am not sure how I can install an RPM on their box, so I submitted a ticket. Thanks, Rob |
On Fri, 16 Jul 2010, Rob Withers wrote: > > > > -------------------------------------------------- > From: "Casey Ransberger" <[hidden email]> > Sent: Friday, July 16, 2010 5:10 PM > To: "Squeak Virtual Machine Development Discussion" > <[hidden email]> > Subject: Re: [Vm-dev] Cog on linux > >> >> I think you just need libasound >> > > Ok guys, I am working on it with my webhost. I am not sure how I can install > an RPM on their box, so I submitted a ticket. Actually I don't think that any sound plugin would work, because the 32-bit binaries will not be available. But you don't need sound at all on a server, do you? Levente > > Thanks, > Rob > |
-------------------------------------------------- From: "Levente Uzonyi" <[hidden email]> Sent: Friday, July 16, 2010 6:44 PM To: "Squeak Virtual Machine Development Discussion" <[hidden email]> Subject: Re: [Vm-dev] Cog on linux > > On Fri, 16 Jul 2010, Rob Withers wrote: > >> >> >> >> -------------------------------------------------- >> From: "Casey Ransberger" <[hidden email]> >> Sent: Friday, July 16, 2010 5:10 PM >> To: "Squeak Virtual Machine Development Discussion" >> <[hidden email]> >> Subject: Re: [Vm-dev] Cog on linux >> >>> >>> I think you just need libasound >>> >> >> Ok guys, I am working on it with my webhost. I am not sure how I can >> install an RPM on their box, so I submitted a ticket. > > Actually I don't think that any sound plugin would work, because the > 32-bit binaries will not be available. But you don't need sound at all on > a server, do you? > alsa-lib-1.0.13.tar.bz2 and I am preparing to build it. My error said: /usr/bin/ld: skipping incompatible /usr/lib64/libasound.so when searching for -lasound /usr/bin/ld: skipping incompatible /usr/lib64/libasound.a when searching for -lasound So it looks like I need a .so and a .a file. As rusty as I am on building for unix, are these static libs or shared libs? I do need to figure out how to cross compile to a 32bit system. I am researching this for the right target. I need i386-linux or something. I am attaching the config.guess file they use for this. Can anyone give me a helpful hand what I should specify doing ... './configure --enable-shared=no --enable-static=yes --target=i386-linux' Regarding your observation that I don't need sound on a server, that is spot on. It may be too entangled for the time being. Cheers, Rob > > Levente > >> >> Thanks, >> Rob |
-------------------------------------------------- From: "Rob Withers" <[hidden email]> Sent: Friday, July 16, 2010 7:08 PM To: "Squeak Virtual Machine Development Discussion" <[hidden email]> Subject: Re: [Vm-dev] Cog on linux > > > > -------------------------------------------------- > From: "Levente Uzonyi" <[hidden email]> > Sent: Friday, July 16, 2010 6:44 PM > To: "Squeak Virtual Machine Development Discussion" > <[hidden email]> > Subject: Re: [Vm-dev] Cog on linux > >> >> On Fri, 16 Jul 2010, Rob Withers wrote: >> >>> >>> >>> >>> -------------------------------------------------- >>> From: "Casey Ransberger" <[hidden email]> >>> Sent: Friday, July 16, 2010 5:10 PM >>> To: "Squeak Virtual Machine Development Discussion" >>> <[hidden email]> >>> Subject: Re: [Vm-dev] Cog on linux >>> >>>> >>>> I think you just need libasound >>>> >>> >>> Ok guys, I am working on it with my webhost. I am not sure how I can >>> install an RPM on their box, so I submitted a ticket. >> >> Actually I don't think that any sound plugin would work, because the >> 32-bit binaries will not be available. But you don't need sound at all on >> a server, do you? >> > > You lost me on 32-bit binaries not being available. I found > alsa-lib-1.0.13.tar.bz2 and I am preparing to build it. > > My error said: > /usr/bin/ld: skipping incompatible /usr/lib64/libasound.so when searching > for -lasound > /usr/bin/ld: skipping incompatible /usr/lib64/libasound.a when searching > for -lasound > > So it looks like I need a .so and a .a file. As rusty as I am on building > for unix, are these static libs or shared libs? I do need to figure out > how > to cross compile to a 32bit system. I am researching this for the right > target. I need i386-linux or something. I am attaching the config.guess > file they use for this. Can anyone give me a helpful hand what I should > specify doing ... > > './configure --enable-shared=no --enable-static=yes --target=i386-linux' > Damn! I can't figure out how to change the install path to other than /usr/include, etc. I can't write to those directories. I am stuck. > Regarding your observation that I don't need sound on a server, that is > spot > on. It may be too entangled for the time being. Is it possible to unentangle sound? Thanks, Rob > > Cheers, > Rob > >> >> Levente >> >>> >>> Thanks, >>> Rob > |
On Fri, 16 Jul 2010, Rob Withers wrote: > > > > -------------------------------------------------- > From: "Rob Withers" <[hidden email]> > Sent: Friday, July 16, 2010 7:08 PM > To: "Squeak Virtual Machine Development Discussion" > <[hidden email]> > Subject: Re: [Vm-dev] Cog on linux > >> > > > >> >> >> -------------------------------------------------- >> From: "Levente Uzonyi" <[hidden email]> >> Sent: Friday, July 16, 2010 6:44 PM >> To: "Squeak Virtual Machine Development Discussion" >> <[hidden email]> >> Subject: Re: [Vm-dev] Cog on linux >> >>> >>> On Fri, 16 Jul 2010, Rob Withers wrote: >>> >>>> >>>> >>>> >>>> -------------------------------------------------- >>>> From: "Casey Ransberger" <[hidden email]> >>>> Sent: Friday, July 16, 2010 5:10 PM >>>> To: "Squeak Virtual Machine Development Discussion" >>>> <[hidden email]> >>>> Subject: Re: [Vm-dev] Cog on linux >>>> >>>>> >>>>> I think you just need libasound >>>>> >>>> >>>> Ok guys, I am working on it with my webhost. I am not sure how I can >>>> install an RPM on their box, so I submitted a ticket. >>> >>> Actually I don't think that any sound plugin would work, because the >>> 32-bit binaries will not be available. But you don't need sound at all on >>> a server, do you? >>> >> >> You lost me on 32-bit binaries not being available. I found >> alsa-lib-1.0.13.tar.bz2 and I am preparing to build it. >> >> My error said: >> /usr/bin/ld: skipping incompatible /usr/lib64/libasound.so when searching >> for -lasound >> /usr/bin/ld: skipping incompatible /usr/lib64/libasound.a when searching >> for -lasound >> >> So it looks like I need a .so and a .a file. As rusty as I am on building >> for unix, are these static libs or shared libs? I do need to figure out >> how >> to cross compile to a 32bit system. I am researching this for the right >> target. I need i386-linux or something. I am attaching the config.guess >> file they use for this. Can anyone give me a helpful hand what I should >> specify doing ... >> >> './configure --enable-shared=no --enable-static=yes >> --target=i386-linux' >> > > Damn! I can't figure out how to change the install path to other than > /usr/include, etc. I can't write to those directories. I am stuck. Try ./configure --help or check if you can pass a parameter to make. If none of those work, check if you can change it by setting an environment variable. I think it's better if you build the VM without sound first. And if you have spare time then try to build a plugin for sound playback. Levente > >> Regarding your observation that I don't need sound on a server, that is >> spot >> on. It may be too entangled for the time being. > > Is it possible to unentangle sound? > > Thanks, > Rob > >> >> Cheers, >> Rob >> >>> >>> Levente >>> >>>> >>>> Thanks, >>>> Rob >> > |
In reply to this post by Andreas Wacknitz
CogVM is working just fine as far as OpenGL is not an issue. Although there is a B3DAcceleratorPlugin in .../cog/lib/squeak/3.9-7 it just cannot find direct rendering for NVIDIA FX9600 (plugin crashes) and it also complains about #boundingBox in: BitBlt>>setDestForm: df | bb | bb := df boundingBox. destForm := df. clipX := bb left. clipY := bb top. clipWidth := bb width. clipHeight := bb height signature.asc (269 bytes) Download Attachment |
In reply to this post by Rob Withers
On Fri, Jul 16, 2010 at 4:37 PM, Rob Withers <[hidden email]> wrote:
Try configuring Cog without libalsa. e.g. ../../platforms/unix/config/configure --without-vm-sound-ALSA --without-vm-display-fbdev --without-npsqueak -prefix=/home/qwaq/qwaqvm/ CFLAGS="-g -O1 -msse2 -D_GNU_SOURCE -DITIMER_HEARTBEAT=1 -DNO_VM_PROFILE=1 -DCOGMTVM=0" LIBS=-lpthread
and if you have problems with OSS sound you can disable that too ../../platforms/unix/config/configure --without-vm-sound-ALSA --without-vm-sound-OSS --without-vm-display-fbdev --without-npsqueak -prefix=/home/qwaq/qwaqvm/ CFLAGS="-g -O1 -msse2 -D_GNU_SOURCE -DITIMER_HEARTBEAT=1 -DNO_VM_PROFILE=1 -DCOGMTVM=0" LIBS=-lpthread
that will leave you with vm-sound-null which is fine for a server.
|
Eliot, It is still giving me an ALSA error. Here is my call to configure and make: ../../platforms/unix/config/configure --without-vm-sound-ALSA --without-vm-sound-OSS --without-vm-display-fbdev --without-npsqueak CC="gcc -m32" CFLAGS="-g -O2 -msse2 -D_GNU_SOURCE -DNDEBUG -DITIMER_HEARTBEAT=1 -DNO_VM_PROFILE=1 -DCOGMTVM=0" LIBS=-lpthread make install prefix=/home1/vawhigso/public_html/squeakelib/Cog/Cog I find it best to delete the entire unixbuild directory and untar it fresh from the tarball. Thanks, Rob Error: /bin/sh /home1/vawhigso/public_html/squeakelib/Cog/unixbuild/bld/libtool --mode=compile gcc -m32 -g -O2 -msse2 -D_GNU_SOURCE -DNDEBUG -DITIMER_HEARTBEAT=1 -DNO_VM_PROFILE=1 -DCOGMTVM=0 -msse -DLSB_FIRST=1 -DHAVE_CONFIG_H -I/home1/vawhigso/public_html/squeakelib/Cog/unixbuild/bld -I/home1/vawhigso/public_html/squeakelib/Cog/unixbuild/bld -I/home1/vawhigso/public_html/squeakelib/Cog/platforms/unix/vm -I/home1/vawhigso/public_html/squeakelib/Cog/platforms/Cross/vm -I/home1/vawhigso/public_html/squeakelib/Cog/src/vm -c -o sqUnixSoundALSA.lo /home1/vawhigso/public_html/squeakelib/Cog/platforms/unix/vm-sound-ALSA/sqUnixSoundALSA.c gcc -m32 -g -O2 -msse2 -D_GNU_SOURCE -DNDEBUG -DITIMER_HEARTBEAT=1 -DNO_VM_PROFILE=1 -DCOGMTVM=0 -msse -DLSB_FIRST=1 -DHAVE_CONFIG_H -I/home1/vawhigso/public_html/squeakelib/Cog/unixbuild/bld -I/home1/vawhigso/public_html/squeakelib/Cog/unixbuild/bld -I/home1/vawhigso/public_html/squeakelib/Cog/platforms/unix/vm -I/home1/vawhigso/public_html/squeakelib/Cog/platforms/Cross/vm -I/home1/vawhigso/public_html/squeakelib/Cog/src/vm -c /home1/vawhigso/public_html/squeakelib/Cog/platforms/unix/vm-sound-ALSA/sqUnixSoundALSA.c -fPIC -DPIC -DPIC -o sqUnixSoundALSA.o mv -f sqUnixSoundALSA.o sqUnixSoundALSA.lo /bin/sh /home1/vawhigso/public_html/squeakelib/Cog/unixbuild/bld/libtool --mode=link gcc -m32 -g -O2 -msse2 -D_GNU_SOURCE -DNDEBUG -DITIMER_HEARTBEAT=1 -DNO_VM_PROFILE=1 -DCOGMTVM=0 -msse -DLSB_FIRST=1 -avoid-version -module -rpath /home1/vawhigso/public_html/squeakelib/Cog/Cog/lib/squeak/3.9-7 -o vm-sound-ALSA.la sqUnixSoundALSA.lo -lasound mkdir .libs rm -fr .libs/vm-sound-ALSA.la .libs/vm-sound-ALSA.* .libs/vm-sound-ALSA.* (cd . && ln -s sqUnixSoundALSA.lo sqUnixSoundALSA.o) gcc -m32 -shared sqUnixSoundALSA.lo -lasound -Wl,-soname -Wl,vm-sound-ALSA -o .libs/vm-sound-ALSA /usr/bin/ld: skipping incompatible /usr/lib64/libasound.so when searching for -lasound /usr/bin/ld: skipping incompatible /usr/lib64/libasound.a when searching for -lasound /usr/bin/ld: cannot find -lasound collect2: ld returned 1 exit status make[1]: *** [vm-sound-ALSA.la] Error 1 make: *** [vm-sound-ALSA.la] Error 2 From: Eliot Miranda Sent: Saturday, July 17, 2010 2:00 PM To: Squeak Virtual Machine Development Discussion Subject: Re: [Vm-dev] Cog on linux On Fri, Jul 16, 2010 at 4:37 PM, Rob Withers <[hidden email]> wrote: -------------------------------------------------- From: "Rob Withers" <[hidden email]> Sent: Friday, July 16, 2010 7:08 PM To: "Squeak Virtual Machine Development Discussion" <[hidden email]> Subject: Re: [Vm-dev] Cog on linux -------------------------------------------------- From: "Levente Uzonyi" <[hidden email]> Sent: Friday, July 16, 2010 6:44 PM To: "Squeak Virtual Machine Development Discussion" <[hidden email]> Subject: Re: [Vm-dev] Cog on linux On Fri, 16 Jul 2010, Rob Withers wrote: -------------------------------------------------- From: "Casey Ransberger" <[hidden email]> Sent: Friday, July 16, 2010 5:10 PM To: "Squeak Virtual Machine Development Discussion" <[hidden email]> Subject: Re: [Vm-dev] Cog on linux I think you just need libasound Ok guys, I am working on it with my webhost. I am not sure how I can install an RPM on their box, so I submitted a ticket. Actually I don't think that any sound plugin would work, because the 32-bit binaries will not be available. But you don't need sound at all on a server, do you? You lost me on 32-bit binaries not being available. I found alsa-lib-1.0.13.tar.bz2 and I am preparing to build it. My error said: /usr/bin/ld: skipping incompatible /usr/lib64/libasound.so when searching for -lasound /usr/bin/ld: skipping incompatible /usr/lib64/libasound.a when searching for -lasound So it looks like I need a .so and a .a file. As rusty as I am on building for unix, are these static libs or shared libs? I do need to figure out how to cross compile to a 32bit system. I am researching this for the right target. I need i386-linux or something. I am attaching the config.guess file they use for this. Can anyone give me a helpful hand what I should specify doing ... './configure --enable-shared=no --enable-static=yes --target=i386-linux' Damn! I can't figure out how to change the install path to other than /usr/include, etc. I can't write to those directories. I am stuck. Regarding your observation that I don't need sound on a server, that is spot on. It may be too entangled for the time being. Is it possible to unentangle sound? Try configuring Cog without libalsa. e.g. ../../platforms/unix/config/configure --without-vm-sound-ALSA --without-vm-display-fbdev --without-npsqueak -prefix=/home/qwaq/qwaqvm/ CFLAGS="-g -O1 -msse2 -D_GNU_SOURCE -DITIMER_HEARTBEAT=1 -DNO_VM_PROFILE=1 -DCOGMTVM=0" LIBS=-lpthread and if you have problems with OSS sound you can disable that too ../../platforms/unix/config/configure --without-vm-sound-ALSA --without-vm-sound-OSS --without-vm-display-fbdev --without-npsqueak -prefix=/home/qwaq/qwaqvm/ CFLAGS="-g -O1 -msse2 -D_GNU_SOURCE -DITIMER_HEARTBEAT=1 -DNO_VM_PROFILE=1 -DCOGMTVM=0" LIBS=-lpthread that will leave you with vm-sound-null which is fine for a server. Thanks, Rob Cheers, Rob Levente Thanks, Rob |
Free forum by Nabble | Edit this page |