# SFOS IDE link error: hidden symbol '__gnu_f2h_ieee' is referenced by DSO

Hi all

In a new app I use the opencv library (opencv.org) for image processing. I compiled the library in the MerSDK VM once for the i486 as well as for the arm processor. For that I used the commands:

• sb2 -t SailfishOS-armv7hl -m sdk-build cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/home/mersdk/ocv/ocv-inst-arm -DBUILD_PERF_TESTS=OFF -DBUILD_TESTS=OFF –DBUILD_opencv_apps=OFF ../opencv
• sb2 -t SailfishOS-armv7hl -m sdk-build make
• sb2 -t SailfishOS-armv7hl -m sdk-build make install
• sb2 -t SailfishOS-i486 -m sdk-build cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/home/mersdk/ocv/ocv-inst-i386 -DBUILD_PERF_TESTS=OFF -DBUILD_TESTS=OFF – DBUILD_opencv_apps =OFF ../opencv

When I compile the application for the i486 processor, i.e. for the emulator, it compiles pretty fine and everything operates as expected. But, when I switch to the arm processor, I get the following linker error:

/opt/cross/bin/armv7hl-meego-linux-gnueabi-ld: harbour-myproject: hidden symbol __gnu_f2h_ieee' in /opt/cross/lib/gcc/armv7hl-meego-linux-gnueabi/4.8.3/libgcc.a(fp16.o) is referenced by DSO
`

With other words, it means that the symbol ‘__gnu_f2h_ieee’ indeed could be found in libgcc.a, but it is declared as hidden. It seems to me as would it be a compiler error, but I’m not sure and I’ve as well absolutely no clue how it can be solved. A research on the internet yielded a possible solution where the missing functions are added to the project by means of an additional file created by yourself (http://stackoverflow.com/questions/24561863/after-update-to-xcode-6-undefined-symbols-for-architecture-armv7-gnu-f2h and https://reviews.llvm.org/D4927). The same symbol also generated errors by compiling the opencv library. That, however, could be solved by omitting certain parts.

I really appreciate any input or advice on possible solutions of that issue.