From: Stephen Horne on 2 Jan 2010 11:05 There's a couple of tools I need to use which are available from this site... http://www.complang.org/thurston/ The first, Ragel, has an rpm available and is easily installed. The second, Kelbt, is only available as source packaged in a .tar.gz. I've used both apps a great deal in the past, but only on Windows, using MinGW. Building Kelbt is no problem but I don't really know how to go about manually installing an app in Linux. This is a command-line tool and doesn't (and shouldn't) appear on the KDE menu, but I do need to make sure that it works as a command line tool (is on the path, or whatever the Linux equivalent of that is). The binary for Ragel ended up in /usr/bin I think. I'm tempted to just copy the binary for Kelbt into the same folder (and make sure the permissions are set right), but I'm concerned that this might be asking for trouble - that it might interfere with the normal OpenSUSE software management somehow or otherwise cause problems. Suggestions?
From: Peter Köhlmann on 2 Jan 2010 11:21 Stephen Horne wrote: > > There's a couple of tools I need to use which are available from this > site... > > http://www.complang.org/thurston/ > > The first, Ragel, has an rpm available and is easily installed. The > second, Kelbt, is only available as source packaged in a .tar.gz. > > I've used both apps a great deal in the past, but only on Windows, > using MinGW. > > Building Kelbt is no problem but I don't really know how to go about > manually installing an app in Linux. This is a command-line tool and > doesn't (and shouldn't) appear on the KDE menu, but I do need to make > sure that it works as a command line tool (is on the path, or whatever > the Linux equivalent of that is). > > The binary for Ragel ended up in /usr/bin I think. I'm tempted to just > copy the binary for Kelbt into the same folder (and make sure the > permissions are set right), but I'm concerned that this might be > asking for trouble - that it might interfere with the normal OpenSUSE > software management somehow or otherwise cause problems. > > Suggestions? Yes. "checkinstall" -- Klingon function calls do not have 'parameters' - they have 'arguments' - and they ALWAYS WIN THEM.
From: Bob Bob on 2 Jan 2010 12:35 Hi Stephen I havent looked at the app in question. Many however let you simply; ../configure make make install at the command prompt in the root of the unpacked tarball The final "make install" step being to copy the binary, libraries and man pages (if any) to the right place You will also find files named in upper case INSTALL README etc that will explain how to do. Configure will often tell you if any headers, tools are missing. As a general "rule" built software more commonly goes in /usr/local/* but thats your choice! Cheers Bob Stephen Horne wrote: > Building Kelbt is no problem but I don't really know how to go about > manually installing an app in Linux.
From: Stephen Horne on 3 Jan 2010 00:00 On Sat, 02 Jan 2010 11:35:09 -0600, Bob Bob <bob3bob3(a)suddenlink.net> wrote: >Hi Stephen > >I havent looked at the app in question. Many however let you simply; > >./configure >make >make install > >at the command prompt in the root of the unpacked tarball > >The final "make install" step being to copy the binary, libraries and >man pages (if any) to the right place Damn - I should have known that. Seems wierd to use make as a scripting language to copy files around, but I guess it makes sense in an already-need-make minimise-the-dependencies kind of way. >You will also find files named in upper case INSTALL README etc that >will explain how to do. Configure will often tell you if any headers, >tools are missing. Yes, but when you've been using something for years on what you think of as a compatible platform (mingw and, before that, cygwin), it's easy to forget that you're deliberately doing some things differently. In this case, I did read those things... once upon a time... >As a general "rule" built software more commonly goes in /usr/local/* >but thats your choice! I just discovered this bit for myself. Dug out my old dead trees from Mandrake 8.1, which cover a few things I may once have known, but had long since forgotten.
From: David Bolt on 3 Jan 2010 00:03
On Saturday 02 Jan 2010 16:05, while playing with a tin of spray paint, Stephen Horne painted this mural: <snip> > Building Kelbt is no problem but I don't really know how to go about > manually installing an app in Linux. Three main ways of doing it: The first is to search for a pre-built package and install that; The second is to use "./configure , make , sudo make install" ; The third is to build it and add the binaries to ${HOME}/bin . The first one has the advantage of adding the package to the package database, which makes removing it easy. The second one doesn't add it to the package database, which means that if the manual install writes to /usr/(s)bin and you later add a package using rpm, YaST2 or zypper, that includes a file of the same name, it will overwrite it without letting you know. Also, removing a package properly installed and managed by package management will remove the files, thereby further breaking the manually installed package. To make sure this doesn't happen, you need to make sure the package is installed under /usr/local/(s)bin . The third way is easier, especially for simple packages but does mean the software will only be accessible for the user that has installed it. > The binary for Ragel ended up in /usr/bin I think. It's interesting that kelbt isn't built in the same place as ragel, but it's not. As for where the binary should go, it should be under /usr/bin as a packaged binary or /usr/local/bin for an unpackaged one. > I'm tempted to just > copy the binary for Kelbt into the same folder (and make sure the > permissions are set right), That's easy enough. Use chmod to set the permissions to 755 , copy it into place as root and then use chown to change ownership to root.users and it should be fine. Personally, as you're talking about installing a locally built binary, I'd copy it under /usr/local/bin . > but I'm concerned that this might be > asking for trouble - that it might interfere with the normal OpenSUSE > software management somehow or otherwise cause problems. If someone, somewhere creates a package with the same name and you install it, it will overwrite the one you manually install. If not, or you don't install a package with the same name, it should be fine. > Suggestions? Yes. Look for a packaged version. You'll find one through the normal http://software.opensuse.org/search search page hiding in someones home project, or in this case a sub-project. Regards, David Bolt -- Team Acorn: www.distributed.net OGR-NG @ ~100Mnodes RC5-72 @ ~1Mkeys/s openSUSE 11.0 32b | | openSUSE 11.2 32b | openSUSE 11.0 64b | openSUSE 11.1 64b | openSUSE 11.2 64b | TOS 4.02 | openSUSE 11.1 PPC | RISC OS 4.02 | RISC OS 3.11 |