(What follows is intended to be helpful, but you may notice that I am less than pleased with the whole experience of obtaining and installing this particular software package.)
After having some fun and games getting EiffelStudio 6.4 installed on my Ubuntu 9.10 system, I have finally had success and I herein share what I had to do in hopes of sparing others the same aggravation. I am assuming you have already went through the gauntlet of creating a login account for the Eiffel Software site and accepting their EULA just to be able to download the install package (get the GPL version), not to mention figuring out that the two packages listed for the Linux platform 64 bit and 32 bit are actually the exact same package. If this was not enough to discourage you from bothering, then proceed!
Once you have downloaded the installation package, you have to figure out what to do with it. Well, if you are an experienced Linux user you go ahead and extract it out somewhere. You will get an Eiffel64 folder. However, the software is not yet fully installed. In the Eiffel64 folder, you will find an INSTALL.readme file. This file contains a link back to the Eiffel site with the actual installation instructions, which oddly enough, gives you instructions on how to extract the very folder you just found the INSTALL.readme file in. I can only presume it is intended as a sick inside joke about recursion… Any how, here is that link to the installation instructions.
The instructions assume you have logged in as root, but as any Ubuntu user will know, that is not necessarily the case, so apply sudo to the instructions given as appropriate. In what follows I give my slant on the official instructions, so go ahead and read those now and then come back here to see my interpretation.
First, you are asked to check your system to see if you have GTK+ 2.4 or higher. If you are like me, you may not know or you assume you have the latest greatest. I mean, you did just install Ubuntu 9.10 with the current Gnome build! Even if you do check, you will find that you have GTK+ 2.18 ( rember 18 is greater than 4!), so you think you are all set. Not so fast bucko! Unless you intentionally went to the trouble of installing Ubuntu 9.10 with all the development packages, you do not have the actual GTK+ development libraries you are going to need. You should install gnome-core-devel. Either use Synaptic Package Manager to do this or do this at the shell prompt:
$ sudo apt-get install gnome-core-devel
Second, you will be given instructions on extracting the Eiffel64 package. Since you have already extracted somewhere, just copy the whole folder to the intend final location. You ultimately want the EiffelStudio installation to be at /usr/local/Eiffel64.
Third, you will be asked to add some environment variables to you system and to adjust your system PATH. Instead of doing it exactly as they say, save yourself some frustration and just add the following to your lines to the end of you .profile file. Log out and then back in to make these take affect prior to continuing.
# Settings for EiffelStudio
Finally, go down to the bottom of the Eiffel installation instructions page. You will find instructions on building the examples. I do very much recommend you do this because it will also build the precompiled environment for the EiffelStudio development system you will need. However, you will need to grant yourself privileges to the directory in which the compilation with take place, so do this at the shell prompt:
$ sudo chmod 777 /usr/local/Eiffel64/precomp/spec/linux-x86
Now you can follow the final instructions that are given successfully, which are to run this $ISE_EIFFEL/make_install at the shell prompt. This will start the compilation process which will take SEVERAL minutes. Take a break while this is running, you deserve it! 😉
You should be able to now run estudio from the shell prompt or create yourself an equivalent desktop icon to launch it and have a functioning EiffelStudio 6.4 development system. Though I have been a bit aggravated by the process to get this installed, it does appear to be a very nice system and I have created a base EiffelVision2 project successfully. Give it a try!
Found this blog post that presents a solution for Mac OS X – Snow Leopard – running slowly in some situations.
Slow Snow Leopard
K5WLF relates an account of how the lost art of Morse Code saved the day, and many lives, when modern signalling equipment failed.
The Future of the Past
Ok, so it begins. I have programmed in x86 assembler under DOS before, even some IBM BAL,
but never under Linux. NASM comes in my distro, Ubuntu, so why not give it a try? I even
decided I wanted an editor with some syntax highlighting, so I installed Kate and set it
for Intel x86 (NASM) highlight mode. Now, we're all set. Following a long standing tradition
since the days of intro C programming with Kernighan & Ritchie, I present helloworld.asm.
Here is the source code and the instructions on how to link it and run it on a Linux system
for those who also might want to give this a try.
global _start ; declare the beginning of the program
section .data ; declare the data section
msg db "Hello, World!", 10 ; sets msg to point to the text of our message
length equ $-msg ; sets length to be the length of our message in bytes
section .text ; declare the code section
_start: ; This first portion of our program does four
; critical things so that the system can send
; a message to the console. We have to tell
; the system we want to perform a sys_write and
; where to do sys_write. We also have to give
; it a pointer to the text to be sent and the
; length of the text. These get loaded into the
; eax, ebx, ecx, and edx registers using mov.
; Once the stack is loaded with the requisite
; information we have Linux execute the code
; with an interrupt call 80h.
mov eax, 4 ; 4 is the Linux system call sys_write
mov ebx, 1 ; 1 is the file handle to wrtie to, in this case STDOUT.
; If we had put 2, it would send the output to STDERR.
mov ecx, msg ; pass the pointer to our text to be writen out
mov edx, length ; pass the length of our message.
int 80h ; make the syscall
; Finally, we exit the program gracefully.
; We give an exit code indicating no errors - 0,
; and we give the code for terminate.
; Again we execute the code stack with int 80h.
; Basically, that is how all assembler code works,
; by loading your registers with the right values,
; for the needed functions, system calls, and then
; execute the code.
xor ebx, ebx ; pass 0 as 'exit code'
mov eax, 1 ; pass the terminate process value - 1.
int 80h ; make the syscall
Ok, that's the actual code. Type into any text editor and save the
file as helloworld.asm.
Next, we go to the command prompt and run it through the assembler,
NASM and then link it to produce object code and an executable file.
$ nasm -f elf helloworld.asm (assemble the source file into object code,
will produce helloworld.o)
$ ld -o helloworld helloworld.o (link it up, will produce the executable
$ ./helloworld (run it!)
If everything goes as planned, we should get this:
$ Hello, World!
PMODE is one of the SDF MOTD blog/wiki sites. I have never seen a site before that had so much in-depth and useful information on Operating Systems development. Kudos to Chris Lattner for making this terrific resource available to those of us who have always had an interest in this subject but never new quite where or how to start!
Hello everybody out there using minix -
I'm doing a (free) operating system (just a hobby, won't be big and
professional like gnu) for 386(486) AT clones. This has been brewing
since april, and is starting to get ready. I'd like any feedback on
things people like/dislike in minix, as my OS resembles it somewhat
(same physical layout of the file-system (due to practical reasons)
among other things).
I've currently ported bash(1.08) and gcc(1.40), and things seem to work.
This implies that I'll get something practical within a few months, and
I'd like to know what features most people would want. Any suggestions
are welcome, but I won't promise I'll implement them :-)
PS. Yes - it's free of any minix code, and it has a multi-threaded fs.
It is NOT protable (uses 386 task switching etc), and it probably never
will support anything other than AT-harddisks, as that's all I have :-(.
(posted on comp.os.minix, Aug. 26, 1991 12:12am)
By Cal Thomas · Tuesday, November 24, 2009
Not all revolutions begin in the streets with tanks and guns. Some advance slowly, almost imperceptibly, until a nation is transformed and the public realizes too late that their freedoms are gone. Such is the revolution now taking place in America. The ’60s crowd has emerged from the ideological grave and is about to impose on this country a declaration of dependence in the form of government-run health insurance and treatment.
It is with great pride that I announce that the Tarleton Amateur Radio Club (TAARC) is slated to receive a funding grant of $2000 from Texas Lions via the Stephenville Lions Club. Our past president at Lions Club, Cindy Watson, worked long and hard on getting this for us in response to the initiative Lions International has started for Lions Clubs to become more involved in emergency and disaster situations in the communities they serve. When news of this initiative reached the Stephenville Lions Club, of which I am also an officer, I made them aware of the needs of TAARC for a set of solar panels, batteries and charge controller for our EmComm trailer so we can better server Erath County with our EmComm Amateur Radio abilities when grid electric power is unavailable. At long last, the grant has been approved thanks to Cindy Watson’s efforts on our behalf. Many thanks to Cindy and the Stephenville Lions Club for their support of Emergency Communications and Amateur Radio in our community. I feel that a wonderful partnership has been established between two great organisations that seek to better server their local community.
Bill Allen – WA5PB
A really good post install todo list after installing Ubuntu, focused on v9.10 Karmic from The Silent Number blog
An insightful article by Larry Barr, K5WLF, on maintaining good public relations as we practice our craft as Amateur Radio Operators.
The Public Face of Amateur Radio
I think we have all seen the following quotes in emails on the internet. They have a strong appeal and the ideas presented typically strike the reasoning mind that has any historical sense as being true. The following is some interesting research into the origins of what can be best called a modern proverb. While the true authorship, particularly of the first paragraph, may never be known, there is good material for thought here in the research presented. This article points out both the need for being honest in our quotations, but also of the origins and growth of modern proverbs. Proverbs, when they faithfully reflect the human condition a give us wisdom retain their value over time – even if we never know who first said them.
The Truth About Tytler
A democracy cannot exist as a permanent form of government. It can only exist until the voters discover that they can vote themselves largesse from the public treasury. From that moment on, the majority always votes for the candidates promising the most benefits from the public treasury with the result that a democracy always collapses over loose fiscal policy, always followed by a dictatorship. The average age of the world’s greatest civilizations has been 200 years.
Great nations rise and fall. The people go from bondage to spiritual truth, to great courage, from courage to liberty, from liberty to abundance, from abundance to selfishness, from selfishness to complacency, from complacency to apathy, from apathy to dependence, from dependence back again to bondage.
— often attributed to Alexander Tytler