Problem installing shoes3 on RHEL 6

Great,

Please gents, let me know when and to continue and the steps to follow.
I can remove Ruby completely and start all over if need be.

Thanks again,

Doing a quick test under rvm 1.9.2…

rvm 1.9.2
git clone
gem install bundler mechanize
rake

(again having issues lib vs lib64):
No such file or directory - /usr/lib/libgif.so

sed -i ‘s;/lib/;/lib64/;g’ make/linux/tasks.rb

oops one too many, change it back :slight_smile:

vi make/linux/tasks.rb

rake

cd dist
./shoes
“Welcome to SHOES”

brabuhr,

I downloaded your build.
I assume this is a shoes build ready to be used, correct?
I was thinking if I should un-tar it @/usr/local/shoes. What do you
think?

Thank you for your time and help! It is truly appreciated!

I downloaded your build.
I assume this is a shoes build ready to be used, correct?

I think so. I copied it over to a different SL6 machine than I did
the build on and it seemed to work properly there. (It didn’t work on
a Slackware machine (missing kerberos libraries).)

I was thinking if I should un-tar it @/usr/local/shoes. What do you think?

I think that should be fine.

Thank you for your time and help! It is truly appreciated!

You’re welcome. It was fun :slight_smile:

On Wed, May 4, 2011 at 2:21 PM, Ruby S. [email protected]
wrote:

-lgmodule-2.0 -lglib-2.0 -lshoes -L. -rdynamic -Wl,-export-dynamic
bin/main.o: In function main': main.c:(.text+0x64): undefined reference to ruby_snprintf’
main.c:(.text+0xa7): undefined reference to ruby_run_node' dist/libshoes.so: undefined reference to ruby_vsnprintf’
dist/libshoes.so: undefined reference to rb_str_new_cstr' dist/libshoes.so: undefined reference to rb_intern2’
collect2: ld returned 1 exit status
rake aborted!

I couldn’t replicate your issue, but I uploaded my build:
https://github.com/downloads/fjc/shoes/shoes-el6-x86_64.tar.gz

On Thu, May 5, 2011 at 11:45 AM, Ruby S. [email protected]
wrote:

[root@oc7871667644 ~]# shoes
shoes: error while loading shared libraries: libruby.so.1.9: cannot open
shared object file: No such file or directory

What happens if you cd to the extracted shoes directory and invoke it
like:

$ cd /usr/local/shoes
$ ./shoes

Also try:

$ LD_LIBRARY_PATH=/usr/local/shoes shoes

Thanks

Brabuhr,

First, thank you for your extra effort on getting this build.

I moved your build to:

/usr/local/shoes
The permissions to the above dir are: drwxrwxrwx 8 root root 4096 May
5
07:44 shoes

[root@oc7871667644 shoes]#* ls -al*
total 6180
drwxrwxrwx 8 root root 4096 May 5 07:44 .
drwxr-xr-x 16 root root 4096 May 4 13:23 …
-rw-r–r-- 1 root root 762 May 4 16:52 CHANGELOG.txt
-rw-r–r-- 1 root root 1401 May 4 16:52 COPYING.txt
drwxr-xr-x 2 root root 4096 May 4 16:52 fonts
drwxr-xr-x 8 root root 4096 May 4 11:05 .git
-rw-r–r-- 1 root root 78 May 4 11:05 .gitignore
drwxr-xr-x 3 root root 4096 May 4 16:52 lib
-rwxr-xr-x 1 root root 342840 May 4 16:52 libcurl.so.4
-rwxr-xr-x 1 root root 39512 May 4 16:52 libgif.so.4
-rwxr-xr-x 1 root root 149808 May 4 16:52 libjpeg.so.8
-rwxr-xr-x 1 root root 178368 May 4 16:52 libportaudio.so.2
-rwxr-xr-x 1 root root 2213869 May 4 16:52 libruby.so
-rwxr-xr-x 1 root root 2213869 May 4 16:52 libruby.so.1.9
-rwxr-xr-x 1 root root 473357 May 4 16:52 libshoes.so
-rwxr-xr-x 1 root root 586064 May 4 16:52 libsqlite3.so.0
-rwxr-xr-x 1 root root 39512 May 4 16:52 libungif.so.4
-rw-r–r-- 1 root root 3939 May 4 16:52 README.txt
drwxr-xr-x 4 root root 4096 May 4 16:52 ruby
-rw-r–r-- 1 root root 1758 May 4 11:05 .rvmrc
drwxr-xr-x 2 root root 4096 May 4 16:52 samples
-rwxr-xr-x 1 root root 577 May 4 16:52 shoes
-rwxr-xr-x 1 root root 9418 May 4 16:52 shoes-bin
drwxr-xr-x 3 root root 4096 May 4 16:52 static
-rw-r–r-- 1 root root 51 May 4 16:52 VERSION.txt

I also put it on the PATH:

