Setting up COBOL Compiler under Mac OS? - macos

In my university, we're being taught COBOL, and I'm trying to get a head start and learn COBOL, C++, and Java before I get into the classes next year.
Problem is; COBOL is so old, it's hard to grab support for it in mac (my laptop is a mac). I understand it runs fine on Mac, but finding someone who can explain how to set up the compiler is another story.

You can use brew to install GNU Cobol (Open Cobol). Just type:
brew install gnu-cobol
Then to compile program use:
cobc -x hello.cob
Browse --help for more option (like super nice -free)

Is there a particular Cobol you are trying to use. If not try
Open Cobol
There are some very old notes for the mac here but you might be better off asking a question in the Open Cobol Help forum.
The Open-Cobol project are currently collecting sample cobol programs which might be useful to you.

Related

Compiling software in cygwin requires cygwin libraries to run

I have just compiled some software in cygwin and all went well, except when I tried to run it on a different machine it required some cygwin specific libraries .dll's, is there anyway I can build this in with the software so it can run on third party machines without cygwin installed? Im trying to be generic with the question so the answer will suit other people facing the same or similar problem so sorry for the lack of detail on the software etc. (sgminer)
Thanks for any help
Not only is this a duplicate, as Paul R point out, it's also an FAQ on the Cygwin site.
From "How do I compile a Win32 executable that doesn't use Cygwin?"
The compilers provided by the mingw-gcc, mingw64-i686-gcc, and
mingw64-x86_64-gcc packages link against standard Microsoft DLLs
instead of Cygwin. This is desirable for native Windows programs that
don't need a UNIX emulation layer.
This is not to be confused with 'MinGW' (Minimalist GNU for Windows),
which is a completely separate effort. That project's home page is
http://www.mingw.org/index.shtml.

How do I write a cross platform installer script?

Instead of having a different download of a program for Windows and Linux, would it be possible to make the download be a cross-platform script/executable that can download the correct installer from an FTP server and start that? What language should I write it in? The only one I can think of would be Java, but I don't want to take the time to learn it. I can't write it in Python or BASH, because most Windows machines don't have these installed. How should I do this?
Cross-platform executable(like an exe or a.out or ELF) is out of question. An executable is never cross-platform when Windows is involved. The scripting languages(or JIT compiled) have to be brought in for this purpose. We are in a CHICKEN-AND-EGG paradox. You may have to detect the OS the downloader is using, using a Javascript script in your website page and decide on what is to be done next etc...
Although not exactly what you are looking for, below are some pointers.
The best tool I know of, for multi-platform installers, is Flexera Software's InstallAnywhere. That might be a bit costly. For free options I would look into options like:
PERL
PYTHON (but this is out of question as per your post, but look at the end of my post for more options for Python)
Although writing the installer in any of the above languages might mean a lot more work, they provide you unmatched flexibility and complete control.
Perl requires that you install Perl interpreter and modules on Windows. But this also seems to be out of question for you. So you may avoid the headache by looking into:
PAR
pp
For Python go through:
py2exe
pyinstaller

Windows IDE for Unix application?

We have created C&C++ applications based on Aix 6.1 (fortran for some models).
To improve our productivity (we use emacs or vi as editor, xlc/xlC/xlf as compiler, dbx to debug, IBM Synergy as configuration management tool), we are looking for an windows IDE to allow:
to modify our source code more easily,
to compile as if we are under unix
We also are logging for a graphical debugger.
Thank you for some ideas
I think that Emacs has been ported to Windows. And also GCC and Gnu make.
I've had some success with remote developing for AIX/Unix on Windows via a couple of routes.
Eclipse has some options. You can "mount" your project via ssh/rcp, and it will run the compiler remotely capturing the output. I did't attempt debugging but I assume support is there as well, especially if you use gdb.
BVRDE is another option. Works nicely. This link is also valid.
I also worked with XBuildStudio, it has some similar features to BVRDE.
Give them a try and see if any of them work for you.
Eclipse is a good one, but personally I prefer Codeblocks with Fortran plugin.

PC to Macbook Pro Transition - Getting (re)started?

