31 มี.ค. 2559

Visual C++ for Linux Development V.1.0 ได้ยังงัยนะ


Error อันแรกคือ
"Failed to determine the effective user, could not retrieve the effective user id"

ทั้งใน centos 6.5 กะ ubuntu 14.04 x64

มีสอง Dll อยู่ใน
C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V140\Application Type\Linux\1.0
คือ libraspberry.dll กับ Microsoft.Build.Raspberry.Tasks.dll


ไล่ code Build เจอ ว่ามันใช้
libraspberry.Shell.ShellHost.GetUserId()
แล้วไป Excute command

ตัวอย่าง
echo "9SdD88y3O06WpE/6GFk2hA"; id -u; echo "hSi/cBNizkaFPRKwd4v2A"
เพื่อให้ได้
9SdD88y3O06WpE/6GFk2hA
(สมมติเป็น root)

hSi/cBNizkaFPRKwd4v2A

เพื่อเอา เฉพาะ 0 แต่ คงมีปัญหา อะไรซักอย่างกะ \n, whitespace blah blah
แก้โลด ถ้า throw error ก็ เจาะจงมันเป็น root ไปเลย



Error อันที่ 2 คือ cannot excute uname -a เพื่อ เอา architect
มันไปใช้
Microsoft.Build.Raspberry.Tasks.ValidateValidArchitecture.ExecuteTool()
ก็ เจาะจงมันเป็น x64_86 ไปเลย

แก้ไปแก้มา สรุป....ใช้ วิชวลจีดีบี ดีกว่า