MacOSX工作遇到问题记载(杂而多,随时更新)

原创 2007年10月11日 10:58:00

2007年10月11日:
(a)在编译使用g++编译多文件的C++程序时候,出现以下错误:
/usr/bin/ld: Undefined symbols:
_main

解决过程及其发现:
(1)http://www.cocoabuilder.com/archive/message/xcode 这个MacOSX开发的maillist。
(2)发现想使用g++先编译出file1.o的,在和main.cpp链接时就会出现这样的错误;于是我就在Makefile中把所有文件集合起来,就编译通过了。
CC=g++
CFLAGS
=-Wall -O2
TARGET
=test
SRCFILES 
= main.c file1.h file2.cpp
RESOURCE
=main.c file1.cpp
$(TARGET) : TestHeader.h
    $(CC) $(RESOURCE) 
-o $(TARGET) $(CFLAGS)
(3)在网上收集答案时发现有人提到g++带-c,也没有出现这样的错误。-c表示只编译不链接,不链接就不能形成中间文件,那下一步该怎么继续呢?
回答:在生成.o文件的时候使用-c,在生成目标文件的时候可以直接将.o文件加进来,自动生成目标文件.
(4)还有就是在Redhat下面编译Regexx的时候出现了libtool和ltconfig不符的情况,那么这个libtool是个什么工具呢?什么作用?

2007年10月12日:
(a)在查看别人得编译记过得时候发现一下代码:
./libtool gcc -c -g -O2 maketables.c
*** Warning: inferring the mode of operation is deprecated.
*** Future versions of Libtool will require --mode=MODE be specified.
mkdir .libs
 gcc 
---O2 maketables.c  -fno-common -DPIC -o .libs/maketables.o
 gcc 
---O2 maketables.c -o maketables.o >/dev/null 2>&1
问题:黄色得两处均不知道什么用意。
(1)>/dev/null 2>&1解释如下:
<>:输入输出重定向
0:表示键盘输入
1:表示屏幕输出
2:表示错误输出   //2>a.txt 表示将错误信息输出到文件a.txt中。
/dev/null:特殊的文件,它就像一个无底洞,所有重定向到它的信息都会消失得无影无踪。

举例:
# ls >/dev/null 2>&1
注意:此处的顺序不能更改,否则达不到想要的效果,此时先将标准输出重定向到 /dev/null,然后将标准错误重定向到标准输出,由于标准输出已经重定向到了/dev/null,因此标准错误也会重定向到/dev/null,于是一切静悄悄。
(2)关于libtoo得作用,在本人得Blog中收藏了一份它得用法

(3)自编译得时候发现由于作者或者系统自身状况得不一样,需要随时得查找搜索一些关键字,这个时候你就需要使用到grep,在mac下面也支持,也是我摘抄了一份linux下面得大致用法:

用‘grep’搜索文本文件
如果您要在几个文本文件中查找一字符串,可以使用‘grep’命令。‘grep’在文本中搜索指定的字符串。
假设您正在‘/usr/src/linux/Documentation’目录下搜索带字符串‘magic’的文件:

