linux unix系统总结:

linux unix以及所有其衍生版本系统,所有操作方式类似,收录一些注意事项,以便更加快速的查找问题的原因,并顺利的解决问题。

1.0 使用的命令行需要注意各个系统不同的区别,如linux中的apt-get和centos中yum区别(虽然操作结果一样,但是使用命令并不相同)。

2.0 要匹配好系统的类型,32位系统,还是64位系统,不同系统类型有不同区别(有些依赖库文件是需要匹配系统类型的)。

3.0 随着系统的更新,网络上的文档有一定的时效性,要理解好某些功能背后的原理,才能够顺利解决问题。

4.0 系统在执行默写操作时需要找到一些依赖库文件,顺利解决好一些无法找到库文件问题如(第一个是编译时compiler错误,第二个是运行时runtime错误):

     error: linnet.h: No such file or directory

     error: while loading shared libraries: libnet.so.9: cannot open shared object file: No such file or directory

5.0 各个功能实际上有些时候,需要在系统上进行编译一次生产出真实执行文件才能够使用,所以需要先将文件编译成最终能够执行的文件。

6.0 熟悉编译的流程, 下载源,解压缩源,./configure && make clean && make && make install等等。

7.0 注意文件路径,系统文件以及第三方源文件的lib路径区别。

MTK usb线烧机 工程里的代码设置


前段时间问了下sim的工程师,才发现使用usb烧机的具体设置方法,分享下:

首先需要看对应 项目.mak里是不是将usbdownloade打开了(09A我的是USB_DOWNLOAD = NONE,10A USB_DOWNLOAD_IN_BL = NONE 就是没有打开,其他变量可以自己看下把,熟悉代码的人都知道)

这个很关键,因为我之前一直不知道是怎么改的,只改了后面的步骤,怎么都是没有验证成功,后来搜了下发现是宏没有打开的原因。

其次就是修改文件了吧,研究启动代码,就找到更改按键的地方。bl_main.c(10A是这里,09A就是另外的了,但原理相似)里有USBDL_Ready_To_Enter_DLMode,usbdlkey_position这个变量,变量就是配置默认usb下载按键的!

有两处定义它的地方:

1.custom_blconfig.c(由sysGen2.pl生值过来的
2.sysGen2.pl

修改下按键值就可以

const kal_uint8 usbdlkey_position = DEVICE_KEY_VOL_UP;//DEVICE_KEY_STAR

10A的下面还有一个变量

kal_uint16 usbdlauto_timeout =  5000; 

修改为一个延时的值比如5000,它就自动下载了。。

很方便!!


MTK无效链接类型问题解决方式

 

VC编模拟09a的版本时,出现了che.lib无效链接类型的错误,经查发现是公司有修改MTK che.lib相关的文件导致che.lib文件错误,替换到相应的正确的che.lib即可,车是不是一个很少见的姓?哈哈

引:一般情况下,出现链接时候的错误都是由于库文件的版本不正确所引起的,无论是编译器自身的库文件还是一些公司所开发的打包了的库文件!