[root@oc7871667644 shoes]# echo $PATH
/usr/lib64/qt-3.3/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/opt/ibm/c4eb/bin:/usr/local/rvm/bin:/usr/kerberos/bin:/root/bin:/usr/local/shoes:/usr/local/shoes/bin

I tried: shoes on the command prompt and got:

[root@oc7871667644 ~]# shoes
shoes: error while loading shared libraries: libruby.so.1.9: cannot open
shared object file: No such file or directory

Am I missing something? One thing to notice, I used shoes shortly
under
Windows. I just migrated from Windows to RHEL6.

Hey, I am sorry to take so much of your time. I do appreciate your help.

Thank you

Here is what I get:

/usr/local/shoes]$ ./shoes
uninitialized constant Encoding::UTF_7

/usr/local/shoes]$ ./shoes-bin
uninitialized constant Encoding::UTF_7

/usr/local/shoes]$ bash -x ./shoes
++ readlink -f ./shoes

  • REALPATH=/usr/local/shoes/shoes
  • APPPATH=/usr/local/shoes
  • ‘[’ /usr/local/shoes = shoes ‘]’
  • ‘[’ /usr/local/shoes = . ‘]’
    ++ pwd
    ++ awk ‘{ sub(/[0-9]+/, “”); print }’
  • ‘[’ /usr/local/shoes = /tmp/selfgz ‘]’
  • cd ‘’
  • LD_LIBRARY_PATH=/usr/local/shoes
  • /usr/local/shoes/shoes-bin
    uninitialized constant Encoding::UTF_7

On Thu, May 5, 2011 at 2:50 PM, Ruby S. [email protected]
wrote:

  • ‘[’ /usr/local/shoes = . ‘]’
    ++ pwd
    ++ awk ‘{ sub(/[0-9]+/, “”); print }’
  • ‘[’ /usr/local/shoes = /tmp/selfgz ‘]’
  • cd ‘’
  • LD_LIBRARY_PATH=/usr/local/shoes
  • /usr/local/shoes/shoes-bin
    uninitialized constant Encoding::UTF_7

Hmm… so if I follow you, when you cd first you do not get the
libruby error, but now you get a new encoding error?

The only reference I see to that constant is:
./ruby/lib/uri/common.rb: HTML5ASCIIINCOMPAT = [Encoding::UTF_7,
Encoding::UTF_16BE, Encoding::UTF_16LE,

I’m not sure why that would not be initialized…

Also try:

$ LD_LIBRARY_PATH=/usr/local/shoes shoes

I see the shoes shell script does set LD_LIBRARY_PATH:
REALPATH=readlink -f $0

APPPATH="${REALPATH%/*}"
if [ "$APPPATH" = "shoes" ]; then
  APPPATH="."
fi
if [ "$APPPATH" = "." ]; then
  APPPATH=`pwd`
fi

...

LD_LIBRARY_PATH=$APPPATH $APPPATH/shoes-bin "$@"

Also try to run it like:

$ bash -x /usr/local/shoes/shoes

and/or

$ cd /usr/local/shoes
$ bash -x ./shoes

Thanks

On Thu, May 5, 2011 at 2:50 PM, Ruby S. [email protected] wrote:

Here is what I get:

/usr/local/shoes]$ ./shoes
uninitialized constant Encoding::UTF_7

What do you get from:

$ iconv -l | fgrep UTF
ISO-10646/UTF-8/
ISO-10646/UTF8/
UTF-7//
UTF-8//
UTF-16//
UTF-16BE//
UTF-16LE//
UTF-32//
UTF-32BE//
UTF-32LE//
UTF7//
UTF8//
UTF16//
UTF16BE//
UTF16LE//
UTF32//
UTF32BE//
UTF32LE//

/usr/local/shoes]$ ./shoes
uninitialized constant Encoding::UTF_7

It’s interesting that the only results on Google for “uninitialized
constant Encoding::UTF_7” all relate to Hackety Hack.

This is the output to the iconv command:

Desktop]$* iconv -l | fgrep UTF*
ISO-10646/UTF-8/
ISO-10646/UTF8/
UTF-7//
UTF-8//
UTF-16//
UTF-16BE//
UTF-16LE//
UTF-32//
UTF-32BE//
UTF-32LE//
UTF7//
UTF8//
UTF16//
UTF16BE//
UTF16LE//
UTF32//
UTF32BE//
UTF32LE//

On Thu, May 5, 2011 at 5:16 PM, [email protected] wrote:

/usr/local/shoes]$ ./shoes
uninitialized constant Encoding::UTF_7

It’s interesting that the only results on Google for “uninitialized
constant Encoding::UTF_7” all relate to Hackety Hack.

I was hesitant to suggest it, but try editing ‘ruby/lib/uri/common.rb’
(I guess it would be /usr/local/shoes/ruby/lib/uri/common.rb for you)
to remove the reference to UTF_7:

$ diff -u ruby/lib/uri/common.rb.orig ruby/lib/uri/common.rb
— ruby/lib/uri/common.rb.orig 2011-05-05 16:15:13.103236933 -0400
+++ ruby/lib/uri/common.rb 2011-05-05 16:15:31.462344142 -0400
@@ -718,8 +718,7 @@

