最新文章

頁: 1 2 [3] 4 5 ... 10
21
Linux 討論版 / Re: 关于makefile的一些问题请教大家
« 最新文章 由 darkranger 2017-12-06 10:36 »
<ARM嵌入式Linux系统开发详解>清华大学出版社
又一本清華大學出版社的垃圾....
在網路上可以找到一字不差的內容,例如:
https://wenku.baidu.com/view/3c1097d5b9f3f90f76c61b15.html?re=view
是翻譯自一份陳舊的 kernel 文件:
https://lwn.net/Articles/21835/

  Kbuild recognises objects used for composite objects by the suffix
   -objs, and the suffix -y. This allows the Makefiles to use
   the value of a CONFIG_ symbol to determine if an object is part
   of a composite object.

   Example:
      #fs/ext2/Makefile
           obj-$(CONFIG_EXT2_FS)        += ext2.o
       ext2-y                       := balloc.o bitmap.o
           ext2-$(CONFIG_EXT2_FS_XATTR) += xattr.o
   
   In this example xattr.o is only part of the composite object
   ext2.o, if $(CONFIG_EXT2_FS_XATTR) evaluates to 'y'.

   Note: Of course, when you are building objects into the kernel,
   the syntax above will also work. So, if you have CONFIG_EXT2_FS=y,
   kbuild will build an ext2.o file for you out of the individual
   parts and then link this into built-in.o, as you would expect.

正確的翻譯如下(請容許我多用繁體用語):
Kbuild 是使用後綴 -objs 及 -y 來識別哪些目的檔將作為合成目的檔。
這使 Makefile 能夠藉由 CONFIG_ 符號值,來判定某目的檔是否是合成目的檔的一部分。

在這項範例裡,若 $(CONFIG_EXT2_FS_XATTR) 為 'y',
xattr.o 才會成為合成目的檔 ext2.o 的一部分。

注意:當然,若你是將目的檔組建至內核裡,前述語法也同樣有效。
所以,如果你使用 CONFIG_EXT2_FS=y,kbuild 便會將多個部分組建成一個 ext2.o
並連結至 built-in.o,正如你所期待的結果。

至於最新的原文文件在此:
https://www.kernel.org/doc/Documentation/kbuild/makefiles.txt

   Due to kbuild recognizing $(<module_name>-y) for composite objects,
   you can use the value of a CONFIG_ symbol to optionally include an
   object file as part of a composite object.

   Example:
      #fs/ext2/Makefile
           obj-$(CONFIG_EXT2_FS) += ext2.o
            ext2-y := balloc.o dir.o file.o ialloc.o inode.o ioctl.o \
                       namei.o super.o symlink.o
           ext2-$(CONFIG_EXT2_FS_XATTR) += xattr.o xattr_user.o \
                                                xattr_trusted.o

   In this example, xattr.o, xattr_user.o and xattr_trusted.o are only
   part of the composite object ext2.o if $(CONFIG_EXT2_FS_XATTR)
   evaluates to 'y'.

   Note: Of course, when you are building objects into the kernel,
   the syntax above will also work. So, if you have CONFIG_EXT2_FS=y,
   kbuild will build an ext2.o file for you out of the individual
   parts and then link this into built-in.o, as you would expect.

對應翻譯如下:
由於 kbuild 會透過 $(<module_name>-y) 來識別合成目的檔,
所以你可以使用 CONFIG_ 符號值,來選擇性的指定某個目的檔,
是否將作為合成目的檔的一部分。

在這項範例裡,只有當 $(CONFIG_EXT2_FS_XATTR) 為 'y' 時,
xattr.o、xattr_user.o 及 xattr_trusted.o 才會成為 ext2.o 合成目的檔的一部分。

注意:當然,若你是將目的檔組建至內核裡,前述語法也同樣有效。
所以,如果你使用 CONFIG_EXT2_FS=y,kbuild 便會將多個部分組建成一個 ext2.o
並連結至 built-in.o,正如你所期待的結果。
22
Linux 討論版 / Re: 关于makefile的一些问题请教大家
« 最新文章 由 875205504 2017-12-05 23:05 »
问题解决~最后感谢大家!么么哒
23
Linux 討論版 / Re: 关于makefile的一些问题请教大家
« 最新文章 由 875205504 2017-12-05 22:54 »
<ARM嵌入式Linux系统开发详解>清华大学出版社
25
Linux 討論版 / CentOS-6.9 無法抓到超過2TB硬碟
« 最新文章 由 snack.shih 2017-12-05 10:38 »
如題,小弟在一台IBM SERVER上裝了2.6.32-696.13.2.el6.i686 CentOS 6.9,並接上一台SCSI磁碟陣列櫃做RAID 5共6TB,但我在CentOS上面只看得到2199GB,想請問是不是非64位元cpu的Linux就抓不到超過2TB的磁碟?
26
Linux 討論版 / Re: 关于makefile的一些问题请教大家
« 最新文章 由 darkranger 2017-12-05 09:34 »
這是哪一本書的內容?書名是什麼?
27
Linux 討論版 / Re: 关于makefile的一些问题请教大家
« 最新文章 由 rainday 2017-12-05 04:05 »
是的,  所以才會用到 += 的以加入方式增加
以kernel buildin來說也不能說有錯, 畢竟文章裡只要有 CONFIG_EXT2_FS , 在ext2.o裡,就必定包含balloc.o bitmap.o , 無法改動部份當做為一體的
所以啟用CONFIG_EXT2_FS_XATTR 後,的確只有 "xattr.o" 做為 "組成" 部份
我猜想這文章可能是以build kernel 控制參數CONFIG_XXXX面向來說的
ext2這例子最後編繹只會輸出一個ext2.ko

