小编Mat*_*ski的帖子

调试GNU make

是否有命令行方式make来找出目标的哪些先决条件未更新?

debugging makefile gnu-make

71
推荐指数
5
解决办法
8万
查看次数

如何添加include和lib路径来配置/ make循环?

我需要一个地方在linux盒子里安装库我没有su访问权限.我正在使用〜/ local [/ bin,/ lib,/ include],但我不知道如何告诉./configure在那里寻找库(特别是,我正在尝试编译emacs,这需要libgif ,这不是我的发行版).

我尝试添加

export PATH=$PATH:~/local/bin
export LD_LIBRARY_PATH=~/local/lib
export C_INCLUDE_PATH=~/local/include
export CPLUS_INCLUDE_PATH=~/local/include
Run Code Online (Sandbox Code Playgroud)

到.bashrc但它似乎不起作用.

bash linker autoconf makefile configure

71
推荐指数
3
解决办法
18万
查看次数

了解Linux内核中的container_of宏

当我浏览Linux内核时,我找到了一个container_of定义如下的宏:

#define container_of(ptr, type, member) ({                      \
        const typeof( ((type *)0)->member ) *__mptr = (ptr);    \
        (type *)( (char *)__mptr - offsetof(type,member) );})
Run Code Online (Sandbox Code Playgroud)

我理解container_of做了什么,但我不明白的是最后一句,也就是说

(type *)( (char *)__mptr - offsetof(type,member) );})
Run Code Online (Sandbox Code Playgroud)

如果我们使用宏如下:

container_of(dev, struct wifi_device, dev);
Run Code Online (Sandbox Code Playgroud)

最后一句的相应部分是:

(struct wifi_device *)( (char *)__mptr - offset(struct wifi_device, dev);
Run Code Online (Sandbox Code Playgroud)

看起来什么都不做.有人可以在这里填补空白吗?

c linux-kernel c-preprocessor

71
推荐指数
5
解决办法
7万
查看次数

如何在Vim中突出显示Bash脚本?

我的Vim编辑器自动突出显示PHP文件(vim file.php),HTML文件(vim file.html)等.

但是当我输入:vim file并且在里面写一个Bash脚本时,它不会突出显示它.

我如何告诉Vim将其突出显示为Bash脚本?

我开始#!/bin/bash在文件的顶部键入,但它不能使它工作.

linux vim bash syntax-highlighting vim-syntax-highlighting

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

我的pidfile必须位于/ var/run中吗?

我在两种情况下都要求:技术上和风格上.

我的应用程序/守护程序可以保留pidfile /opt/my_app/run/吗?

这样做真的很糟糕吗?

我的需要是这样的:我的守护进程在特定用户下运行,并且实现者必须mkdir一个新的目录/var/run,chown和chgrp它以使我的守护进程运行.似乎更容易将pidfile保持为本地(对守护进程).

unix linux ubuntu pid

70
推荐指数
4
解决办法
5万
查看次数

如何使用具有两个CPU的VirtualBox在Vagrant中创建VM?

在Windows 7 64位尝试启动VM(Ubuntu 32位).尽管modify vm在我的Vagrantfile中添加了命令,但我无法让我的VM显示两个内核.我的Vagrant版本是1.2.2.

# -*- mode: ruby -*-
# vi: set ft=ruby :

Vagrant.configure("2") do |config|
  config.vm.box = "precise32"
  config.vm.box_url = "http://files.vagrantup.com/precise32.box"

  config.vm.provider :virtualbox do |vb|
    vb.customize ["modifyvm", :id, "--memory", "2048"]
    vb.customize ["modifyvm", :id, "--cpus", "2"]   
  end  
end
Run Code Online (Sandbox Code Playgroud)

使用此Vagrantfile,我发出vagrant up命令.然后我发出vagrant ssh后面的lscpu产量:

Architecture:          i686
CPU op-mode(s):        32-bit, 64-bit
Byte Order:            Little Endian
CPU(s):                1
On-line CPU(s) list:   0
Thread(s) per core:    1
Core(s) per socket:    1
Socket(s):             1
Vendor ID:             GenuineIntel …
Run Code Online (Sandbox Code Playgroud)

vagrant

69
推荐指数
3
解决办法
4万
查看次数

如何在Vim中的另一列文本后粘贴一列文本?

我有两个完整的文本列,我想让它们并排.例如,我有

abc
def
ghi
Run Code Online (Sandbox Code Playgroud)

123
456
789
Run Code Online (Sandbox Code Playgroud)

而且我要

123 abc
456 def
789 ghi
Run Code Online (Sandbox Code Playgroud)

我所能找到的是如何将同一行粘贴到列中每行的末尾.我无法弄清楚如何在另一列的末尾粘贴多行文本块.

vim

66
推荐指数
5
解决办法
4万
查看次数

如何在Bash中对字符串中的每个字符执行for循环?

我有一个像这样的变量:

words="??????"
Run Code Online (Sandbox Code Playgroud)

我想打一个for循环的每个字符,一次一个,例如第一的character="?",那么character="?",character="?"

我知道的唯一方法是将每个字符输出到文件中的单独行,然后使用while read line,但这似乎非常低效.

  • 如何通过for循环处理字符串中的每个字符?

bash for-loop

66
推荐指数
9
解决办法
10万
查看次数

使用boost序列化和反序列化json

我是新手std::Map.什么是boost使用类型序列化和反序列化数据的最简单方法PropertyTree.我发现了一些使用的例子,std::Map但对我来说它们很模糊.

c++ json boost boost-propertytree

66
推荐指数
2
解决办法
6万
查看次数

如何在Linux上检查Bash中的syslog?

在C中我们以这种方式记录:

syslog( LOG_INFO, "proxying %s", url );
Run Code Online (Sandbox Code Playgroud)

在Linux中我们如何检查日志?

linux bash syslog

65
推荐指数
5
解决办法
15万
查看次数