attempting to resucitate Lahey Fortran port

Dr. Richard E. Hawkins hawk at
Wed Mar 10 15:48:54 PST 2004

On Fri, Mar 05, 2004 at 01:09:31AM +0100, Alexander Leidinger wrote:
> On Thu, 4 Mar 2004 15:49:10 -0500
> "Dr. Richard E. Hawkins" <hawk at> wrote:


> > This doesn't cause the devtools to be installed, nor does it cause an
> > error.

> I would use
>  RUN_DEPENDS= ${LINUXBASE}/usr/bin/ld:${PORTSDIR}/devel/linux_devtools

> This way you use the linux ld to link a program, so it will be an linux
> binary, not a FreeBSD binary. I don't know if this is intended. If you
> didn't have some special fixes like we have in the ifc and icc ports, I
> assume depending on linux_base is the right way to solve this issue.

I'm not following here:  ld comes from linux_devtools, not linux_base.

I've looked at the ifc port, but there's a lot there.  Is there just a 
little bit of magic that I can borrow from that?  

Hmm, would that also turn it into executables that can be debugged on

ifc conflicts with linux_devtools, and it would seem desireable to be
able to have both compilers installed simultaneously (especially for
someone like me, who seems to regularly trip over compiler bugs :)
[Though it was amusing to respond to: "why is this a bug" with "Richard
Maine says so." :)  ]

> > Also, the linux and linux_devtools seem to be a moving target.  What is
> > the correct way to make the appropriate dependency?

> The default linux emulation is based upon the v7 ports (since a long
> time), so you should use the v7 linux_devtools port. If your port
> depends upon another linux_base version, it also needs to depend on a
> similar linux_devtools port.

Hmm, plane old linux_base and linux_devtools seem to be v8 now.
However, after forcing a build and delete, they installed correctly as

Version doesn't matter much--all I really seem to need is glibc2.1+ and

> > Hmm, and my digging has lead to a new question.  There is now a
> > linuxthreads port.  Will this let multi-threaded linux applications run?
> > If so, it should be a dependency (lf95 can make multithreaded, but they
> > can't run with just devtools.  The port-descr says:
> > 
> > >LinuxThreads is an POSIX pthreads implementation using "kernel threads".  In
> > >this FreeBSD port, a kernel thread is started using rfork (whereas in the
> > >original Linux implementation a kernel thread is started using the Linux clone
> > >call).  This implementaion provides a so-called one-to-one mapping of threads to
> > >kernel schedulable entities. For more information see about the original

> linuxthreads is a FreeBSD library. It does threading similar to the way
> linux does it. So if your port doesn't produce native FreeBSD
> executables (because you don't do nasty tricks like the ifc and icc
> ports do), you can't use it. I think you need to lookup a linux pthreads
> lib somewhere. I can't give a better advise, as I don't know how lf95
> fails in this regard.

It flat out tries to start multiple linux threads.  If libthreads just
provides a resource like that, rather than maps kernel calls to FreeBSD
calls, there's no point.



Richard E. Hawkins, Asst. Prof. of Economics    /"\   ASCII ribbon campaign
dochawk at  111 Hiller (814) 375-4846      \ /   against HTML mail
These opinions will not be those of              X    and postings. 
Penn State until it pays my retainer.           / \   

More information about the freebsd-ports mailing list