小编The*_*eer的帖子

Makefile中的哪个命令从QtCreator转移到"Sysroot"?

我正在使用Qmake和QtCreator进行交叉编译.在套件的设置中(工具链和qmake细节设置在那里)有一个名为的字段Sysroot:.(这里的例子)

由于QtCreator和Qmake最终负责生成Makefile,我的问题是,该选项在Makefile中转换为什么以及如何将其传递给工具链?


这个问题的动机

我有Sysroot:指向~/path-to-sysroot.~/path-to-sysroot包含为嵌入式目标交叉编译的常规sysroot结构.

~/path-to-sysroot
   ??? bin
   ??? include
   ??? lib
   ??? sbin
   ??? share
   ??? usr
Run Code Online (Sandbox Code Playgroud)

当我尝试交叉编译一些依赖于库的代码时~/path-to-sysroot/usr/lib,它会失败并显示缺少库的消息,但是存在.我解析了生成的makefile,发现没有任何痕迹~/path-to-sysroot/usr/lib.

qmake makefile qt-creator

13
推荐指数
1
解决办法
3202
查看次数

步入共享库的条件应该在gdb中运行?

有很多与特定错误相关的问题,为什么单独使用gdb进入共享库是行不通的.他们都没有就如何确定原因在哪里提供系统的答案.这个问题是关于诊断设置的方法.

设置示例

main.c中

#include <stdio.h>
#include "myshared.h"

int main(void)
{
    int a = 3;
    print_from_lib();
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

myshared.h

void print_from_lib();
Run Code Online (Sandbox Code Playgroud)

myshared.c

#include <stdio.h>

void print_from_lib()
{
    printf("Printed from shared library\n");
}
Run Code Online (Sandbox Code Playgroud)

将所有文件放在同一目录中.

export LIBRARY_PATH=$PWD:$LIBRARY_PATH
export LD_LIBRARY_PATH=$PWD:$LD_LIBRARY_PATH
gcc -ggdb -c -Wall -Werror -fpic myshared.c -o myshared-ggdb.o
gcc -ggdb -shared -o libmyshared-ggdb.so myshared-ggdb.o
gcc -ggdb main.c -lmyshared-ggdb -o app-ggdb
Run Code Online (Sandbox Code Playgroud)

得到错误

$ gdb ./app-ggdb 
GNU gdb (Ubuntu 7.12.50.20170314-0ubuntu1) 7.12.50.20170314-git
...### GDB STARTING TEXT
Reading symbols from app-ggdb...done.
(gdb) break 7
Breakpoint 1 …
Run Code Online (Sandbox Code Playgroud)

c linux debugging gdb

13
推荐指数
2
解决办法
788
查看次数

Matplotlib后端缺少带下划线的模块

我一直在使用matplotlib一段时间没有问题.已经有一段时间了,因为我需要交互式绘图功能(使用Tkaag).从那以后我更新了matplotlib几次.

我今天尝试使用它,但它产生了一个错误.

/usr/local/lib/python2.7/dist-packages/matplotlib/backends/tkagg.py in <module>()
----> 1 import _tkagg
      2 import Tkinter as Tk
      3 
      4 def blit(photoimage, aggimage, bbox=None, colormode=1):
      5     tk = photoimage.tk

ImportError: No module named _tkagg
Run Code Online (Sandbox Code Playgroud)

我尝试了一个不同的后端,添加了

backend      : GTKAgg
Run Code Online (Sandbox Code Playgroud)

到matplotlibrc.只是为不同的模块获得相同的错误.

ImportError: No module named _backend_gdk
Run Code Online (Sandbox Code Playgroud)

当我浏览/usr/local/lib/python2.7/dist-packages/matplotlib/backends/中的后端时,我注意到所有需要下划线的模块都丢失了.

alan@linux /usr/local/lib/python2.7/dist-packages/matplotlib/backends $ ls
backend_agg.py        backend_macosx.py    backend_template.pyc
backend_agg.pyc       backend_macosx.pyc   backend_tkagg.py
_backend_agg.so       backend_mixed.py     backend_tkagg.pyc
backend_cairo.py      backend_mixed.pyc    backend_wxagg.py
backend_cairo.pyc     backend_pdf.py       backend_wxagg.pyc
backend_cocoaagg.py   backend_pdf.pyc      backend_wx.py
backend_cocoaagg.pyc  backend_ps.py        backend_wx.pyc
backend_emf.py        backend_ps.pyc       __init__.py
backend_emf.pyc       backend_qt4agg.py    __init__.pyc
backend_fltkagg.py    backend_qt4agg.pyc   Matplotlib.nib
backend_fltkagg.pyc   backend_qt4.py       qt4_compat.py
backend_gdk.py        backend_qt4.pyc …
Run Code Online (Sandbox Code Playgroud)

python matplotlib

12
推荐指数
1
解决办法
2万
查看次数

从多个较小的2d阵列形成一个大的2d阵列

问题是这个问题的反面.我正在寻找一个从小数组原始大数组的泛型方法:

array([[[ 0,  1,  2],
        [ 6,  7,  8]],    
       [[ 3,  4,  5],
        [ 9, 10, 11]], 
       [[12, 13, 14],
        [18, 19, 20]],    
       [[15, 16, 17],
        [21, 22, 23]]])

->

array([[ 0,  1,  2,  3,  4,  5],
       [ 6,  7,  8,  9, 10, 11],
       [12, 13, 14, 15, 16, 17],
       [18, 19, 20, 21, 22, 23]])
Run Code Online (Sandbox Code Playgroud)

我目前正在开发一种解决方案,它会在完成后发布,但是我希望看到其他(更好)的方法.

python numpy

12
推荐指数
1
解决办法
8509
查看次数

Python Decimal - mili(10e-3)和micro(10e-6)的工程符号

这是困扰我的例子:

>>> x = decimal.Decimal('0.0001')
>>> print x.normalize()
>>> print x.normalize().to_eng_string()
0.0001
0.0001
Run Code Online (Sandbox Code Playgroud)

有没有办法用表示mili(10e-3)和micro(10e-6)的工程符号?

python decimal python-2.7

10
推荐指数
4
解决办法
2万
查看次数

解释gpio:在固定调节器设备树入口?

我正在尝试控制(打开/关闭)映射到GPIO引脚的电压调节器并为外部设备供电.调节器的设备树具有以下条目:

    reg_usb1_vbus: usb1_vbus {
        compatible = "regulator-fixed";
        regulator-name = "usb1_vbus";
        regulator-min-microvolt = <5000000>;
        regulator-max-microvolt = <5000000>;
        gpio = <&gpio3 28 0>;
        enable-active-high;
    };
Run Code Online (Sandbox Code Playgroud)

当我阅读文档时,我对此感到困惑:

可选属性:

  • gpio:用于启用控件的gpio

但是,我无法导出该GPIO的sysfs接口,并使用它来控制外部设备的电源(只是打开/关闭).此外,如果我gpio = <&gpio3 28 0>;从设备树中注释掉外部设备,则外部设备不会获得电源(如果没有注释,则设备始终处于通电状态).

监管机构已导出sysfs接口:

80090000.usb-vbus      power                  suspend_standby_state
device                 state                  type
microvolts             subsystem              uevent
name                   suspend_disk_state
num_users              suspend_mem_state
Run Code Online (Sandbox Code Playgroud)

但是我无法写入任何文件.

解释gpio:条目的正确方法是什么?

  • gpio用于启用控制

    在这种情况下,我错过了我想要调节器电压的引脚之间的映射.

  • gpio将从调节器获得电压为某些外部设备供电

    在这种情况下,我错过了打开和关闭它的方法

linux-device-driver linux-kernel embedded-linux device-tree

10
推荐指数
1
解决办法
4086
查看次数

制作H264 RTP流的最小SDP?

我正在寻找一个用于设置H264视频流的最低必要SDP的示例

假设只要通过SDP获得所需参数,接收器就可以播放H264.

我在这里找到了一个相关文档,但它在示例中使用了大量可选参数,我正在寻找最低要求.

sip rtp h.264 sdp

9
推荐指数
1
解决办法
2万
查看次数

为x86和ARM编写平台设备驱动程序的区别

我之前曾在ARM特定平台驱动程序上工作,最近转向基于Intel Atom.在ARM,它以前arch/arm/boot/dts/xx.dtsarch/arm/mach-xx/添加平台设备.我没有在x86上看到这些文件或文件夹.当我进入arch/x86/...那里没有dts文件或平台文件.

如果我想将我的平台设备添加到Intel Atom平台,我该如何添加我的平台设备信息?我在哪里可以获得特定于x86的dts文件(假设即使dts不是特定的任何架构)?

linux linux-device-driver linux-kernel

9
推荐指数
1
解决办法
838
查看次数

在我的,而不是库代码中停止异常

我正在使用Python库开发一个应用程序,urllib由于无法访问URL,有时会出现异常情况.

但是,异常会在标准库堆栈中引发近6个级别:

/home/user/Workspace/application/main.py in call(path)
     11                                  headers={'content-type': 'application/json'},
     12                                  data=b'')