實際操作下, 可以在build kernel時看到內容如下內容
test@test1:/usr/src/linux# make V=1 fs/ext2/ext2.ko
會看到詳細的compile內容
或是看單一部份
head fs/ext2/.xattr.o.cmd
cmd_fs/ext2/xattr.o := gcc -Wp,-MD,fs/ext2/.xattr.o.d  -nostdinc -isystem /usr/lib/gcc/i386-redhat-linux/4.1.2/include -I./arch/x86/include -I./arch/x86/include/generated  -I./include -I./arch/x86/include/uapi -I./arch/x86/include/generated/uapi -I./include/uapi -I./include/generated/uapi -include ./include/linux/kconfig.h -D__KERNEL__ -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -fshort-wchar -Werror-implicit-function-declaration -Wno-format-security -std=gnu89 -fno-PIE -mno-sse -mno-mmx -mno-sse2 -mno-3dnow -m32 -msoft-float -mregparm=3 -freg-struct-return -fno-pic -mpreferred-stack-boundary=2 -march=i686 -mtune=generic -Wa,-mtune=generic32 -ffreestanding -maccumulate-outgoing-args -DCONFIG_AS_CFI=1 -DCONFIG_AS_CFI_SIGNAL_FRAME=1 -DCONFIG_AS_CFI_SECTIONS=1 -DCONFIG_AS_SSSE3=1 -DCONFIG_AS_CRC32=1 -DCONFIG_AS_AVX=1 -DCONFIG_AS_AVX2=1 -DCONFIG_AS_AVX512=1 -DCONFIG_AS_SHA1_NI=1 -DCONFIG_AS_SHA256_NI=1 -pipe -Wno-sign-compare -fno-asynchronous-unwind-tables -fno-delete-null-pointer-checks -O2 -fno-stack-protector -fno-omit-frame-pointer -fno-optimize-sibling-calls -Wdeclaration-after-statement -Wno-pointer-sign  -DMODULE  -DKBUILD_BASENAME='"xattr"'  -DKBUILD_MODNAME='"ext2"' -c -o fs/ext2/xattr.o fs/ext2/xattr.c
...
28
Linux 討論版 / Re: linux19 apache 無法啟動
« 最新文章 由 newadam 2017-12-04 22:30 »
   謝謝  netman 與 darkranger 2位先進指導 !! , 讓小弟更進一步的瞭解 , 而在描述上有缺失  謝謝指正  ! , 小弟確實要對外服務  定要考慮到安全 , Fedora 版本的維護期大約只有一年左右 真的要注意這問題 ,  還有 /var/log/httpd/error.log 跟 access.log , 在這 再謝謝2位先進 對小弟的幫助, 小弟先研究 修練修練
29
Linux 討論版 / Re: linux19 apache 無法啟動
« 最新文章 由 netman 2017-12-04 21:18 »
看一下 /var/log/httpd/error.log 跟 access.log ?
30
Linux 討論版 / Re: linux19 apache 無法啟動
« 最新文章 由 darkranger 2017-12-04 13:47 »
提問時請描述發行版本:Fedora 19,寫 linux19 沒有人知道會是什麼東西....
再者,如果網站是要對外服務的,出於安全性的考量,不應該使用已經停止維護的 Fedora 19
而且每個 Fedora 版本的維護期大約只有一年左右,本質上就不太適合用來架設網站

你所擷取的 httpd.conf 片段有把設定擾亂掉的跡象
最好是整個重來

只需要編輯 /etc/httpd/conf.d/userdir.conf
此外再留意一下 SELinux 的設定:
http://linux.vbird.org/linux_server/0360apache.php#personwww
就能夠完成你的需求,不用再更改其它的 Apache 設定或多裝其它的模組


頁: 1 2 [3] 4 5 ... 10