I'm hoping someone can help a complete *nix amatuer here.
I've been asked to implement HSBC payment integration for a client. HSBC supply (amongst others) Linux and Windows libraries, and I've been asked to see if we can implement this on our dedicated Unix host.
Basically the system comprises of a library 'libCcCpiTools.so' and 'TestHash.e'. The library has been copied to /usr/lib on our server, and when I try doing './TestHash.e' I get an error message saying "ELF Binary Type 0 not known", which I understand is because it's a Linux executable and not a Unix one. Now, from what I've been reading I can use 'brandelf' to alter the binary type (which may or may not work) but when I try it, it says 'command not found'.
I contacted the host tech support and they can convert our server to Linux compatibility mode, at the cost of £50 + VAT. Basically I would like to know if this will definitely solve the problem, before I authorize the conversion. It might seem like a silly question but I'm just trying to cover my back here.
The alternative is to download a Unix distro and get it running at home before going ahead, but given my complete lack of Unix and Linux this will probably take up too much time and will probably not work in the end anyway.
If anyone could help us out with this I'd love to hear from them :-)
Does HSBC provide source and makefiles for this app, for your platform?
... by the way it would help if we knew which UNIX you were trying to port into.
Sorry about that - it's FreeBSD based. I have the source code for the app but not the headers, and no makefiles. I just tried compiling it and the compilation breaks in one of the headers, where it checks for some environment definitions:
So it won't compile. I'm a programmer but haven't really done any development on UNIX, so not sure what the next step would be. I initially thought I could add in something like " && !defined(UNIX)" but not sure if that would be the correct definition (it doesn't help anyway). But have they guarded against compiling this for Unix for a reason?
To answer your question, are they different?: yes, for lots of reasons. For one - Linux has system calls like clone(), which don't (to my knowledge) exist in FreeBSD. This would automatically doom any Linux port to BSD a total failure.
If the developers for your app stuck to POSIX - sort of a one-unix specification for things - then porting from linux to BSD would not be so painful. And it may be listed in the "ports" section link. Dunno.
Unfortunately the temporary change to linux mode doesn't work, since when I run 'brandelf' I get 'command not found'. Also trying 'kldload linux' results in 'command not found' and running 'kldstat' results in nothing being reported at all.
First try:
This should locate the file if it exists. Let's pretend it does locate the file as
/usr/bin/local/bin/brandelf or some other name.
Simply use the entire filespec in your command like this:
You only do this on executable image files, the "file" command utility will tell you the flavor of any file if you are confused about which files need to be "brandelf" -ed
[code
$ > file testHash.e
/bin/sh script text
[/code]
If you see something like the above - it means the file is a shell script.
HI guys ,
I want to create a simple website which can communicate with unix server.
For example i want to run some command on a unix server through a website.
What will be the best approach to do the same.
Kindly help . (2 Replies)
Hi all,
We have serious problem with continuous integration system for application building on few different platforms.
(aix 5.2, 5.3 solaris 8,9 , SUSE Linux 9.3, 10 , Slackware Linux 10,11,12, RedHAt Enterprise Linux и Windows 2003)
We need application ( program ) to do the following tasks:... (1 Reply)