Software executable explained

From OLPC
Revision as of 06:48, 17 December 2008 by Sj (talk | contribs) (Reverted edits by 170.35.208.23 (Talk) to last version by Xavi)
Jump to navigation Jump to search

In order to understand the context of the contents of this page please note that these notes were originally part of the page Application Program: Test of ability with arithmetic.


How does one start to code the program on the linux platform for use on the laptop?

For example, if one had been coding this program ten years ago on a PC running DOS or Windows one could have used Borland Turbo Pascal 4 or 5 and programmed the application in the Pascal programming language and then produced an executable .exe file, a stand-alone .exe file to run on a PC. (I am not meaning Turbo Pascal for Windows, just ordinary Turbo Pascal.) Or one could have used Borland Turbo C and produced a stand-alone .exe file. It would not be apparent to the end user of the application program as to which source language had been used to program the application.

What are the options for carrying out the task on the linux platform?

Indeed, does it need to be done on the linux platform? Could it be done on a Windows PC? That question may show a total lack of knowledge of the linux platform and what it does, but that is the situation for me and maybe for some others who would like to learn. Is a laptop application a .exe file and if so is it the same as a .exe file on a Windows PC or is a .exe file a DOS concept linked to the Microsoft way of doing things?

Indeed, does the laptop use the same machine code instruction set as a PC?

Hopefully there will be enthusiasm to produce this application program. It may never get deployed to the laptops, though hopefully it will be. However, a lot of people could gain a lot of experience by participating in producing this application program.

I am not involved in this project, but maybe I can help:

On Linux, we have many types of executable files, both binary and text. The most common are files in ELF format. It is binary format that supports dynamic linked libraries. It works under i386 architecture, I don't know how about other archotectures. These files can be generated by many compilers avaiable for free, for example: gcc - free c/c++ compiler, fpc - free pascal compiler (it is compatibile with tp and (except vlc components) with delphi), f77 - fortran compiler (is somebody still using that ?), gnat - ada compiler, and many more. If you know how to code in Turbo Pascal for DOS, you can write simple text-mode applications for Linux without special training and compile it with fpc on Windows to test if you haven't got Linux.

Apropos .exe files: Every file on linux, can have executable attribute, just like files on Windows has read-only and archive attributes. File extension doesn't matter in linux, many files hasn't any extensions. The file is executable when it has executable attribute set, and system knows how to execute it. But I think that if you take source code to authors of OLPC's Linux distribution, they will be glad.

Sorry for my english.

Thank you for the information.

> I am not involved in this project, but maybe I can help:

Actually this project originated in the community rather than from the management and it is just a matter of people joining in if they wish. So, there is no formal level of being "involved", it is just a page in the wiki to which people can add things if they so choose. Hopefully in time the project will produce a finished program and provide good experience for people who participate and for people who read the page.