I'm in my second computer science course right now. I've enjoyed programming so far, but really have just scraped my way by. I've not done much programming outside of required class work. For similar reasons, I never really invested in downloading/learning software to help me program (IDE's, editors, compilers, etc).
I know it sounds tedious, but my current setup is: notepad++ for coding; Filezilla to transfer .cpp & .h files to school's aludra/unix and compiling; unix tells me where my bugs are and I go back to notepad++ to debug; repeat until done.
This isn't fun - and I know it could be easier. But I put it off knowing that I was soon going to switch to a Mac. And, tomorrow, I'm switching.
So...
How should I set up my Macbook for the best programming experience?
What IDEs and editors and debuggers and so on should I download?
How will Mac programming differ from PC?
I'm open to all ideas and comments, even the most basic.
(Background - I'm learning/programming in C++ right now. Next semester, my classes switch to Java. I'm also going to take a class in web development, with HTML/CSS/Javascript/PHP. My new laptop will be a late 2009 Macbook Pro with Leopard, or maybe Snow Leopard. Free would be preferrable for all programs.)
Thank you all.
How exciting for you, I'm sure your new lappy will be able to make your life as a novice programmer much, much simpler.
Here's what I would do.
Download and install eclipse. It's free, and it's a very good IDE to have if you're going to program java. There are versions available for c/c++ and php as well, and there is a silly amount of great plugins for just about anything you'll ever need. Get it here.
Get the subversive plugin to your eclipse. It will make your life so easy when it comes to managing your code through svn. You can download the plugin through eclipse.
Download Ruby. Ruby is (imho) a great language for beginners, and the irb environment is very handy for trying little things out. Get it here.
Get emacs. Emacs is a great editor, and it's free. Use it for editing your system files, or for coding if you find it suits you. Get it here. (I can also recommend Textmate, it's a really good editor, but unfortunatly not free. If you want to spoil yourself a bit, though, I'd really recommend it.)
If you're doing modelling, you should definitly treat yourself to a licence of omnigraffle. It will definitly make your life easier, and it will let you draw models like nothing else. Get it here.
I would advise you not to bother with macports. Generally I find it will install everything, everyone and their dog on your lappy evertyime you use it, and that gets tedious pretty quickly.
If you're doing any php-stuff, get MAMP. MAMP puts you three clicks away from a running apache, mysql and php-setup without you so much as thinking. Very good piece of software, I think. Get it here.
For the rest of it, just download stuff when the need arises. Most of the things you'll need to install comes in handly little installer packages, and you won't need to know much in order to get them installed and working on your computer.
All the best of luck to you!
You definitely need Developer Tools from Apple. They include:
XCode, a very good IDE and editor
InterfaceBuilder
gcc, g++ and clang to compile code, in various versions
gdb as debugger
Instruments for performance analysis
as well as a lot of other utilities to program in C, C++, Java, Objective-C and Objective-C++.
Python, Ruby and PHP interpreters and libraries come preinstalled with every Mac so don't bother installing it by hand. (the Apache web server is also included, so you only need MySQL to have a full MAMP stack)
The Developer Tools package comes with every MacOSX DVD but I recommend you to download the latest version directly from Apple (it requires a free Developer account).
Once you installed it put XCode in the Dock and that's it! No other stuff needed.
NB: This is the simplest and only supported way of getting compilers and debuggers for C-based languages, even if you won't use XCode as an editor.
Speaking of editors, I recommend you to stick to XCode for a while because it is simple enough, yet very powerful, and it's free.
If you don't like it try TextWrangler (free) or TextMate (paid).
Vim and Emacs are two other good editors, but I don't recommend you to try them right now because they use obscure and non-standard key combinations, so you will spend a lot of time learning how to use them instead of programming.
Anyway the best thing you can do is to learn one editor very well, the effort in learning it will surely pay off every day.
Eclipse is the best editor for java. It's available on a mac for free, just as it is on windows.
There's a good text editor made by barebones software called text wrangler. It's free, and is good about syntax coloring for basic editing.
The best of the best for web development on mac is a tie between text mate and coda. If you're going to be doing a lot of web development, they're worth the investment.
To run a test environment in mysql/php, download MAMP (the mac counterpart to WAMP). Google search it - it's free, and really easy.
Mac programming doesn't differ at all from windows programming if you're writing java, php, etc., because it all goes the same place. Java just boils your code down differently depending on your machine, but it does the same stuff. PHP will probably be held on some sort of linux distro, so it's the same on both. C++ is the same given the appropriate compilers.
Enjoy your mac!

Good resources for writing console style applications for Windows?

For certain programs nothing beats the command line. Unfortunately, I have never seen good documentation or examples on how to write console applications that go beyond "Hello World". I'm interested in making console apps like Vim or Emacs. Well not exactly like Vim or Emacs but one that takes over the entire command prompt while it is in use and then after you exit it leaves no trace behind. I know that on Unix there is the curses library but for Windows? ...
PDCurses works on Win32.
I found List of Console Functions on msdn, PDCurses, and The Console Module.
You can certainly write that kind of application with Delphi, which has reasonable commandline support. People often overlook that Delphi can build any kind of Windows executable, not just GUI apps.
I don't know off-hand if the free 'Turbo' edition of Delphi has anything cobbled into it to PREVENT you from using it to build console apps - I would have thought it would be fine for this kind of thing.
There is a small but good tutorial on using C++ for the Windows console at www.benryves.com/tutorials/?t=winconsole&c=all going as far as coding a simple painting program.
You could also try Free Pascal. It is a free ((L)GPL) Object Pascal compiler which is compatible with the Delphi-compiler. It has an console-based IDE, which proves that you can make very good console-applications with it, and which you can use as an example.
If you want to use a graphical IDE to build your console-application, you can download the Lazarus IDE.
As a bonus your application will run on Windows (32/64 bit), Linux, Mac OS X, FreeBSD, Solaris etc...
In Windows or DOS, I used the conio library from Borland. It's very old but fine enough for a beginner like me.
As Robsoft says Delphi would be a good start. There is Turbo Delphi (Pascal based) or Turbo C++ both free editions.
web site here.
http://www.turboexplorer.com/
Check out some of the mono libs. They have a great one to parse command line arguments but can't remember the namespace.
Miguel just posted some terminal code as well.
For ncurses-like library/framework on Windows, I'll highly suggest to get your hand dirty with PDCurses.
If you trying/using C#, there's Curses-Sharp.
This is the best tool for it I've ever seen!!
1) Create any application using VB6 IDE
2) Convert it to Console Application, using THIS!

Resources