$ grep magic /usr/src/linux/Documentation/*

明确要求搜索子目录:grep -r
或忽略子目录:grep -d skip
当然,如果预料到有许多输出,您可以通过 管道 将其转到‘less’上阅读:
$ grep magic /usr/src/linux/Documentation/* | less

grep -i pattern files :不区分大小写地搜索。默认情况区分大小写,
grep -l pattern files :只列出匹配的文件名,
grep -L pattern files :列出不匹配的文件名,
grep -w pattern files :只匹配整个单词,而不是字符串的一部分(如匹配‘magic’,而不是‘magical’),
grep -C number pattern files :匹配的上下文分别显示[number]行,
grep pattern1 | pattern2 files :显示匹配 pattern1 或 pattern2 的行,
grep pattern1 files | grep pattern2 :显示既匹配 pattern1 又匹配 pattern2 的行。
这里还有些用于搜索的特殊符号:

/< 和 /> 分别标注单词的开始与结尾。
例如:
grep man * 会匹配 ‘Batman’、‘manic’、‘man’等,
grep '/<man' * 匹配‘manic’和‘man’,但不是‘Batman’,
grep '/<man/>' 只匹配‘man’,而不是‘Batman’或‘manic’等其他的字符串。
'^':指匹配的字符串在行首,
'$':指匹配的字符串在行尾,
如果您不习惯命令行参数,可以试试图形界面的‘grep’,如 reXgrep 。这个软件提供 AND、OR、NOT 等语法,还有漂亮的按钮 :-) 。如果您只是需要更清楚的输出,不妨试试 fungrep 。

2007年10月12日:
(1)编译的时候又出现了/usr/bin/ld: Undefined symbols错误:
搜索了了一下网络,这类错误在网上收到的解决方案大多分为两类。
    (a)使用了gcc编译了c++程序,你所需要做的就是使用g++
    (b)链接的库的顺序错误,调整你包含库的顺序即可。(通过这中方法解决了我的问题。yeah!)

2007年10月17日:
在使用Xcode编写的程序调用到自己写的静态库时出现以下问题:
(1)将头文件的路径加入到了工程选项中,但是编译出现: ZeroLink: unknown symbol '__ZN5HelloC1Ev'错误。
解决方案:在项目资源树上点击右键,Add->Existing Files将静态库加进来,编译通过。
(2)但是使用到TCL库的时候,通过这种方法将libtcl8.3.dylib添加进来不行。
解决方案:添加Existing Frameworks即可。

2007年10月18日:
在windows下面可以使用,MultiByteToWideChar 和 WideCharToMultiByte进行转换。
那么在Mac下面用什么转换呢?
在渤麦堂得到Glider得回复:
如果使用Carbon或者Cocoa可以使用CFStringRef或者NSString来搞定。那么完全抛开这些使用Mac最底层得API那么就是用iconv函数。

VS2008中关于“加载安装组件时遇到问题。取消安装”的解决

问题描述: 电脑系统是windows 7 64位的,我在安装之前了vs2010,但是由于工作需要又要安装vs2008,但是由于我安装的vs2010是32位的并且是默认安装的所安装的程序在在目录:C:...
  • qq_31901665
  • qq_31901665
  • 2016年01月20日 16:10
  • 1388

java开发中遇到的问题及解决方法(持续更新)

工作中,以C/C++开发为主,难免与其他服务和Web进行交换,Java开发必不可少,又不想动用Eclipse大家伙,只能自己动手编写脚本进行Java代码的编译和运行,期间遇到的一些问题,记录下来供自己...
  • pony12
  • pony12
  • 2014年08月09日 14:39
  • 9658

web前端工程师工作中遇到难以解决的问题

1).margin-top,margin-bottom不能正常显示时 一.有时会遇到外层中的子层使用margin-top不管用的情况;这里我们需要在子层的前后加上一个 div{height:0;...
  • cherry_zhang18
  • cherry_zhang18
  • 2017年07月09日 13:11
  • 1196

工作中遇到问题记录

(一)、Layer插件          (1)     需要引入js文件: 1、resources/js/layer/layer.min.js"> 2、resources/js/laye...
  • mjf853912229
  • mjf853912229
  • 2017年07月06日 10:43
  • 146

base64转换遇到问题解决方法

  • 2015年04月23日 19:30
  • 11KB
  • 下载

Microsoft_Office_Word_遇到问题需要关闭。我们对此引起的不便表示抱歉

  • 2014年10月25日 10:41
  • 219KB
  • 下载

cPanel添加域名(addon domain)时遇到问题:域名已经解析到其它IP

  • 2015年06月23日 16:03
  • 59KB
  • 下载

centos下安装freeswitch步骤及遇到问题的解决办法

  • 2016年10月28日 10:24
  • 16KB
  • 下载

Android项目在eclipse通过SVN资源库中检出项目遇到问题解决

  • 2014年04月13日 20:45
  • 435KB
  • 下载

word关闭时遇到问题需要关闭

  • 2015年01月13日 10:44
  • 21KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:MacOSX工作遇到问题记载(杂而多,随时更新)
举报原因:
原因补充:

(最多只允许输入30个字)