arm-eabi,gnueabi和gnueabi-hf交叉编译器有什么区别.我发现很难选择编译器.是否有针对arm的本机编译器?
我有一个设备驱动程序,它使用 arm-linux-gnueabi 编译得很好 - 我在代码中添加了一些 double 和 float 操作,并且在编译时收到以下警告:
警告:“__aeabi_dsub”[/home/preetam/Desktop/pwm_driver/driver/pwm_dev.ko] 未定义!警告:“__aeabi_d2uiz”[/home/preetam/Desktop/pwm_driver/driver/pwm_dev.ko] 未定义!警告:“__aeabi_dmul”[/home/preetam/Desktop/pwm_driver/driver/pwm_dev.ko] 未定义!警告:“__aeabi_ddiv”[/home/preetam/Desktop/pwm_driver/driver/pwm_dev.ko] 未定义!警告:“__aeabi_ui2d”[/home/preetam/Desktop/pwm_driver/driver/pwm_dev.ko] 未定义!
这是否意味着编译器和/或 arm 平台不支持 float 和 double 数据类型?
我该如何处理这种情况。我需要能够进行数学计算才能获得正确的功能。
那么,2个直截了当的问题.我正在尝试使用json和django.我试图使用shell并导入json没有错误.但是当我尝试使用json_dumps()或者只是转储()时,我得到了
NameError: name 'json_dumps' is not defined
Run Code Online (Sandbox Code Playgroud)
显然我的json导入尽管没有错误但仍无法正常工作.
此外,我在此期间提出的一些奖励问题是:
我正在尝试编写一个必须检查正确初始化的cpp模块.它需要使用至少一个非NULL指针进行初始化.如果没有,它需要删除自己并返回NULL.以下程序似乎确实破坏了对象,但它似乎没有返回null.
这里发生了什么?
#include <iostream>
using namespace std;
class cmod {
public:
cmod(int *p1=NULL, int *p2=NULL)
{
if( p1 == NULL && p2 == NULL){
delete(this);
}
else
cout << __func__ << ": Initialized" << endl;
if(p1 != NULL)
cout << "*p1 = " << *p1 << endl;
if(p2 !=NULL)
cout << "*p2 = " << *p2 << endl;
}
~cmod()
{
cout << __func__ << ": Destroyed" << endl;
}
};
int main()
{
int a=10, b = 20;
cmod …Run Code Online (Sandbox Code Playgroud) gcc ×2
linux ×2
linux-kernel ×2
arm ×1
c++ ×1
django ×1
gcc-warning ×1
json ×1
pointers ×1
python ×1
python-3.x ×1
simplejson ×1