小编Phi*_*all的帖子

pygobject-2.28.6将无法配置:找不到包"gobject-introspection-1.0",如何解决?

我试图让pygobject-2.28.6在cygwin中编译(存储库中的版本是2.28.4,这有一些问题).这是./configure的尾部:

checking for GLIB - version >= 2.24.0... yes (version 2.34.3)
checking for ffi... checking for FFI... yes
checking for GIO... yes
checking for GIOUNIX... yes
checking for GI... no
configure: error: Package requirements (glib-2.0 >= 2.24.0
        gobject-introspection-1.0 >= 0.10.2
    ) were not met:

No package 'gobject-introspection-1.0' found

Consider adjusting the PKG_CONFIG_PATH environment variable if you
installed software in a non-standard prefix.

Alternatively, you may set the environment variables GI_CFLAGS
and GI_LIBS to avoid the need to call pkg-config.
See …
Run Code Online (Sandbox Code Playgroud)

cygwin gobject pkg-config pygobject gobject-introspection

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

为什么要使用GLib功能?

虽然编程C和GTK +,为什么会"更好"来使用g_strdup_printf,g_free,g_strcmp0等...和同事glib函数?

c gtk glib

29
推荐指数
3
解决办法
2万
查看次数

GLib和GObject究竟是什么?

我一直在研究python-mpdor的源代码,它提到它是

基于gobject,用于简单的事件处理(在高级客户端类中).

有人可以用简单的语言向我解释究竟是什么Glib,GObject以及它们如何相互作用以及它在事件处理中扮演什么角色.

我试着寻找Glib,GObject但我没有找到任何基本的解释.我发现的所有解释都非常技术性和技术性,我的意思是不适合初学者.

此外,有人可以指向一些关于和的初学者教程/文章.GlibGObject

gobject glib pygobject

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

D-Bus:有没有"D-Bus嗅探器"这样的东西?

有没有"D-Bus嗅探器"这样的东西?

我想"嗅探"在D-Bus上传输的所有(或部分)消息.

linux dbus monitor

24
推荐指数
3
解决办法
6187
查看次数

Anaconda ImportError:/usr/lib64/libstdc++.so.6:找不到版本“GLIBCXX_3.4.21”

当我尝试在 conda 环境中运行 Python 脚本时,出现以下导入错误

(squad) azada@scholar-fe00:~/Desktop/Toy-Problem-Team-2 $ python3 train.py 
Traceback (most recent call last):
  File "train.py", line 21, in <module>
    from tensorboardX import SummaryWriter
  File "/home/azada/miniconda3/envs/squad/lib/python3.6/site-packages/tensorboardX/__init__.py", line 5, in <module>
    from .torchvis import TorchVis
  File "/home/azada/miniconda3/envs/squad/lib/python3.6/site-packages/tensorboardX/torchvis.py", line 11, in <module>
    from .writer import SummaryWriter
  File "/home/azada/miniconda3/envs/squad/lib/python3.6/site-packages/tensorboardX/writer.py", line 15, in <module>
    from .event_file_writer import EventFileWriter
  File "/home/azada/miniconda3/envs/squad/lib/python3.6/site-packages/tensorboardX/event_file_writer.py", line 28, in <module>
    from .proto import event_pb2
  File "/home/azada/miniconda3/envs/squad/lib/python3.6/site-packages/tensorboardX/proto/event_pb2.py", line 7, in <module>
    from google.protobuf import descriptor as _descriptor
  File "/home/azada/miniconda3/envs/squad/lib/python3.6/site-packages/google/protobuf/descriptor.py", line …
Run Code Online (Sandbox Code Playgroud)

c++ python glibc anaconda tensorflow

24
推荐指数
3
解决办法
5万
查看次数

D-Bus:性能改进实践

在大量使用D-Bus的应用程序中获得更好的时间性能有哪些好的做法?

以下是我们团队通过艰难学校学到的一些知识:

  • 尝试将数据实体组合到一个大型结构/对象中,以通过D-Bus IPC发送.
  • 尝试让所有D-Bus流量在应用程序/流程中的单个点上进入单个代理,而不是让它们遍布整个应用程序/流程.

dbus

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

如何在dbus-send中使用变体字典(`a {sv}`)

dbus-send在使用时遇到了一些麻烦a{sv}

in_signature='a{ss}'使用以下命令行调用方法似乎工作:

dbus-send --dest="org.test.TestService" 
/org/test/TestService/object org.test.TestService.method1 dict:string:string:"a","1","b","2"
Run Code Online (Sandbox Code Playgroud)

