TL;DR:
* please declare project language in CMakeLists.txt * please fix punctuation in "4.10.2-" * please enable/add ImmX11Plugin, OggPlugin, KedamaPlugin, KedamaPlugin2 * please disable vm-display-custom and vm-sound-custom
Thanks!
=================
Here's my build dependencies install line:
yum install subversion make gcc cmake libX11-devel libXext-devel libXrender-devel libXi-devel pulseaudio-libs-devel alsa-lib-devel nas-devel libogg-devel libvorb-devel speex-devel libuuid-devel dbus-devel pango-devel gstreamer-devel mesa-libGL-devel libffi-devel
=================
This is building from subversion:
[olpc@xo-93-20-bc bld]$ ../platforms/unix/cmake/configure cat: ../platforms/unix/svnversion: No such file or directory -- Configuring squeak 4.10.2- for armv7l-unknown-linux-gnu ... -- The C compiler identification is GNU 4.7.2 -- The CXX compiler identification is unknown ... CMake Error: your CXX compiler: "CMAKE_CXX_COMPILER-NOTFOUND" was not found. Please set CMAKE_CXX_COMPILER to a valid compiler path or name. ... -- Configuring incomplete, errors occurred!
SOLUTION: declare Squeak as a C-only project in CMakeLists.txt:
PROJECT (squeak C)
==================
Why is it installing in
/usr/local/lib/squeak/4.10.2-/
instead of
/usr/local/lib/squeak/4.10-2/
?
===================
Missing plugins:
ImmX11Plugin (just missing from plugins.ext) OggPlugin (just missing from plugins.ext) KedamaPlugin (missing src) KedamaPlugin2 (missing src) npsqueak.so (no CMake file)
Superfluous plugins (should be disabled from building):
vm-display-custom vm-sound-custom
===================
(after adding ImmX11Plugin to plugins.ext) CMake Error: CMake can not determine linker language for target:ImmX11Plugin CMake Error: Cannot determine link language for target "ImmX11Plugin".
... which means that there are no source files. Indeed there is no source file - I guess a VMMaker package was missing?
===================
(after adding OggPlugin to plugins.ext) compiles just fine
===================
Otherwise it works great! :)
Disclaimer: I did not test all plugins yet.
- Bert -
Hello Bert.
Is prebuilt VM available somewhere? For what ARM version you build VM? (I need ARMv7) Is it interpreter VM or cog family?
Best regards, Denis
2012/11/7 Bert Freudenberg bert@freudenbergs.de
TL;DR:
- please declare project language in CMakeLists.txt
- please fix punctuation in "4.10.2-"
- please enable/add ImmX11Plugin, OggPlugin, KedamaPlugin, KedamaPlugin2
- please disable vm-display-custom and vm-sound-custom
Thanks!
=================
Here's my build dependencies install line:
yum install subversion make gcc cmake libX11-devel libXext-devel libXrender-devel libXi-devel pulseaudio-libs-devel alsa-lib-devel nas-devel libogg-devel libvorb-devel speex-devel libuuid-devel dbus-devel pango-devel gstreamer-devel mesa-libGL-devel libffi-devel
=================
This is building from subversion:
[olpc@xo-93-20-bc bld]$ ../platforms/unix/cmake/configure cat: ../platforms/unix/svnversion: No such file or directory -- Configuring squeak 4.10.2- for armv7l-unknown-linux-gnu ... -- The C compiler identification is GNU 4.7.2 -- The CXX compiler identification is unknown ... CMake Error: your CXX compiler: "CMAKE_CXX_COMPILER-NOTFOUND" was not found. Please set CMAKE_CXX_COMPILER to a valid compiler path or name. ... -- Configuring incomplete, errors occurred!
SOLUTION: declare Squeak as a C-only project in CMakeLists.txt:
PROJECT (squeak C)
==================
Why is it installing in
/usr/local/lib/squeak/4.10.2-/
instead of
/usr/local/lib/squeak/4.10-2/
?
===================
Missing plugins:
ImmX11Plugin (just missing from plugins.ext) OggPlugin (just missing from plugins.ext) KedamaPlugin (missing src) KedamaPlugin2 (missing src) npsqueak.so (no CMake file)
Superfluous plugins (should be disabled from building):
vm-display-custom vm-sound-custom
===================
(after adding ImmX11Plugin to plugins.ext) CMake Error: CMake can not determine linker language for target:ImmX11Plugin CMake Error: Cannot determine link language for target "ImmX11Plugin".
... which means that there are no source files. Indeed there is no source file - I guess a VMMaker package was missing?
===================
(after adding OggPlugin to plugins.ext) compiles just fine
===================
Otherwise it works great! :)
Disclaimer: I did not test all plugins yet.
- Bert -
On 2012-11-07, at 17:48, Denis Kudriashov dionisiydk@gmail.com wrote:
Hello Bert.
Is prebuilt VM available somewhere? For what ARM version you build VM? (I need ARMv7) Is it interpreter VM or cog family?
Best regards, Denis
Fedora itself has a prebuilt VM, yes:
[olpc@xo-93-20-bc ~]$ rpm -q squeak-vm squeak-vm-3.10.5-9.fc18.armv7hl
Debian does, too (I tried the one in Raspbian, for example):
http://packages.debian.org/search?keywords=squeak-vm
- Bert -
2012/11/7 Bert Freudenberg bert@freudenbergs.de
TL;DR:
- please declare project language in CMakeLists.txt
- please fix punctuation in "4.10.2-"
- please enable/add ImmX11Plugin, OggPlugin, KedamaPlugin, KedamaPlugin2
- please disable vm-display-custom and vm-sound-custom
Thanks!
=================
Here's my build dependencies install line:
yum install subversion make gcc cmake libX11-devel libXext-devel libXrender-devel libXi-devel pulseaudio-libs-devel alsa-lib-devel nas-devel libogg-devel libvorb-devel speex-devel libuuid-devel dbus-devel pango-devel gstreamer-devel mesa-libGL-devel libffi-devel
=================
This is building from subversion:
[olpc@xo-93-20-bc bld]$ ../platforms/unix/cmake/configure cat: ../platforms/unix/svnversion: No such file or directory -- Configuring squeak 4.10.2- for armv7l-unknown-linux-gnu ... -- The C compiler identification is GNU 4.7.2 -- The CXX compiler identification is unknown ... CMake Error: your CXX compiler: "CMAKE_CXX_COMPILER-NOTFOUND" was not found. Please set CMAKE_CXX_COMPILER to a valid compiler path or name. ... -- Configuring incomplete, errors occurred!
SOLUTION: declare Squeak as a C-only project in CMakeLists.txt:
PROJECT (squeak C)
==================
Why is it installing in
/usr/local/lib/squeak/4.10.2-/
instead of
/usr/local/lib/squeak/4.10-2/
?
===================
Missing plugins:
ImmX11Plugin (just missing from plugins.ext) OggPlugin (just missing from plugins.ext) KedamaPlugin (missing src) KedamaPlugin2 (missing src) npsqueak.so (no CMake file)
Superfluous plugins (should be disabled from building):
vm-display-custom vm-sound-custom
===================
(after adding ImmX11Plugin to plugins.ext) CMake Error: CMake can not determine linker language for target:ImmX11Plugin CMake Error: Cannot determine link language for target "ImmX11Plugin".
... which means that there are no source files. Indeed there is no source file - I guess a VMMaker package was missing?
===================
(after adding OggPlugin to plugins.ext) compiles just fine
===================
Otherwise it works great! :)
Disclaimer: I did not test all plugins yet.
- Bert -
Thanks
2012/11/7 Bert Freudenberg bert@freudenbergs.de
On 2012-11-07, at 17:48, Denis Kudriashov dionisiydk@gmail.com wrote:
Hello Bert.
Is prebuilt VM available somewhere? For what ARM version you build VM? (I need ARMv7) Is it interpreter VM or cog family?
Best regards, Denis
Fedora itself has a prebuilt VM, yes:
[olpc@xo-93-20-bc ~]$ rpm -q squeak-vm squeak-vm-3.10.5-9.fc18.armv7hl
Debian does, too (I tried the one in Raspbian, for example):
http://packages.debian.org/search?keywords=squeak-vm
- Bert -
2012/11/7 Bert Freudenberg bert@freudenbergs.de
TL;DR:
- please declare project language in CMakeLists.txt
- please fix punctuation in "4.10.2-"
- please enable/add ImmX11Plugin, OggPlugin, KedamaPlugin, KedamaPlugin2
- please disable vm-display-custom and vm-sound-custom
Thanks!
=================
Here's my build dependencies install line:
yum install subversion make gcc cmake libX11-devel libXext-devel libXrender-devel libXi-devel pulseaudio-libs-devel alsa-lib-devel nas-devel libogg-devel libvorb-devel speex-devel libuuid-devel dbus-devel pango-devel gstreamer-devel mesa-libGL-devel libffi-devel
=================
This is building from subversion:
[olpc@xo-93-20-bc bld]$ ../platforms/unix/cmake/configure cat: ../platforms/unix/svnversion: No such file or directory -- Configuring squeak 4.10.2- for armv7l-unknown-linux-gnu ... -- The C compiler identification is GNU 4.7.2 -- The CXX compiler identification is unknown ... CMake Error: your CXX compiler: "CMAKE_CXX_COMPILER-NOTFOUND" was not found. Please set CMAKE_CXX_COMPILER to a valid compiler path or name. ... -- Configuring incomplete, errors occurred!
SOLUTION: declare Squeak as a C-only project in CMakeLists.txt:
PROJECT (squeak C)
==================
Why is it installing in
/usr/local/lib/squeak/4.10.2-/
instead of
/usr/local/lib/squeak/4.10-2/
?
===================
Missing plugins:
ImmX11Plugin (just missing from plugins.ext) OggPlugin (just missing from plugins.ext) KedamaPlugin (missing src) KedamaPlugin2 (missing src) npsqueak.so (no CMake file)
Superfluous plugins (should be disabled from building):
vm-display-custom vm-sound-custom
===================
(after adding ImmX11Plugin to plugins.ext) CMake Error: CMake can not determine linker language for target:ImmX11Plugin CMake Error: Cannot determine link language for target "ImmX11Plugin".
... which means that there are no source files. Indeed there is no source file - I guess a VMMaker package was missing?
===================
(after adding OggPlugin to plugins.ext) compiles just fine
===================
Otherwise it works great! :)
Disclaimer: I did not test all plugins yet.
- Bert -
On Wed, Nov 07, 2012 at 05:07:41PM +0100, Bert Freudenberg wrote:
- please fix punctuation in "4.10.2-"
It's not missing punctuation, it's a missing Subversion rev number that should be getting generated during the cmake/configure phase.
==================
Why is it installing in
/usr/local/lib/squeak/4.10.2-/
instead of
/usr/local/lib/squeak/4.10-2/
?
===================
It should be installing in something like /usr/local/lib/squeak/4.10.2-nnnn/ where nnnn is the Subversion rev number. This gets figured out during the build based on the SVN control files, and it's stored in a file somewhere (in platforms/unix/cmake I think). If the platforms source tree does not have either the SVN control files or the generated file, it will not have the "nnnn" part of the version name.
Dave
On Wed, Nov 07, 2012 at 02:02:37PM -0500, David T. Lewis wrote:
On Wed, Nov 07, 2012 at 05:07:41PM +0100, Bert Freudenberg wrote:
- please fix punctuation in "4.10.2-"
It's not missing punctuation, it's a missing Subversion rev number that should be getting generated during the cmake/configure phase.
==================
Why is it installing in
/usr/local/lib/squeak/4.10.2-/
instead of
/usr/local/lib/squeak/4.10-2/
?
===================
It should be installing in something like /usr/local/lib/squeak/4.10.2-nnnn/ where nnnn is the Subversion rev number. This gets figured out during the build based on the SVN control files, and it's stored in a file somewhere (in platforms/unix/cmake I think). If the platforms source tree does not have either the SVN control files or the generated file, it will not have the "nnnn" part of the version name.
Following up on this, the missing "nnnn" version number comes from the file platforms/unix/svnversion. This file is not itself under version control, but is created and used by platforms/unix/cmake/configure. If the svnversion file is not present, and if the .svn control files are also not present, then you would end up with a version tag such as "4.10.2-" when something like "4.10.2-2616" was expected.
Conclusion: platforms/unix/cmake/configure must be run at least one time on a platforms tree that has the ./svn control files. Once that has been done, the platforms/unix/svnversion file will be present.
Dave
On 2012-11-08, at 02:43, "David T. Lewis" lewis@mail.msen.com wrote:
On Wed, Nov 07, 2012 at 02:02:37PM -0500, David T. Lewis wrote:
On Wed, Nov 07, 2012 at 05:07:41PM +0100, Bert Freudenberg wrote:
- please fix punctuation in "4.10.2-"
It's not missing punctuation, it's a missing Subversion rev number that should be getting generated during the cmake/configure phase.
==================
Why is it installing in
/usr/local/lib/squeak/4.10.2-/
instead of
/usr/local/lib/squeak/4.10-2/
?
===================
It should be installing in something like /usr/local/lib/squeak/4.10.2-nnnn/ where nnnn is the Subversion rev number. This gets figured out during the build based on the SVN control files, and it's stored in a file somewhere (in platforms/unix/cmake I think). If the platforms source tree does not have either the SVN control files or the generated file, it will not have the "nnnn" part of the version name.
Following up on this, the missing "nnnn" version number comes from the file platforms/unix/svnversion. This file is not itself under version control, but is created and used by platforms/unix/cmake/configure. If the svnversion file is not present, and if the .svn control files are also not present, then you would end up with a version tag such as "4.10.2-" when something like "4.10.2-2616" was expected.
Conclusion: platforms/unix/cmake/configure must be run at least one time on a platforms tree that has the ./svn control files. Once that has been done, the platforms/unix/svnversion file will be present.
Dave
Thanks for the correction. I did of course run configure. The file was not created. Going to figure out why ...
I see. It tests for "${unix}/../.svn" which I don't have because I only check out the unix and cross platform trees, not all. I pasted my patches below.
Works fine now.
- Bert -
Index: ../platforms/unix/cmake/configure =================================================================== --- ../platforms/unix/cmake/configure (revision 2619) +++ ../platforms/unix/cmake/configure (working copy) @@ -90,7 +90,7 @@
vmmversion="`tr '\015 ' '\012\012' < "${interp_h}" | sed '1,/VMMaker/d;q'`"
-if test -d "${unix}/../.svn"; then +if test -d "${unix}/.svn"; then svnversion=`svn info "${unix}/ChangeLog" | fgrep Revision: | awk '{print $2}'` echo "${svnversion}" > "${unix}/svnversion" else Index: ../platforms/unix/CMakeLists.txt =================================================================== --- ../platforms/unix/CMakeLists.txt (revision 2619) +++ ../platforms/unix/CMakeLists.txt (working copy) @@ -2,7 +2,7 @@ # # Last edited: 2012-09-16 21:19:57 by piumarta on linux64
-PROJECT (squeak) +PROJECT (squeak C)
CMAKE_MINIMUM_REQUIRED (VERSION 2.6.2)
vm-dev@lists.squeakfoundation.org