Intel® C++ Compiler
Community support and assistance for creating C++ code that runs on platforms based on Intel® processors.
The Intel sign-in experience has changed to support enhanced security controls. If you sign in, click here for more information.
7782 Discussions

unresolved external symbol __intel_fast_memcpy on Linux

Hello all,

I am trying to migrate a project from gcc to icc (Linux!).

A part of this project is a static library mylib.a, which is part of the SDK shipped with the product and which is to be linked statically into some client application.

When the library is generated using icc, I get:
undefined reference to `_intel_fast_memcpy'
diagnostics, if I use gcc for building an application with it.

I understand, that '_intel_fast_memcpy' is defined in libirc.a, which comes with icc.
Hence, if I add -lirc to the gcc command line, the application is built correctly.

But, as I cannot expect anyone using the SDK to habe libirc.a on his system, I'd like to have these externals resolved before shipping the library.

I neither want to ship libirc separately with the SDK, nor do I want to use icc's -nolib-inline option.
Is there another way to resolve this dilemma?

Thanks for any suggestions!
0 Kudos
1 Reply

Did you try this?

compile in a freestanding environment where the standard library
may not be present