Date: Sun, 17 Aug 1997 10:39:40 -0400 (EDT) From: Brian Clapper <bmc@WillsCreek.COM> To: TobyN@sysdac.com Cc: questions@FreeBSD.ORG Subject: Re: Ports and package installation problems Message-ID: <199708171439.KAA00809@current.willscreek.com> In-Reply-To: <33F6AF0A.6C64@sysdac.com> References: <199708161621.MAA04713@current.willscreek.com> <33F6AF0A.6C64@sysdac.com>
next in thread | previous in thread | raw e-mail | index | archive | help
[ This note is a response to a letter Toby Norris <TobyN.sysdac.com> sent directly to me. After spending a fair amount of time typing it in, I decided it might be of use to someone other than Toby, so I've taken the liberty of CC'ing `freebsd-questions'. Of course, it might also simply recapitulate stuff that's already there; if so, sorry. To borrow an old quote posted to USENET years ago by David Palmer (who was `palmer@tybalt.caltech.edu' back when I snarfed the quote): "Of course, someone who knows more about this will correct me if I'm wrong, and someone who knows less will correct me if I'm right." ] Toby Norris wrote: > You are absolutely right about > what I was doing. I have been successfully installing from the > packages/all directory on my dos partition. I'm installing and testing > all sorts of really neat programs. I am kind of dissapointed about > the fortran compiler though. I didn't know that it was just a front end > for the gcc compiler. Do you know if there is a real fortran > compiler/optimizer out there for FreeBSD? I'm afraid that g77 might not > let me port this really big legacy code. I cut my eye teeth on Fortran, back in the early '80s, but I haven't used it since about 1985, and I'm afraid I've had little incentive to keep up with the Fortran camp. However, I've heard good things about g77. You may get lucky. Consider this: The typical compiler compiles code to assembler, then assembles it. This arguably makes the resulting compiled code better tuned to the operating environment for which it was compiled--but it also means you have to have a different version of the compiler for every platform. g77 merely compiles down to C, instead of assembler, and uses gcc to compile the C code to assembler. Gcc is *very* *good*. It has been around for more than a decade now, and it continues to improve. If g77 produces decent C code, gcc should be able to produce a decent, efficient executable from it. The only real issue should be the faithfulness of the Fortran translation (i.e., how compliant is it with the Fortran 77 standard? or the Fortran 95 one?) Translators are not necessarily inherently inferior. For years, C++ was nothing more than a front-end for C. The original C++ compiler from AT&T goes by the name "cfront", as a matter of fact. As recently as four years ago, I was using a cfront-based C++ compiler. It produced perfectly decent code; the only drawback was that it was difficult to debug with a symbolic debugger, since the debugger thought it was dealing with the back-end C code that the C++ compiler produced. Other than that, I had no problems at all with the code produced by the translator. For another example, look at the GNU Ada Translator (GNAT, not to be confused with GNATS, the bug tracking tool). GNAT is a full-featured Ada compiler that supports most of Ada 83 and Ada 95. It was developed at NYU (or was it CUNY? I don't remember), and handed over to the GNU folks. Ada is an extremely semantically rich (read, "f---ing enormous") language. The original authors apparently wanted to spend their time on the Ada part of the compiler, without worrying about writing a back-end assembler code-generator (and rewriting it, over and over, for every platform). So they wrote a C back-end code generator, relying on gcc to do what it does very well: generate good assembler for the native platform. From what I've read, GNAT is a pretty decent Ada "compiler." My advice is to try g77 with an open mind. You might be surprised. If it turns out to suck, you might be able to find some commercial Fortran compilers that'll work on FreeBSD (e.g., a SCO or Linux product that can be run under the appropriate emulation subsystem on FreeBSD). > I just bought "The Complete FreeBSD" book and its a big help. It > mentions an atapi cdrom driver that I can't find anywhere: no on my cd > and not at the ftp site. The ATAPI CD-ROM driver is part of the kernel. To enable it, you need to create a kernel configuration file for your system, then add the following lines to it: options ATAPI #Enable ATAPI support for IDE bus options ATAPI_STATIC #Don't do it as an LKM device wcd0 #IDE CD-ROM The ATAPI_STATIC may not be necessary anymore; I've had that config file around for awhile. If you've never configured a custom kernel before, read (carefully!) the section entitled "Configuring the FreeBSD Kernel" in the FreeBSD Handbook (http://WWW.FreeBSD.ORG/handbook/handbook37.html#39). The Complete FreeBSD probably also has that info, though I don't own a copy, so I can't say for sure. I've had the ATAPI code enabled in my kernel(s) since I was running 2.1.6. It never worked with my CD-ROM (a NEC 8x ATAPI), until I installed FreeBSD 2.2.2. Since I've installed 2.2.2, I've *never* had a problem accessing my ATAPI CD-ROM. Not once. Never. (Did I mention that I've never had a problem?) A lot of work went into the ATAPI driver for 2.2.2. I don't know if the same massively-updated driver was shipped with 2.2.1 (Jordan? Soren?). I bypassed 2.2.1 and went directly from 2.1.7 to 2.2.2. You might try 2.2.2. > One thing that I still have to do that I > couldn't do that isn't mentioned in the book is configure my network. > I need to have tcpip for a local area network plus ppp setup through > my modem to my ISP. I do that now. I have two machines at home, networked via 10Base2; the ethernet cards use the `ed' network drivers (`man 4 ed'). When I dial up to my ISP, my gateway box does so over a 28.8 modem, using the kernel-based ppp software. (See http://WWW.FreeBSD.ORG/handbook/handbook183.html#428) Finally, I'm using private network addresses at home (i.e., network addresses that are reserved for private nets and are never seen on the Internet proper--see RFC 1918 for details); to simplify network access for the machine behind my gateway, I use the IP firewall kernel module (ipfw) and the `natd' network address translation daemon on the gateway; it transparently translates internal addresses to the legal Internet address assigned to my ppp link, allowing the machine behind my gateway to use the gateway as if it were a standard router. It all Just Works. This stuff is easy enough--provided you understand something about TCP/IP networking in the UNIX environment. If you don't, you'll need to bone up on that first. I can't possibly give you enough information over e-mail to substitute for that kind of knowledge. My advice: - Depending on your current level of TCP/IP knowledge, start with a primer on TCP/IP. There's one available here: http://pclt.cis.yale.edu/pclt/comm/tcpip.htm There's another one here: http://www.Sun.COM/sunworldonline/swol-11-1995/swol-11-sysadmin.html I'm sure there are others on the 'net. I got the first one from Yahoo, and the second one from the Unix Guru Universe (www.ugu.com). The second one is a bit Sun-specific, but it might still be helpful. - Then, start poking through the more technical networking tutorials at Unix Guru Universe. Examples of pointers I found at UGU (via `http://www.ugu.com/sui/ugu/show?I=help.articles.network&F=1111111111&G=Y') - Integrating Your Machine with the Network http://www.uwsg.indiana.edu/usail/index/network.html - Network Administrator's Guide (NAG) http://www.uni-tuebingen.de/zdv/projekte/linux/books/nag/nag.html Linux-specific, but many of the concepts and approaches, translate to BSD easily enough. - Next, read the networking docs in the FreeBSD handbook and in the Complete FreeBSD book you bought. - Finally, you might consider picking up a decent UNIX network administration book. The handbook contains pointers to some good references. See http://WWW.FreeBSD.ORG/handbook/handbook304.html#642 for details. For example, you'll probably find these two helpful: - Hunt, Craig. TCP/IP Network Administration. O'Reilly & Associates, Inc., 1992. ISBN 0-937175-82-X Details at: http://www.ora.com/catalog/tcp/ - Nemeth, Evi. UNIX System Administration Handbook. 2nd ed. Prentice Hall, 1995. ISBN 0131510517 Details at: http://www.prenhall.com/allbooks/ptr_0131510517.html > Then there's my Ensoniq sound board that I want > FreeBSD to recognize so I can play midi files. Can you help me with > either of these two items? Sorry, I can't help you with the Ensoniq board. However, you're not the first person to try it. Search the FreeBSD mailing list archives to see what others have experienced: - Go to http://WWW.FreeBSD.ORG/search.html - In the section entitled "Mailing list archives", enter "ensoniq" in the search box. Make sure the Questions archive is selected. (It should be.) Set the number of results to 35, and press search. When I did that, I got 35 hits. I'll leave it to you to read through them. Hint: Always check the archive. Lots of times, what you're trying to do has been explored already. Good luck. ----- Brian Clapper, bmc@WillsCreek.COM, http://WWW.WillsCreek.COM/ "To vacillate or not to vacillate, that is the question ... or is it?"
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199708171439.KAA00809>