[英]compiling library for arm architecture
我想知道如何交叉编译用于ARM体系结构的库。 假设我有用于Intel体系结构的libcurl库,现在我想使用该库在ARM体系结构中运行该应用程序。 我需要为此交叉编译执行哪些步骤。 我正在使用Ubuntu 32位计算机。 我已经完成了一些基本步骤,例如
./configure --host= ...
make
make install
但无法获得完整的想法。 请提供一些有用的链接,或者如果有人可以解释这些内容。 任何帮助将不胜感激。
我知道在SO中已经有一篇关于此的文章“ http://stackoverflow.com/questions/5832734/cross-compiling-a-library-from-intel-to-arm”,但是我没有弄清楚这个。
平台:Linux,GCC编译器
您需要为架构的工具链提供host参数,例如对于arm-1808 ,它基本上具有arm架构,host参数将是arm-none-linux。 我对我的体系结构使用了以下configure命令,该命令已成功编译,并且能够在我的主板上运行该应用程序。
0。
如果工具链不在您的PATH中,则可以将其包含在这样的命令中:
export PATH=/home/user/CodeSourcery/Sourcery_G++_Lite/bin/:$PATH
1。
./configure --host=arm-none-linux-gnueabi --build=i686-linux CFLAGS='-Os' --with-ssl=/usr/bin/openssl --enable-smtp
2。
make
3。
sudo make install
4.现在该构建您的应用程序了。
arm-none-linux-gnueabi-gcc -o email smtp-multi.c -I/usr/local/include -L/usr/local/lib -lcurl
基本上,在编译应用程序时需要提供CPP和CF标志,要分别找出CF和CPP标志,可以分别使用以下命令:
curl-config --cflags
curl-config --libs
如果以上命令不起作用,请尝试:
arm-none-linux-gnueabi-gcc -o email smtp-multi.c -lcurl
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.