现在我想为values(in_signature=a{sv})提供一个带变体类型的字典,

我该如何使用它dbus-send

dbus

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

系统D-Bus不允许使用conf文件冲销所有权

我正在尝试创建一个在系统总线上运行的守护程序服务,其中从此服务发送和接收的权限应该完全对任何人开放.(安全性不是此服务的关注点).当我尝试使用QtDbus(使用PyQt)注册服务时,我收到此错误:Connection ":1.0" is not allowed to own the service "org.dbus.arduino" due to security policies in the configuration file.这个其他堆栈溢出具有相同的错误,但由于某种原因在这种情况下根本没有帮助.dbus_bus_request_name ():不允许连接拥有该服务.

通常你应该保留system.conf文件,并在目录中添加你的权限"打出"配置文件system.d.我已经做到了这一点,但它似乎没有改变任何东西,无论我如何打开我的权限.事实上,我几乎是积极的,它没有改变任何东西!这是我的conf文件,因为它就在这一刻.

<!DOCTYPE busconfig PUBLIC
 "-//freedesktop//DTD D-BUS Bus Configuration 1.0//EN"
 "http://www.freedesktop.org/standards/dbus/1.0/busconfig.dtd">

<busconfig>
    <policy user="myUser">
        <allow own="*"/>
        <allow own="org.dbus.arduino"/>
        <allow send_type="method_call" log="true"/>
    </policy>                 
    <policy user="root">        
        <allow own="*"/>
        <allow own="org.dbus.arduino"/>
        <allow send_type="method_call" log="true"/>
    </policy>                         
    <policy context="default">            
    </policy>                                                     
</busconfig>                 
Run Code Online (Sandbox Code Playgroud)

即使我这样做或类似的东西,它仍然不起作用.

<busconfig>               
    <policy context="default">     
        <allow own="*"/>
        <allow own="org.dbus.arduino"/>
        <allow send_type="method_call" log="true"/>       
    </policy>                                                     
</busconfig>  
Run Code Online (Sandbox Code Playgroud)

我甚至把文件的名称以az开头,以便它可能是最后一个读入的文件.这是system.conf文件,注意我已经注释掉了"允许自己"部分.这是使其工作的唯一方法(以及最糟糕的"修复").

<!DOCTYPE busconfig PUBLIC …
Run Code Online (Sandbox Code Playgroud)

linux configuration dbus qtdbus

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

使用C中的GLib/GIO从Web获取文件

我应该使用什么功能使用GLib/GIO库从Web获取文件?

如果我的文件来自:

gchar *path = "http://xxx.yyyServer/sharing/temp.txt"
Run Code Online (Sandbox Code Playgroud)

我该怎么做才能下载它?

对于本地文件,我只使用像fopen和fread这样的C库.

我该怎么办?

遗憾的是,教程中没有文件处理的例子.我只能从文件对话框中看到文件选择器.


使用注释中的工作代码更新:以下代码适用于未知大小的二进制文件.

char *name= http://127.0.0.1:8000/mybinfile


int getFile(char *name)
{

    GFile *f = g_file_new_for_uri(name);
    GFileInputStream *fis = NULL;
    GDataInputStream* dis = NULL;
    GError *err = NULL;
    //char buffer[2048];
    char *buffer;
    size_t length;
    int ret = -1;

    GFileInfo *info;

    int total_size = -1;

    /* get input stream */
    fis = g_file_read(f, NULL, &err);

    if (err != NULL) {
        fprintf(stderr, "ERROR: opening %s\n", name);
        g_object_unref(f);
        return -1;
    }

    info = g_file_input_stream_query_info (G_FILE_INPUT_STREAM (fis),G_FILE_ATTRIBUTE_STANDARD_SIZE,NULL, &err); …
Run Code Online (Sandbox Code Playgroud)

c url glib

7
推荐指数
1
解决办法
2310
查看次数

如何导出DBUS_SESSION_BUS_ADDRESS

我正在尝试在嵌入式系统(Yocto Linux)上运行D-Bus,并从我的应用程序代码连接到它.

我打电话时收到以下错误 dbus_bus_get(DBUS_BUS_SESSION, &err);

Using X11 for dbus-daemon autolaunch was disabled at compile time, set your DBUS_SESSION_BUS_ADDRESS instead
Run Code Online (Sandbox Code Playgroud)

我意识到我需要启动第dbus-daemon一个,所以我从命令行运行dbus-launch.这打印出一个值,DBUS_SESSION_BUS_ADDRESS但我怎么能以编程方式导出它?

谢谢您的帮助

linux dbus yocto

6
推荐指数
3
解决办法
1万
查看次数