我怎么停止说make: Nothing to be done for 'all'.或或make: 'file' is up to date?我希望我的构建在没有做任何事情时保持沉默 - 还有其他地方echo被调用来跟踪构建进度,所以这个消息只是让事情变得混乱.我目前正在这样沉默:
all: dependency1 dependency2
@:
Run Code Online (Sandbox Code Playgroud)
有些东西告诉我必须有更好的方法.有任何想法吗?
编辑:
但是,当我确实需要构建一些东西时,我想保持命令echo工作.我希望的一个很好的例子是--no-print-directory,但我找不到任何其他标志来关闭所选的消息.
我正在寻找一个落在主窗口前面的"下拉"视图.例如,当您在"系统偏好设置" - >"网络"中单击"高级"时,窗口会下降.
如果有人可以指出我在文档方面的正确方向,这将是伟大的.提前致谢.
如果我的一个命令行说:
jmp *0x804a180(,%eax,4)
Run Code Online (Sandbox Code Playgroud)
那是什么意思?我特别要求,因为在第一个逗号之前没有值,我不确定地址前的*是什么意思.
我读到有关Endianness的信息,并了解蹲...
所以我写了这个
main()
{
int k = 0xA5B9BF9F;
BYTE *b = (BYTE*)&k; //value at *b is 9f
b++; //value at *b is BF
b++; //value at *b is B9
b++; //value at *b is A5
}
Run Code Online (Sandbox Code Playgroud)
k 等于 A5 B9 BF 9F
和(字节)指针" walk "o/p是9F BF b9 A5
所以我得到它的字节向后存储......好吧.
〜
所以现在我想它是如何存储在BIT级别的......
我的意思是"9f"(1001 1111)存储为"f9"(1111 1001)?
所以我写了这个
int _tmain(int argc, _TCHAR* argv[])
{
int k = 0xA5B9BF9F;
void *ptr = &k;
bool temp= TRUE;
cout<<"ready or not here I come \n"<<endl; …Run Code Online (Sandbox Code Playgroud) 所以,我使用[NSThread detachNewThreadSelector]来生成一个新线程,我在控制台中得到"自动释放,没有池到位"错误.我知道如果你没有创建一个自动发布池,就会发生这种情况,但问题是,我正在创建一个.我在同一个应用程序的其他部分使用类似的代码,并没有得到这些错误.
这是相关代码:
- (void) startThread:(NSString*)strURL
{
// start new thread to load image
NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
[NSThread detachNewThreadSelector:@selector(loadImageFromURL:) toTarget:self withObject:strURL];
[pool release];
}
- (void) loadImageFromURL:(NSString*)strURL
{
NSNumber* nn = [NSNumber numberWithInt:self.tag];
NSLog(@"loadURL: Tag number == %i", [nn intValue]);
// other code here actually does the work
}
Run Code Online (Sandbox Code Playgroud)
现在,loadImageFromURL中有更多代码实际完成了工作(从远程服务器加载图像) - 但是问题在没有代码的情况下显示出来,所以我删除了它(只是因为你不认为我有一个毫无意义的毫无意义的线程!).我只留下了一行代码来演示这个问题 - 它创建了一个自动释放的NSNumber对象.
当此代码运行时,它会向控制台报告:
__NSAutoreleaseNoPool(): Object 0x535c0e0 of class NSCFNumber autoreleased with no pool in place - just leaking
当然,真实代码会创建许多其他AR对象,并且所有这些对象都会被报告.
将不胜感激任何可能有用的提示或指示!
谢谢!
我有一些关于装配的问题,我正在学习,我很困惑.
bx和bp和ss和sp?书中说这bx是基址寄存器,bp是基指针.这是否意味着他们是一回事?mov ax, bx,mov ax, [bx],mov ax, bp和mov ax, [bp]?disp索引寻址模式意味着什么?比如mov al, disp[bx]?还是mov al, disp[si]?这本书没有解释的含义disp.寄存器在CPU中不是RAM吗?
请原谅我的英文,这不是我的第一个语言.
我这个汇编代码:
INT %ebx
Run Code Online (Sandbox Code Playgroud)
GCC在尝试组装时给我一个错误:
INT ERROR:mismatch operand type for 'int'.
Run Code Online (Sandbox Code Playgroud)
这是否意味着指令的操作数INT必须是常数INT $0X80?
任何人都可以解释以下代码行的作用
/bin/kill -HUP `cat /var/run/syslogd.pid 2> /dev/null` 2> /dev/null || true
Run Code Online (Sandbox Code Playgroud)
它与它有何不同?
test -f /var/run/syslogd.pid && kill -HUP `cat /var/run/syslogd.pid`
Run Code Online (Sandbox Code Playgroud)
[我知道它应该重启syslogd,但两者之间有区别吗?有点Linux的菜鸟,对不起]
请考虑以下代码
#include <stdio.h>
#define ROW_SIZE 2
#define COL_SIZE 2
int main()
{
int a[ROW_SIZE][COL_SIZE]={{1,2},{3,4}};
// Base address:Pointer to the first element a 1D array
printf("Base address of array:%p\n",a);
//The value at the base address: should be the address of 1st 1D array
printf("Value at the Base address:%p\n",*a);
return 0;
}
Run Code Online (Sandbox Code Playgroud)
获得的产出:
Sample Output:
Base address of array:0xbff77434
Value at the Base address:0xbff77434
Run Code Online (Sandbox Code Playgroud)
不知何故,我无法理解2D数组的基地址的概念和基地址的值,该地址是1D数组的地址相同.请解释.
可以说我给了以下shellcode:
char shellcode[]=
"\x31\xc0\x31\xdb\x31\xc9\x99\xb0\xa4\xcd\x80\x6a\x0b\x58\x51\x68"
"\x2f\x2f\x73\x68\x68\x2f\x62\x69\x6e\x89\xe3\x51\x89\xe2\x53\x89"
"\xe1\xcd\x80";
Run Code Online (Sandbox Code Playgroud)
如何检查它代表什么/它代表的ASM指令?谢谢 :)