---> 13     resp = urllib.request.urlopen(req)          ####### THIS IS MY CODE
     14     return json.loads(resp.read().decode('utf-8'))

/usr/lib/python3.4/urllib/request.py in urlopen(url, data, timeout, cafile, capath, cadefault, context)
    159     else:
    160         opener = _opener
--> 161     return opener.open(url, data, timeout)
    162 
    163 def install_opener(opener):

/usr/lib/python3.4/urllib/request.py in open(self, fullurl, data, timeout)
    461             req = meth(req)
    462 
--> 463         response = self._open(req, data)
    464 
    465         # post-process response

/usr/lib/python3.4/urllib/request.py in _open(self, req, data)
    479         protocol = …
Run Code Online (Sandbox Code Playgroud)

python exception-handling exception ipython

9
推荐指数
1
解决办法
383
查看次数

数字化模拟信号

我有一组表示数字输出的CSV值.它是使用模拟示波器收集的,因此它不是一个完美的数字信号.我试图过滤掉数据以获得完美的数字信号来计算周期(可能会有所不同).我还想定义从这个过滤得到的最大误差.

像这样的东西:

在此输入图像描述

理念

应用数据阈值.这是一个伪代码:

for data_point_raw in data_array:
    if data_point_raw < 0.8: data_point_perfect = LOW
    if data_point_raw > 2  : data_point_perfect = HIGH

else:
    #area between thresholds
    if previous_data_point_perfect == Low : data_point_perfect = LOW
    if previous_data_point_perfect == HIGH: data_point_perfect = HIGH
Run Code Online (Sandbox Code Playgroud)

有两个问题困扰着我.

  1. 这似乎是数字信号处理中的常见问题,但是我还没有找到预定义的标准功能.这是一种执行过滤的好方法吗?
  2. 我怎样才能得到最大误差?

python signal-processing numpy

8
推荐指数
1
解决办法
3794
查看次数