From: Greg Allen <hidden> Date: 2000-01-14 00:32:34
Is it possible compile C source in CodeWarrior and create an object (or
library) that can be used under LinuxPPC?
For example, you should be able to take a really simple program, like:
#include <stdio.h>
void goo(float f)
{ printf("goo: f = %g\n", f); }
make an object in CW, copy to LinuxPPC, link it with gcc into some app that
can call goo.
(Why? CW has an AltiVec compiler, Linux currently has none.)
I notice that a CW "Shared Library" is recognized by /usr/bin/file as
"header for PowerPC PEF executable", but objdump will have nothing to do
with it.
My initial guess is "not yet". Has anyone else ever tried this?
I guess there's no reason that objcopy couldn't be extended to handle this
(assuming CodeWarrior's object/lib file formats are public info).
Thanks,
-Greg
--------------------------------------------------------------------
| Gregory E. Allen, Research Engineer [off-list ref] |
| Advanced Technology Laboratory, Sonar Development Division |
| Applied Research Laboratories: The University of Texas at Austin |
--------------------------------------------------------------------
** Sent via the linuxppc-dev mail list. See http://lists.linuxppc.org/
From: David Riley <hidden> Date: 2000-01-13 20:39:02
Greg Allen wrote:
Is it possible compile C source in CodeWarrior and create an object (or
library) that can be used under LinuxPPC?
I notice that a CW "Shared Library" is recognized by /usr/bin/file as
"header for PowerPC PEF executable", but objdump will have nothing to do
with it.
My initial guess is "not yet". Has anyone else ever tried this?
I guess there's no reason that objcopy couldn't be extended to handle this
(assuming CodeWarrior's object/lib file formats are public info).
My guess is that it is difficult if not impossible to use a MacOS
library (PowerPC or not) in linux, since even libraries make use of the
"cfrg" resource. And Metrowerks' object format is proprietary (this is
one of the things that causes the major rift between CW and MPW).
--
"Your mouse has been moved. Windows 95 must be restarted for change to
take effect."
** Sent via the linuxppc-dev mail list. See http://lists.linuxppc.org/
The GNU utilities do not support PEF (perhaps b/c it's a proprietary format
you have to license in order to use).
T.
Greg Allen wrote:
Is it possible compile C source in CodeWarrior and create an object (or
library) that can be used under LinuxPPC?
For example, you should be able to take a really simple program, like:
#include <stdio.h>
void goo(float f)
{ printf("goo: f = %g\n", f); }
make an object in CW, copy to LinuxPPC, link it with gcc into some app that
can call goo.
(Why? CW has an AltiVec compiler, Linux currently has none.)
I notice that a CW "Shared Library" is recognized by /usr/bin/file as
"header for PowerPC PEF executable", but objdump will have nothing to do
with it.
My initial guess is "not yet". Has anyone else ever tried this?
I guess there's no reason that objcopy couldn't be extended to handle this
(assuming CodeWarrior's object/lib file formats are public info).
Thanks,
-Greg
--------------------------------------------------------------------
| Gregory E. Allen, Research Engineer [off-list ref] |
| Advanced Technology Laboratory, Sonar Development Division |
| Applied Research Laboratories: The University of Texas at Austin |
--------------------------------------------------------------------
Is it possible compile C source in CodeWarrior and create an object (or
library) that can be used under LinuxPPC?
For example, you should be able to take a really simple program, like:
#include <stdio.h>
void goo(float f)
{ printf("goo: f = %g\n", f); }
make an object in CW, copy to LinuxPPC, link it with gcc into some app that
can call goo.
(Why? CW has an AltiVec compiler, Linux currently has none.)
I notice that a CW "Shared Library" is recognized by /usr/bin/file as
"header for PowerPC PEF executable", but objdump will have nothing to do
with it.
My initial guess is "not yet". Has anyone else ever tried this?
I guess there's no reason that objcopy couldn't be extended to handle this
(assuming CodeWarrior's object/lib file formats are public info).
Thanks,
-Greg
--------------------------------------------------------------------
| Gregory E. Allen, Research Engineer [off-list ref] |
| Advanced Technology Laboratory, Sonar Development Division |
| Applied Research Laboratories: The University of Texas at Austin |
--------------------------------------------------------------------
--
Sincerely,
Jim Potter
45th Parallel Processing
503.769.9138
jrp@wvi.com
** Sent via the linuxppc-dev mail list. See http://lists.linuxppc.org/
From: Tony Mantler <hidden> Date: 2000-01-14 01:48:39
At 6:32 PM -0600 1/13/00, Greg Allen wrote:
Is it possible compile C source in CodeWarrior and create an object (or
library) that can be used under LinuxPPC?
For example, you should be able to take a really simple program, like:
#include <stdio.h>
void goo(float f)
{ printf("goo: f = %g\n", f); }
make an object in CW, copy to LinuxPPC, link it with gcc into some app that
can call goo.
(Why? CW has an AltiVec compiler, Linux currently has none.)
I notice that a CW "Shared Library" is recognized by /usr/bin/file as
"header for PowerPC PEF executable", but objdump will have nothing to do
with it.
My initial guess is "not yet". Has anyone else ever tried this?
I guess there's no reason that objcopy couldn't be extended to handle this
(assuming CodeWarrior's object/lib file formats are public info).
Last I checked, all the MacOS runtime architectures are well documented by
Apple, right back to the original 68k Segment Manager. Try
<http://developer.apple.com/techpubs/mac/runtimehtml/RTArch-89.html> for a
start.
You might check the appropriate ABIs though, to see if there's any
inconsitancies between how codewarrior generates it's code for MacOS, and
what linux expects the code to look like.
But before you do all that, check to see if Altivec register saving is
implemented in the kernel yet. There was a discussion a while back on how
to do it best, but I didn't hear if any code came out of it.
(I don't have a G4, so I'm certainly not going to write it... Donations are
welcome though) 8)
Cheers - Tony :)
--
Tony Mantler Renaissance Nerd Extraordinaire eek@escape.ca
Winnipeg, Manitoba, Canada http://www.escape.ca/~eek
** Sent via the linuxppc-dev mail list. See http://lists.linuxppc.org/