Forums › SA Series Discussions › SA44B Linux 32-bit Linux API files have wrong architecture (64bit)
- This topic has 8 replies, 2 voices, and was last updated 8 years, 3 months ago by Justin Crooks.
- AuthorPosts
g.grassoParticipantHello,
I downloaded the Linux 32-bit Linux API files from the support section of your website and tried to compile the provided test program on a 32bit linux machine.
The compilation process halts with the following errors:
/usr/bin/ld: i386:x86-64 architecture of input file `libSHLAPI.a(main.o)’ is incompatible with i386 output
/usr/bin/ld: i386:x86-64 architecture of input file `libSHLAPI.a(myFFT.o)’ is incompatible with i386 output
/usr/bin/ld: i386:x86-64 architecture of input file `libSHLAPI.a(MeasRcvr.o)’ is incompatible with i386 output
/usr/bin/ld: i386:x86-64 architecture of input file `libSHLAPI.a(USBInterface.o)’ is incompatible with i386 outputWhich means that the libSHLAPI.a was compiled on 64bit architecture machine, as confirmed by the following command:
objdump libSHLAPI.a -a
In archive libSHLAPI.a:MeasRcvr.o: file format elf64-x86-64
rw-r–r– 0/0 5440 Jul 18 21:43 2011 MeasRcvr.oUSBInterface.o: file format elf64-x86-64
rw-r–r– 0/0 24392 Jul 18 21:43 2011 USBInterface.omain.o: file format elf64-x86-64
rw-r–r– 0/0 42048 Jul 18 21:43 2011 main.omyFFT.o: file format elf64-x86-64
rw-r–r– 0/0 15048 Jul 18 21:43 2011 myFFT.oPlease provide a download link for the 32bit version of the library.
Thank you
Justin CrooksModeratorDear G. Grasso,
These legacy APIs are no longer supported. I have had reports that the 64-bit API, when paired with a low latency kernel, works reasonably well.
Your best bet is Windows (x86/x64) which is our tried and true OS. If you must use Linux, try either the x64, or 32-bit ARM (Raspberry Pi 2-like processors).
We’ll remove the 32-bit link from our website to avoid this problem in the future.
g.grassoParticipantDear Justin,
I wish I could do what you suggest. Unfortunately after talking to one of your technical people we opted to develop a deadline critical application on a Linux x86 platform. I was warned about the lack of support on legacy versions of your SW, but I was never told that they did not exist anymore! The x86 version of your legacy code simply is not there – the packages which can be downloaded are all 64bit.
We cannot move to a windows based platform as our development is all based on Linux and the SignalHound analyzer is only one of the components of a very complex architecture, though a very important one.
I wonder if you could at least provide a recompiled version of your ARM code, which I understand is actively maintained, for the x86 architecture (32bit).
Our team could provide all the support you may require to help the recompilation process. We have extensive expertise on the Linux platform on a variety of architectures.
At this stage of our development moving to a different HW/OS platform would be a complete disaster!Looking forward to your reply.
Best regards,
Giorgio
Justin CrooksModeratorGiorgio,
Is this a one-off project, or something you will use for many customers? Are you aware of the low latency kernel requirements?Another issue is the driver. Is this a true x86 platform with full USB 2.0 support?
Justin CrooksModeratorI found this in the archives. A customer reported it worked for his 32 bit application. Let me know if it helps.
Attachments:
You must be logged in to view attached files.
g.grassoParticipantDear Justin,
The embedded platform is based on an Intel® Atom™ processor E680, which is a true x86 CPU. The main board we selected has four USB 2.0 ports, fully supported by the Linux kernel. I am aware of the low-latency kernel requirement and we have successfully recompiled and tested the drivers of all the other USB/PCIe devices, installed on the system, for a LL kernel.
The project is aimed at the development of a new high-end telecommunication product line, which we plan to sell in the range of 50-100 units per annum.
We have a presentation to selected customers to be held at the end of June, therefore we are running of a very tight schedule.
My team and I are truly depending on your support to deliver a working solution on time…Best regards,
Giorgio
g.grassoParticipantDear Justin,
I downloaded the new ZIP file you provided and I can confirm that the architecture is 32bit. We’ll try to compile it against our code and get back to you with a feedback asap.
Thank you!
Best,
Giorgio
g.grassoParticipantDear Justin,
I’m happy to report that the 32bit version of the library you provided works as expected on our HW. We were able, during our tests, to retrieve a maximum of 3 sweeps per second (using the FastSweep method) after a call to the Initialize method, which takes ~8 secs.
Thank you for your support!
Best,
Giorgio
Justin CrooksModeratorGood deal. I’m glad they worked!
- AuthorPosts
You must be logged in to reply to this topic.