TBLENCWWWCOMP_ = {} # :nodoc:
TBLDECWWWCOMP_ = {} # :nodoc:

  • HTML5ASCIIINCOMPAT = [Encoding::UTF_7, Encoding::UTF_16BE,
    Encoding::UTF_16LE,
  • Encoding::UTF_32BE, Encoding::UTF_32LE] # :nodoc:
  • HTML5ASCIIINCOMPAT = []

    Encode given +str+ to URL-encoded form data.

And see what you get then.

It’s interesting that the only results on Google for “uninitialized
constant Encoding::UTF_7” all relate to Hackety Hack.

Not that interesting: Hackety Hack is Shoes, after all…

I don’t have any good ideas about this error, though.

It’s interesting that the only results on Google for “uninitialized
constant Encoding::UTF_7” all relate to Hackety Hack.

Not that interesting: Hackety Hack is Shoes, after all…

That’s why I found it interesting :slight_smile:

OK,

In:
pwd
/usr/local/shoes/ruby/lib/uri

I first saved *common.rb *to common.rb.05062011.

The only reference to UTF_7 is this: HTML5ASCIIINCOMPAT =
[Encoding::UTF_7, Encoding::UTF_16BE, Encoding::UTF_16LE,

I changed it to this:

HTML5ASCIIINCOMPAT = [Encoding::Encoding::UTF_16BE,
Encoding::UTF_16LE,

…and saved common.rb

I then proceeded to find the difference between the original which I
saved
as: *common.rb.05062011 *and the changed version: common.rb.

diff -u common.rb common.rb.05062011
— common.rb 2011-05-06 08:24:30.934834089 -0400
+++ common.rb.05062011 2011-05-04 16:52:24.000000000 -0400
@@ -718,7 +718,7 @@

TBLENCWWWCOMP_ = {} # :nodoc:
TBLDECWWWCOMP_ = {} # :nodoc:

  • HTML5ASCIIINCOMPAT = [Encoding::UTF_16BE, Encoding::UTF_16LE,
  • HTML5ASCIIINCOMPAT = [Encoding::UTF_7, Encoding::UTF_16BE,
    Encoding::UTF_16LE,
    Encoding::UTF_32BE, Encoding::UTF_32LE] # :nodoc:

    Encode given +str+ to URL-encoded form data.

I then proceeded to attempt a shoes execution:

[root@oc7871667644 shoes]# bash -x ./shoes
++ readlink -f ./shoes

  • REALPATH=/usr/local/shoes/shoes
  • APPPATH=/usr/local/shoes
  • ‘[’ /usr/local/shoes = shoes ‘]’
  • ‘[’ /usr/local/shoes = . ‘]’
    ++ awk ‘{ sub(/[0-9]+/, “”); print }’
    ++ pwd
  • ‘[’ /usr/local/shoes = /tmp/selfgz ‘]’
  • cd ‘’
  • LD_LIBRARY_PATH=/usr/local/shoes
  • /usr/local/shoes/shoes-bin
    uninitialized constant Encoding::UTF_16BE

I executed shoes again and now got:
[root@oc7871667644 shoes]# ./shoes
uninitialized constant Encoding::UTF_16LE

So, I decided to remove the entire record.
I proceeded to execute shoes and BINGO! It Worked! I got that
beautiful
screen that was looking for, the “Welcome to SHOES” screen.

NOW, my dilemma is how important is that record that I commented out???
This is the record:
HTML5ASCIIINCOMPAT = [Encoding::UTF_7, Encoding::UTF_16BE,
Encoding::UTF_16LE, Encoding::UTF_32BE, Encoding::UTF_32LE] # :nodoc:

I have no clue is to the importance of this record.

What do you guys think?
Is it safe to write code without that record?

Thank you for your help.

Well then, I am good to go.
Now my challenge is to continue learning Shoes.

I just want to thank you and Steve for your help. I truly appreciate it.

Thanks again

Any time! Please keep me up to date with your thoughts about Shoes, I’m
working on getting a 3.1 release out there…

On Fri, May 6, 2011 at 8:40 AM, Ruby S. [email protected]
wrote:

It Worked*! I got that beautiful screen that was looking for, the
“Welcome to SHOES” screen.

Awesome!

NOW, my dilemma is how important is that record that I commented out???
This is the record:
HTML5ASCIIINCOMPAT = [Encoding::UTF_7, Encoding::UTF_16BE,
Encoding::UTF_16LE, Encoding::UTF_32BE, Encoding::UTF_32LE] # :nodoc:

I have no clue is to the importance of this record.

What do you guys think?
Is it safe to write code without that record?

HTML5ASCIIINCOMPAT is only used in encode_www_form_component which
only seems to be called from encode_www_form which doesn’t seem to be
called from anywhere in the shoes code. Maybe some shoes applications
may make use of it, but even then I imagine it should be safe unless
the system happens to be using one of those encodings.