我的ubuntu为啥没有、usr/include/nptl 和/usr/lib/nptl这两个文件夹

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了我的ubuntu为啥没有、usr/include/nptl 和/usr/lib/nptl这两个文件夹相关的知识,希望对你有一定的参考价值。

运行/lib/libc.so.6看到我的系统使用的是NPTL线程库啊,不应该没有那两个文件夹啊
我在看Neil Matthew和Richard Stones的linux程序设计的第12张,gcc编译线程
程序时的命令为
gcc -D_REENTRANT -I/usr/include/nptl thread1.c -o thread1 -
L/usr/lib/nptl -lpthread
其中的-I就是添加寻找头文件的目录
-L就是制定库的目录
我是用的ubuntu10.04的系统,这两个目录都没有找到。
我在另外一个系统openSUSE上面也没有找到这个目录。
网上说这个目录是NPTL本地线程库的目录。
我没找到,各位大哥帮个忙,这是怎么回事

你好,这是因为你对Linux下的开发不熟悉。
在Linux下,有的库文件分为两个包,我猜测你这个就是,比如你要用的库是libc.so.6,你去/lib下找找,如果找到了,说明你装了这个deb包,但是你的/usr/include/下没有这个nptl文件夹,唯一的可能就是他还有一个包叫nptl***-dev.deb类似这个名字,这类包叫develop包,它里面一般放的就是一堆.h的头文件,安装后就在/usr/include/下。

你可以试试用apt-cache search nptl找找,应该会有类似的包,安装以后就可以了。
参考技术A /usr/local/include和/usr/local/lib下面呢,也没有吗?自己安装的软件,默认是在/usr/local/下面的追问

我在看Neil Matthew和Richard Stones的linux程序设计的第12张,gcc编译线程程序时的命令为
gcc -D_REENTRANT -I/usr/include/nptl thread1.c -o thread1 -L/usr/lib/nptl -lpthread
其中的-I就是添加寻找头文件的目录
-L就是制定库的目录

本回答被提问者采纳
参考技术B 有些库文件,系统是不自带的,你可以搜索资源安装下,或者直接apt-get下

为啥我的 PyGame 应用程序根本没有运行?

【中文标题】为啥我的 PyGame 应用程序根本没有运行?【英文标题】:Why is my PyGame application not running at all?为什么我的 PyGame 应用程序根本没有运行? 【发布时间】:2021-03-23 15:39:09 【问题描述】:

我有一个简单的 Pygame 程序:

#!/usr/bin/env python

import pygame
from pygame.locals import *

pygame.init()

win = pygame.display.set_mode((400,400))
pygame.display.set_caption("My first game")

但是每次我尝试运行它时,我都会得到这个:

pygame 2.0.0 (SDL 2.0.12, python 3.8.3)
Hello from the pygame community. https://www.pygame.org/contribute.html

然后什么都没有发生。 为什么我不能运行这个程序?

【问题讨论】:

【参考方案1】:

您的应用程序运行良好。但是,您还没有实现应用程序循环:

import pygame
from pygame.locals import *

pygame.init()

win = pygame.display.set_mode((400,400))
pygame.display.set_caption("My first game")
clock = pygame.time.Clock()

run = True
while run:

    # handle events
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            run = False

    # update game objects
    # [...]

    # clear display
    win.fill((0, 0, 0))

    # draw game objects
    # [...]

    # update display
    pygame.display.flip()

    # limit frames per second
    clock.tick(60) 

pygame.quit()

典型的 PyGame 应用程序循环必须:

通过调用pygame.event.pump()pygame.event.get() 来处理事件。 根据输入事件和时间(分别为帧)更新游戏状态和对象位置 清空整个显示或绘制背景 绘制整个场景(blit所有对象) 通过调用pygame.display.update()pygame.display.flip() 更新显示 使用pygame.time.Clock.tick 限制每秒帧数以限制 CPU 使用率

repl.it/@Rabbid76/PyGame-MinimalApplicationLoop 另见Event and application loop

【讨论】:

以上是关于我的ubuntu为啥没有、usr/include/nptl 和/usr/lib/nptl这两个文件夹的主要内容,如果未能解决你的问题,请参考以下文章

Ubuntu下为啥每次重启都要source一下/etc/profile才能显示java的版本?

ubuntu终端新创建的用户在/home下为啥没有它的文件

ubuntu安装flash 最后一步cp -r ./usr/* /usr/命令无效 请写个完整的命令

ubuntu /usr/bin/sudo: Permission denied

在ubuntu下配置的~./profile为啥不起作用?

ubuntu12.04下编译时报错:dbus/dbus-glib.h:没有那个文件或目录,但是在/usr/include/dbus-1.0/dbus中有