Trên Linux với chuỗi công cụ GNU, tôi biết cách kiểm soát các ký hiệu đã xuất từ thư viện được chia sẻ với tập lệnh phiên bản (gcc -Wl, - version-script = symbols.map), nhưng tôi muốn liệt kê các ký hiệu đã xuất trên dòng lệnh thay thế. IOW, tôi muốn tương đương vớiTrình liên kết GNU: thay thế cho --version-script để liệt kê các biểu tượng đã xuất tại dòng lệnh?
link /EXPORT:foo
từ chuỗi công cụ MS. Có thể không?
EDIT:
Câu hỏi của tôi có thể không rất clearn: nếu tôi có một libfoo.so thư viện, và tôi muốn chỉ thư viện xuất khẩu foo1 và foo2, tôi có thể đi tạo ra một phiên bản foo.linux kịch bản như sau
libfoo.so
{
global:
foo1;
foo2;
local:
*;
}
Và đừng
gcc -shared foo.c -Wl,--version-script=foo.linux -o libfoo.so -soname libfoo.so
tôi muốn để có thể làm điều gì đó như thế này thay vì:
gcc -shared foo.c -Wl,--export-symbol=foo1 -Wl,--export-symbol=foo2 -o libfoo.so -soname libfoo.so
Yep, dường như làm những gì tôi muốn chỉ đơn giản là không thể vào lúc này. Sử dụng thuộc tính là chính xác những gì tôi muốn tránh –