22 August 2010, 10:38 | #1 |
Registered User
Join Date: Sep 2007
Location: Tampere / Finland
Posts: 127
|
GCC and ixemul.library
What tools are current for developing or porting applications for classic Amigas using gcc and ixemul.library? Is there something to replace the Geek Gadgets compilation of old?
The latest GG snapshot at back2roots.org is from 1998, but I notice that the latest ixemul.library at amiga.sf.net is from May this year and still expects a GG: assign, so GG isn't completely dead and forgotten. Some other components may also have updated ports in places, but I don't know how well they work together and hunting them down individually would be a chore. |
23 August 2010, 02:31 | #2 | |
Banned
Join Date: Jan 2010
Location: Kansas
Posts: 1,284
|
Quote:
http://sun.hasenbraten.de/vbcc/ It has an ixemul/libnix POSIX library that's been updated fairly recently. If you need anything fixed send Frank Wille (Vasm/PhxAss author) an email ... http://aminet.net/dev/c/vbcc_PosixLib.lha Vbcc keeps getting better. It's very usable and easy to get started unlike the GCC mega installation. Many people still use SASC as well. VBCC Good: easy install, portable, supported, small, above average code Bad: slow, missing some tools GCC 2.95.3 Good: good code, portable, fairly fast Bad: install hell, no support, not very compatible with newer GCC GCC 3.4.0 Good: more modern GCC support, portable, average code Bad: install hell, no support, worse code than 2.95.3 SAS/C (Lattice C) Good: fast, lots of tools (good debugger), polished, above average code Bad: not portable, no support, not easy to use, old |
|
23 August 2010, 09:56 | #3 | ||
Natteravn
Join Date: Nov 2009
Location: Herford / Germany
Posts: 2,545
|
Yes, indeed!
In fact -noixemul prevents using of ixemul.library, which is recommended when you can afford it. With ixemul.library your programs become an alien on any AmigaOS system. It will behave like a Unix program and uses all sorts of strange assignments for simulate such a system. When possible, you should invest some extra effort to make a real Amiga port. When you absolutely need ixemul, because of the high complexity of the port, make sure not to use any hacks after the last official ixemul V48. Quote:
Quote:
|
||
24 August 2010, 18:24 | #4 |
Registered User
Join Date: Sep 2007
Location: Tampere / Finland
Posts: 127
|
Thank you both for your insights.
|
26 August 2010, 08:18 | #5 |
Registered User
Join Date: Sep 2007
Location: Melbourne/Australia
Posts: 4,421
|
Hiya,
I'm currently coding a port using gcc v2.95.3 and if I use Libnix it crashes so I have to use ixemul.library, haven't found out why yet Maybe I should give vbcc a try instead.... |
14 November 2011, 18:24 | #6 |
Returning fan!
Join Date: Jan 2011
Location: Montréal, QC, Canada
Posts: 1,437
|
Dear all,
I am trying to compile thttpd (from Aminet) for my Amiga 1200 on Cygwin, I am facing a compatibility problem between "sys/timer.h" that define "struct timezone {...}" as and the expected "time_t timezone" by thttpd. Could anyone help me or point me towards useful ressources? I have been looking on the Web and found several pages but I am a newbie and no page really helped me. Best! PS. I am on Windows 7, using Cywin, gcc 3.4.4, installed includes and all found at http://www.zerohero.se/cross/os3.html |
14 November 2011, 23:19 | #7 |
Registered User
Join Date: Sep 2007
Location: Melbourne/Australia
Posts: 4,421
|
Hiya,
Have you tried AmiDevCPP yet? It's a pre-configured setup so it's a lot easier to do stuff. |
15 November 2011, 10:11 | #8 | |
Coder/webmaster/gamer
Join Date: Oct 2001
Location: Canberra/Australia
Posts: 2,674
|
Quote:
|
|
15 November 2011, 17:18 | #9 |
Returning fan!
Join Date: Jan 2011
Location: Montréal, QC, Canada
Posts: 1,437
|
@NovaCoder and Minuous
No, haven't tried yet because I need Cygwin to work and the install warns me that installing AmiDevC++ will change/corrupt (it is unclear to me ) my installed Cygwin... and, yes, using GCC gives a headache but it's cool I'll keep you posted on my findings! Cheers! |
22 November 2011, 04:03 | #10 |
Returning fan!
Join Date: Jan 2011
Location: Montréal, QC, Canada
Posts: 1,437
|
Hi all!
I managed to compile PHP v4.2.3 on Cywin for m68k-amigaos :-) I am putting together a Web page to detail all the steps but, before putting that one on-line and uploading the compiled version into Aminet, I want to make sure that all the PHP tests run... Cheers! |
22 November 2011, 05:06 | #11 |
Registered User
Join Date: Sep 2007
Location: Melbourne/Australia
Posts: 4,421
|
Cool well done.
Something I tried to setup (and failed!) was to use C++ Eclipse IDE on Windows using mingw. If someone could get that working it would be a great way to write 68k for classics using gcc. This thread should really be moved to the coding section BTW, way too boring for most people to read |
22 November 2011, 17:13 | #12 |
Global Moderator
Join Date: Aug 2008
Location: Sidcup, England
Posts: 10,300
|
|
23 November 2011, 03:31 | #13 | ||
Returning fan!
Join Date: Jan 2011
Location: Montréal, QC, Canada
Posts: 1,437
|
Quote:
- Eclipse with Cygwin GCC - Eclipse CDT with Cygwin GCC: automatic discovery of symbols and paths Quote:
Cheers! |
||
23 November 2011, 22:52 | #14 |
Registered User
Join Date: Sep 2007
Location: Melbourne/Australia
Posts: 4,421
|
Yep I tried those pages but still failed to get it working (lack of brain power).
|
07 January 2012, 15:29 | #15 |
Returning fan!
Join Date: Jan 2011
Location: Montréal, QC, Canada
Posts: 1,437
|
Same here!
Still cannot figure out how to tell Eclipse to use m68k-amigaos-gcc... but will keep trying! |
06 June 2012, 06:33 | #16 |
Registered User
Join Date: Sep 2007
Location: Melbourne/Australia
Posts: 4,421
|
|
06 June 2012, 22:10 | #17 |
Returning fan!
Join Date: Jan 2011
Location: Montréal, QC, Canada
Posts: 1,437
|
Hi NovaCoder!
Great catch! Indeed it works on a simple code, let's try now on complicated stuff... One thing though that I (currently) do not understand and how does Eclipse magically generate the makefiles... Cheers! Tygre |
19 October 2016, 20:33 | #18 |
bye
Join Date: Jun 2016
Location: Some / Where
Posts: 681
|
Here are my benchmark results for different compilers - using the dhrystone 2.1 benchnmark from aminet (more benchmarks may follow):
1. gcc-4.0.4 -O3 -fomit-frame-pointer -m68000 2. gcc-2.9.3 -O3 -fomit-frame-pointer -m68000 3. vbcc-0.8j -O=65535 4. sas/c 6.58 opt optgo nostkchk 5. gcc-4.0.4 -Os -fomit-frame-pointer -m68000 6. gcc-2.9.3 -Os -fomit-frame-pointer -m68000 7. vbcc-0.9e -O=65535 read more EDIT: "gcc-3.4.6 -O3 -fomit-frame-pointer -m68000" is on par with gcc-2.9.3! Last edited by bebbo; 19 October 2016 at 20:40. |
19 October 2016, 22:55 | #19 | |
Banned
Join Date: Jan 2010
Location: Kansas
Posts: 1,284
|
Quote:
1. d-g404o 238095 2. d-g293o 172413 3. d-vbcc08j 172413 4. d-sas 133333 5. d-g404s 109289 6. d-vbcc 100000 7. d-g293s 85836 Position number 6 and 7 swapped for me but results on a 68000 are likely much different. I might have to look into what caused the performance loss with vbcc. I would also like to see 68020 results as optimizing for the 16 bit 68000 is much different than the 32 bit 68020+. It would be helpful to see if the newer version of vbcc suffers from the same slow down when compiled for the 68020. Your web page "The recent vbcc 0.9e claims to be the best compiler." is not how I interpret this old test results page (tests probably done with an old version of vbcc) referring to PPC code generation of which vbcc has a better backend. Edit: It looks like there are minor differences in the 2 vbcc binaries until the function at offset $3e0 for both where the old binary has two 32x32=32 multiply inlines and the new one has seven 32x32=32 multiply inlines. This looks like a bug which needs to be looked into. The vbcc 0.9e code generation is very similar to the old vbcc although I notice a few small improvements otherwise. It may help to have d-vbcc and d-vbcc08j compiled with debug symbols as well as the exact original source code. We should contact Frank Wille if he doesn't notice this thread soon. Last edited by matthey; 22 October 2016 at 16:37. |
|
22 October 2016, 15:43 | #20 |
Natteravn
Join Date: Nov 2009
Location: Herford / Germany
Posts: 2,545
|
I can more or less confirm the results using a Dhrystone 2.1 port from our vbcc testsuite (the source bebbo provided doesn't compile - missing "timer").
I still had gcc 2.95.3 executables and vbcc 0.8 or 0.7x from 2001, which printed the following results on my 68060/50MHz: Code:
gcc 2.95.3: 71428 vbcc 0.8: 107526 |
Currently Active Users Viewing This Thread: 1 (0 members and 1 guests) | |
Thread Tools | |
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
Status of IXEmul | tygre | Coders. General | 4 | 24 May 2012 22:57 |
Does ClassicWB 3.9 installed ixemul.library? | NovaCoder | project.ClassicWB | 5 | 12 October 2011 13:15 |
Trying to use a library in StromC V4 (default gcc compiler) | NovaCoder | Coders. General | 3 | 09 September 2009 01:38 |
Making a shared library from a gcc .a library | JoJo | Coders. General | 1 | 10 March 2003 19:06 |
|
|